[ISSUE] WiFi hotspot - Too many connections

Too many connections
Problem exists since beta-stage. 100% reproductive. Win8.1 [x64]
I didn't find troubles on my side searching my OS/Firewall settings, so I decide open issue topic now.
If I will start WiFi hotspot (using standard Microsoft Virtual Adapter) on PC to share Internet, dnscrypt-proxy will stuck on PC after 2-3 minutes. Errors in log ( log_level = 0 ):
[WARNING] Too many connections (max=250)
... lot of lines ...

If I've stop and turn off WiFi hotspot completely, this doesn't help, PC still continue generating errors Too many connections. In such situation I can fix it with reinstalling the service (restarting doesn't help).
Note: I've never had self- Stopped message (like other people on routers), until I restart the service manually.

About another known error: No items in the list :
Just remind you. Nothing was changed since my two already closed reports about this issue.
I still have this error using any *.bat command.
This error-message goes first, then common dnscrypt-proxy messages at the bottom.
(Some early-middle betas didn't have such problems)

change your max_clients = 250 on dnscrypt-proxy.toml. try 4 times from default to max_clients = 1000 or 10 times to max_clients = 2500

@GrizzlyJr
Thanks, I've understand the way of benchmark. But what are suggested values for 2-5 devices at small network, before I start? How many clients you have for the 10000 value?

Not sure what you are doing, but I hardly have more than 10 simultaneous connections.
You must have a loop or something.

@jedisct1
Tested with 10000. It's stuck, but this time  with no any [WARNING] in the log.
Working a few minutes longer. 1 PC, 1 smartphone.

You must have a loop or something.

May be yes, may be no. Never didn't have such trouble with v1.

Try ignore_system_dns = true maybe.

Downgraded to v1.9.5 - NO ISSUES (same OS settings & Firewall settings)
v1.9.5 tested, works and doesn't break dnscrypt-proxy service connection, when WiFi hotspot is running.
So, you can move this thread from Closed to Open Issues again.

P.S. Working link for freshy dnscrypt-resolvers.csv (that much more informative compared to *.md) is wanted.

2.0.0 Final - Working & Fast! (But still have some ISSUES)

WiFi connecton fixed. No breaks with dnscrypt-proxy service.
Connection on mobile devices establishes fast and working fast! Thanks!

Overall speed increased. Main Browser and even TOR connecting faster! Thanks!

Still have strange message with *.bat : No items in the list

[ISSUE] : In this version the log of Connections was not created in some case!

log_level = 0
log_file = 'C:\Program Files\dnscrypt-proxy\log\Connections.log'

use_syslog = true

Sorry, but it stuck. This time it worked longer time without issues, but suddenly dnscrypt-proxy lost connection (hotspot + Local Network).

When I launch dnscrypt-proxy with commands, there is no error No items in the list.
So, I guess, the *.bat files have some incompatible lines for Windows.

log file for the application was not created because I had use_syslog = true turned on.
I guess, I have to use or Windows system logger or application log only?
Is this "by design" to avoid slowdowns?

What kind of parametes I can play with, to try troubleshoot disconnections? May be some connection tweaking with max_clients / timeout / ttl ? Which one parameters I can try turn off for "exlcude" testing?
(In 2.0.0 my disconnections often happens after ~1,5 hours, basicly, when IDLE. (All power saving options on Network adapters are tured off on my mashine). Never had such troubles through the years.

Yes, logs are either printer, or stored in a file, or send to the system logger.

v2.0.2 - OK!
This version works nice! I don't have "Too many connections" issue any more.
Local Network works, no dnscrypt-proxy service disconnections on my "Server"-machine.
Just my report to you. Thanks!

Great!


Sorting by likes doesn't sort by the different between likes and disklikes

There is no way to sort by ( likes - dislikes ) that I can find currently, only by total amount of likes and total amount of dislikes.  Something to sort by likesDiffDislikesCount() would be really nice :)  I'm not experienced enough send a PR.

Hello @sroy! Thanks for sharing your idea. I've added this feature in todo list.

To implement this feature we will require to introduce additional table or add extra rows in like_counter table with additional enum type related to likes_diff_dislikes counter. Otherwise queries and sorting in runtime will be significantly slow on big databases.


How to output key to string?

Sorry, this is such a basic question, but I'm relatively new, and I don't really see how you can output the actual public and private keys to a string so I can save them. Is this possible?

It's not possible yet, but there's an open PR to add support: #47


case in json keys

Hi somenone,
First of all, thank you for this awesome tool!!
I'm facing some issues when the json key starts with uppercase character.
For example, if i paste this json:
{
    "Name": "DXgEoXxD",
    "Age": 23,
    "Address": "Street 12 Nº 1234"
}

I expect to get this interface:
export interface RootObject {
	Name: string;
	Age: number;
	Address: string;
}

But instead, i get this one:
export interface RootObject {
	name: string;
	age: number;
	address: string;
}

Thank you in advance for your support.

its a vscode json2ts bug, sorry


Installing Python Libraries

When installing the python libraries I get an error when installing guest
sh-3.2# pip install guessit
Collecting guessit
Collecting stevedore>=0.14 (from guessit)
Using cached stevedore-1.9.0-py2.py3-none-any.whl
Collecting python-dateutil>=2.1 (from guessit)
Using cached python_dateutil-2.4.2-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): babelfish>=0.5.4 in /Library/Python/2.7/site-packages (from guessit)
Requirement already satisfied (use --upgrade to upgrade): requests in /Library/Python/2.7/site-packages (from guessit)
Requirement already satisfied (use --upgrade to upgrade): pbr>=1.6 in /Library/Python/2.7/site-packages (from stevedore>=0.14->guessit)
Requirement already satisfied (use --upgrade to upgrade): argparse in /Library/Python/2.7/site-packages (from stevedore>=0.14->guessit)
Collecting six>=1.9.0 (from stevedore>=0.14->guessit)
Using cached six-1.10.0-py2.py3-none-any.whl
Installing collected packages: six, stevedore, python-dateutil, guessit
Found existing installation: six 1.4.1
DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 211, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip/commands/install.py", line 311, in run
root=options.root_path,
File "/Library/Python/2.7/site-packages/pip/req/req_set.py", line 640, in install
requirement.uninstall(auto_confirm=True)
File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 716, in uninstall
paths_to_remove.remove(auto_confirm)
File "/Library/Python/2.7/site-packages/pip/req/req_uninstall.py", line 125, in remove
renames(path, new_path)
File "/Library/Python/2.7/site-packages/pip/utils/init.py", line 315, in renames
shutil.move(old, new)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
copystat(src, dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-UggxQZ-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
sh-3.2#

Maybe you need to give it admin privileges to install?
Try running with sudo

Hi, resolved this
see - https://github.com/pypa/pip/issues/3165


[TensorRT] ERROR: Parameter check failed at: engine.cpp::setBindingDimensions::1128, condition: engineDims.nbDims == dimensions.nbDims

my_detector = TensorRTDetector(engine_file,class_names,device_id)
input_config = {
'input_shape': (1,3,416,416),
'input_path': 'my_images/00063.jpg',
'normalize_cfg': {
'mean': (123.675, 116.28, 103.53),
'std': (58.395, 57.12, 57.375)
}
}
one_img, one_meta = preprocess_example_input(input_config)
outputs = my_detector.forward_test(one_img,one_meta)
I use the above code to do inference with trt file, but it shows me the error:
[TensorRT] ERROR: Parameter check failed at: engine.cpp::setBindingDimensions::1128, condition: engineDims.nbDims == dimensions.nbDims
terminate called without an active exception
Aborted (core dumped)
I use the bellow command to convert pth model to onnx model:
python tools/deployment/pytorch2onnx.py configs/yolo/yolov3_d53_mstrain-416_273e_coco.py checkpoints/yolov3_d53_mstrain-416_273e_coco-2b60fcd9.pth --output-file my_onnx/yolov3.onnx --shape 416 416
and use the below command to convert onnx model to trt model:
python tools/deployment/onnx2tensorrt.py configs/yolo/yolov3_d53_mstrain-416_273e_coco.py my_onnx/yolov3.onnx --trt-file my_trt/yolov3.trt --shape 416 416
I didn't change the config file.

@BChunlei You could add --verify to onnx2tensorrt.py and check if it breaks while doing inference with TensorRT.

Hi, @RunningLeon , when I add --verify to onnx2tensorrt.py, it shows me:
Successfully created TensorRT engine: my_trt/yolov3.trt
Traceback (most recent call last):
File "tools/deployment/onnx2tensorrt.py", line 254, in
verbose=args.verbose)
File "tools/deployment/onnx2tensorrt.py", line 58, in onnx2tensorrt
onnx_model = ONNXRuntimeDetector(onnx_file, CLASSES, device_id=0)
File "/root/bcl/projects/mmdetection/mmdet/core/export/model_wrappers.py", line 113, in init
session_options.register_custom_ops_library(ort_custom_op_path)
onnxruntime.capi.onnxruntime_pybind11_state.Fail: [ONNXRuntimeError] : 1 : FAIL : Failed to load library /root/bcl/downloads/mmcv/mmcv/_ext_ort.cpython-37m-x86_64-linux-gnu.so with error: libonnxruntime.so.1.5.1: cannot open shared object file: No such file or directory
what's the problem?thanks.

@BChunlei You could install mmcv-full with onnxruntime custom ops according to the doc:
https://github.com/open-mmlab/mmcv/blob/master/docs/deployment/onnxruntime_op.md#how-to-build-custom-operators-for-onnx-runtime
MMCV_WITH_OPS=1 MMCV_WITH_ORT=1 MMCV_WITH_TRT=1 pip install -e .

@RunningLeon, I solve that problem. Anothor problem occurs when I add --verify to onnx2tensorrt.py:
/root/bcl/projects/mmdetection/mmdet/core/export/model_wrappers.py:156: UserWarning: output_names is deprecated and will be removed in future releases.
warnings.warn('output_names is deprecated and will be removed in '
/root/bcl/downloads/mmcv/mmcv/tensorrt/tensorrt_utils.py:233: UserWarning: TRTWraper will be deprecated in future. Please use TRTWrapper instead
warnings.warn('TRTWraper will be deprecated in'
Traceback (most recent call last):
File "tools/deployment/onnx2tensorrt.py", line 254, in
verbose=args.verbose)
File "tools/deployment/onnx2tensorrt.py", line 101, in onnx2tensorrt
o_res, p_res, rtol=1e-03, atol=1e-05, err_msg=err_msg)
File "/root/anaconda3/envs/torch160trt7216/lib/python3.7/site-packages/numpy/testing/_private/utils.py", line 1529, in assert_allclose
verbose=verbose, header=header, equal_nan=equal_nan)
File "/root/anaconda3/envs/torch160trt7216/lib/python3.7/site-packages/numpy/testing/_private/utils.py", line 842, in assert_array_compare
raise AssertionError(msg)
AssertionError:
Not equal to tolerance rtol=0.001, atol=1e-05
The numerical values are different between Pytorch and ONNX, but it does not necessarily mean the exported ONNX model is problematic.
Mismatched elements: 36 / 140 (25.7%)
Max absolute difference: 318.2661
Max relative difference: 1.
x: array([[ 1.350758e+02,  9.312284e+01,  1.420624e+02,  1.062235e+02,
1.245209e-01],
[ 2.959424e+01,  1.121212e+02,  3.878238e+01,  1.400185e+02,...
y: array([[ 1.350758e+02,  9.312284e+01,  1.420624e+02,  1.062235e+02,
1.245213e-01],
[ 2.959424e+01,  1.121212e+02,  3.878238e+01,  1.400185e+02,...
What's the meaning of this? The .trt file is generated, but when I do reference, it still shows me the error:
[TensorRT] ERROR: Parameter check failed at: engine.cpp::setBindingDimensions::1128, condition: engineDims.nbDims == dimensions.nbDims.

 So check your input image shape and make sure it is 416x416. If you want to create TensorRT engine with dynamic shapes, you have to feed --min-shape and --max-shape to onnx2tensorrt.py.

Hi @RunningLeon, I use the command 'python tools/deployment/onnx2tensorrt.py configs/yolo/yolov3_d53_mstrain-416_273e_coco.py my_onnx/yolov3.onnx --trt-file my_trt/yolov3.trt --shape 416 416 --input-img demo/demo-416.jpg --verify'. The input-img is 416*416

@BChunlei Not sure based on the trace message, and maybe you could use gdb to debug a little bit.

Hi, has this problem been solved by far?

@RunningLeon
I have the same error while convert cascade_rcnn_r50_fpn_1x_coco.py. The onnx and tensorrt models are created successfully, despite having error when verifying.

AssertionError:
Not equal to tolerance rtol=0.001, atol=1e-05
The numerical values are different between Pytorch and ONNX, but it does not necessarily mean the exported ONNX model is problematic.
(shapes (45, 5), (3, 5) mismatch)
x: array([[7.509468e+02, 2.020876e+02, 7.657206e+02, 2.362118e+02,
1.999978e-01],
[5.291816e+02, 1.873770e+02, 5.444387e+02, 2.101632e+02,...
y: array([[7.509468e+02, 2.020876e+02, 7.657206e+02, 2.362118e+02,
1.999966e-01],
[5.291816e+02, 1.873770e+02, 5.444387e+02, 2.101632e+02,...

The show-pt.png is scaled into a square image, while the images show-ort.pg and show-trt.png are keep at the original ratio.  But the inference results are correct.

However, when I try to evaluate the results on Coco Validate, I get the error, and the mAP=0.01. Here are my command to  convert pytorch2onnx and onnx2trt respectively.
mim run mmdet pytorch2onnx $CFG $CKPT \
    --output-file ${OUTPUT_FILE} \
    --input-img ${INPUT_IMAGE_PATH} \
    --test-img ${TEST_IMAGE_PATH} \
    --opset-version 11 \
    --shape 800 1216 \
    --verify

mim run mmdet onnx2tensorrt $CFG $MODEL \
    --trt-file ${TRT_FILE} \
    --input-img ${INPUT_IMAGE_PATH} \
    --workspace-size ${WORKSPACE_SIZE} \
    --shape 800 1216 \
    --verify

My question is: how should I set the parameters for shape, min-shape and max-shape if I want to do evaluate on COCO ?

你好，我已经解决了，这是因为trt的输入dim不符合trt的dim。所以，我们应该从 dim=engine.get_profile_shape(profile_id, input_name)[0]检查trt，必须输入相同的dim。

您好，我想问下，我在onnx转trt的时候已经设置了动态形状了，profile.set_shape(network.get_input(0).name, (1,3,160,160),(1,3,1280,1280), (1,3,48004800))，为什么会出现   engineDims.nbDims == Dimensions.nbDims。这个问题呢


Warning: the local CA is not installed in the system trust store! ⚠

I just installed mkcert as a recommendation for certificates for all my nginx vhosts.
brew install mkcert
mkcert -install

Then I tried some domains...
mkcert pass1.local pass2.local pass3.local

That error came up:
Warning: the local CA is not installed in the system trust store! ⚠

Am I doing this right or is this an oversight?
[Tue Mar 12 13:35 rich@HQ ~/Library/Application Support/mkcert] ll
total 48
drwxr-xr-x    8 rich  staff   272B Mar 12 13:35 .
drwx------@ 224 rich  staff   7.4K Mar 12 13:19 ..
-rw-------    1 rich  staff   1.7K Mar 12 13:35 pass.local+5-key.pem
-rw-r--r--    1 rich  staff   1.5K Mar 12 13:35 pass.local+5.pem
-r--------    1 rich  staff   2.4K Mar 12 13:19 rootCA-key.pem
-rw-r--r--    1 rich  staff   1.6K Mar 12 13:19 rootCA.pem

I moved the certs and keys to the webserver root (nobody is in here but me, yes I hear the security people bouncing), and it isn't working:
ssl_certificate												/Users/rich/Library/WebServer/Documents/pass.local+5.pem;
ssl_certificate_key										/Users/rich/Library/WebServer/Documents/pass.local+5-key.pem;

nginx: [emerg] cannot load certificate "/Users/rich/Library/WebServer/Documents/pass.local+5-key.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/Users/rich/Library/WebServer/Documents/pass.local+5-key.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /usr/local/etc/nginx/nginx.conf test failed

$ pwd
/Library/WebServer/Documents

$ ls
-rw-------   1 root  admin   1.7K Mar 12 13:47 pass.local+5-key.pem
-rw-r--r--   1 root  admin   1.5K Mar 12 13:47 pass.local+5.pem

You're showing /Users/rich/Library/WebServer/Documents/... and /Library/WebServer/Documents. Those seem to be different paths.

mkcert failing to install onto the system is suspect. Do you have the login keychain elsewhere or password protected?

Normal login keychain.

OK, tried again:
[Tue Mar 12 18:37 rich@HQ ~] mkcert -install
Using the local CA at "/Users/rich/Library/Application Support/mkcert" ✨
fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x153c50 pc=0x7fff8add74dd]

runtime stack:
runtime.throw(0x121e232, 0x2a)
	/usr/local/Cellar/go/1.12/libexec/src/runtime/panic.go:617 +0x72
runtime.sigpanic()
	/usr/local/Cellar/go/1.12/libexec/src/runtime/signal_unix.go:374 +0x4a9

goroutine 1 [syscall]:
runtime.cgocall(0x1001740, 0xc0001ab9f0, 0xc0001885f8)
	/usr/local/Cellar/go/1.12/libexec/src/runtime/cgocall.go:128 +0x5b fp=0xc0001ab9c0 sp=0xc0001ab988 pc=0x1004c6b
crypto/x509._Cfunc_FetchPEMRoots(0xc0001885f0, 0xc0001885f8, 0xc00018a500, 0x0)
	_cgo_gotypes.go:110 +0x4d fp=0xc0001ab9f0 sp=0xc0001ab9c0 pc=0x1147ebd
crypto/x509.loadSystemRoots.func1(0xc0001885f0, 0xc0001885f8, 0x0)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root_cgo_darwin.go:281 +0x12d fp=0xc0001aba30 sp=0xc0001ab9f0 pc=0x114d8bd
crypto/x509.loadSystemRoots(0x0, 0x0, 0x0)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root_cgo_darwin.go:281 +0xec fp=0xc0001abb00 sp=0xc0001aba30 pc=0x114802c
crypto/x509.initSystemRoots()
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root.go:21 +0x26 fp=0xc0001abb28 sp=0xc0001abb00 pc=0x1135c36
sync.(*Once).Do(0x13d2030, 0x1222bc8)
	/usr/local/Cellar/go/1.12/libexec/src/sync/once.go:44 +0xb3 fp=0xc0001abb58 sp=0xc0001abb28 pc=0x105f143
crypto/x509.systemRootsPool(...)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root.go:16
crypto/x509.(*Certificate).Verify(0xc0001ae000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/verify.go:744 +0x6b8 fp=0xc0001abc70 sp=0xc0001abb58 pc=0x113a418
main.(*mkcert).checkPlatform(...)
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:301
main.(*mkcert).install(0xc0001abf10)
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:235 +0x532 fp=0xc0001abd20 sp=0xc0001abc70 pc=0x11aa912
main.(*mkcert).Run(0xc0001abf10, 0xc0000cc010, 0x0, 0x0)
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:152 +0x73c fp=0xc0001abe48 sp=0xc0001abd20 pc=0x11aa08c
main.main()
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:121 +0x738 fp=0xc0001abf98 sp=0xc0001abe48 pc=0x11a9808
runtime.main()
	/usr/local/Cellar/go/1.12/libexec/src/runtime/proc.go:200 +0x20c fp=0xc0001abfe0 sp=0xc0001abf98 pc=0x102d70c
runtime.goexit()
	/usr/local/Cellar/go/1.12/libexec/src/runtime/asm_amd64.s:1337 +0x1 fp=0xc0001abfe8 sp=0xc0001abfe0 pc=0x1056f91

OK, fixed the cert and key locations:
ssl_certificate		/Library/WebServer/Documents/pass1/pass1.local.crt;
ssl_certificate_key	/Library/WebServer/Documents/pass1/device.key;

Restarted nginx, and nginx.conf syntax is ok.  This error:
[ E 2019-03-12 18:43:17.3383 99734/T5 Sec/Crypto.cpp:990 ]: Loading Passenger Cert failed: The specified keychain could not be found.
Please check for a certificate labeled: Phusion Passenger Open Source in your keychain, and remove the associated private key. For more help please read: https://www.phusionpassenger.com/library/admin/standalone/mac_keychain_popups.html
[ E 2019-03-12 18:43:17.3384 99734/T5 Sec/Crypto.cpp:990 ]: Pre authorizing the Passenger client certificate failed: The specified keychain could not be found.
[ E 2019-03-12 18:43:17.3384 99734/T5 age/Cor/SecurityUpdateChecker.h:507 ]: Security update check failed: Problem with the local SSL certificate at /usr/local/Cellar/passenger/6.0.2_1/libexec/resources/update_check_client_cert.p12 (try upgrading or reinstalling Passenger) (next check in 24 hours)
[ E 2019-03-12 18:43:17.3462 99734/T5 Sec/Crypto.cpp:990 ]: Finding Passenger Cert failed: The specified item could not be found in the keychain.
App 99830 output: fbtzonjkmu
App 99830 output: 3854
App 99830 output: <IP_ADDRESS> - - [12/Mar/2019:18:43:42 -0400] "GET /about HTTP/1.1" 200 13431 0.1552

There is no such thing in my keychain anywhere that I can find.

I'd expect that since the system cert install failed. Is there more output from mkcert -install?
Is there a login.keychain-db at this directory?
$ ls -l ~/Library/Keychains/

Are you talking about the Passenger certificate? Looks like that's causing problems.

$ ls -l ~/Library/Keychains/

drwx------  8 rich  staff      272 Dec 12  2014 2A2578AE-2019-51E3-9F58-86D3FE0522DE
-rw-r--r--@ 1 rich  staff  3568928 Mar 12 11:13 login.keychain
-rw-r--r--  1 rich  staff        0 Dec 13 06:51 login.keychain.sb-6592010b-RjlFQI
-rw-r--r--  1 rich  staff  1338356 Jun 26  2013 login.keychain.sb-c6345132-AYEyYo
-rw-r--r--  1 rich  staff        0 Nov  1  2014 login.keychain.sb-f43abbe0-Gcb8Ml
-rw-r--r--  1 rich  staff        0 Nov  1  2014 login.keychain.sb-f43abbe0-uuvSDc
-rw-------  1 rich  staff    23136 Mar 12 11:23 metadata.keychain
It seems the Passenger cert is messing things up.  But mkcert -install has only that feedback.  I've seen it earlier today.  Just did this twice:
[Tue Mar 12 18:55 rich@HQ ~] mkcert -install
Using the local CA at "/Users/rich/Library/Application Support/mkcert" ✨
fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x440108 pc=0x7fff8add74dd]

runtime stack:
runtime.throw(0x121e232, 0x2a)
	/usr/local/Cellar/go/1.12/libexec/src/runtime/panic.go:617 +0x72
runtime.sigpanic()
	/usr/local/Cellar/go/1.12/libexec/src/runtime/signal_unix.go:374 +0x4a9

goroutine 1 [syscall]:
runtime.cgocall(0x1001740, 0xc00019f9f0, 0xc0001785f8)
	/usr/local/Cellar/go/1.12/libexec/src/runtime/cgocall.go:128 +0x5b fp=0xc00019f9c0 sp=0xc00019f988 pc=0x1004c6b
crypto/x509._Cfunc_FetchPEMRoots(0xc0001785f0, 0xc0001785f8, 0xc00017c500, 0x0)
	_cgo_gotypes.go:110 +0x4d fp=0xc00019f9f0 sp=0xc00019f9c0 pc=0x1147ebd
crypto/x509.loadSystemRoots.func1(0xc0001785f0, 0xc0001785f8, 0x0)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root_cgo_darwin.go:281 +0x12d fp=0xc00019fa30 sp=0xc00019f9f0 pc=0x114d8bd
crypto/x509.loadSystemRoots(0x0, 0x0, 0x0)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root_cgo_darwin.go:281 +0xec fp=0xc00019fb00 sp=0xc00019fa30 pc=0x114802c
crypto/x509.initSystemRoots()
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root.go:21 +0x26 fp=0xc00019fb28 sp=0xc00019fb00 pc=0x1135c36
sync.(*Once).Do(0x13d2030, 0x1222bc8)
	/usr/local/Cellar/go/1.12/libexec/src/sync/once.go:44 +0xb3 fp=0xc00019fb58 sp=0xc00019fb28 pc=0x105f143
crypto/x509.systemRootsPool(...)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/root.go:16
crypto/x509.(*Certificate).Verify(0xc0001a2000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/usr/local/Cellar/go/1.12/libexec/src/crypto/x509/verify.go:744 +0x6b8 fp=0xc00019fc70 sp=0xc00019fb58 pc=0x113a418
main.(*mkcert).checkPlatform(...)
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:301
main.(*mkcert).install(0xc00019ff10)
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:235 +0x532 fp=0xc00019fd20 sp=0xc00019fc70 pc=0x11aa912
main.(*mkcert).Run(0xc00019ff10, 0xc0000cc010, 0x0, 0x0)
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:152 +0x73c fp=0xc00019fe48 sp=0xc00019fd20 pc=0x11aa08c
main.main()
	/private/tmp/mkcert-20190312-75737-hlo410/mkcert-1.3.0/src/github.com/FiloSottile/mkcert/main.go:121 +0x738 fp=0xc00019ff98 sp=0xc00019fe48 pc=0x11a9808
runtime.main()
	/usr/local/Cellar/go/1.12/libexec/src/runtime/proc.go:200 +0x20c fp=0xc00019ffe0 sp=0xc00019ff98 pc=0x102d70c
runtime.goexit()
	/usr/local/Cellar/go/1.12/libexec/src/runtime/asm_amd64.s:1337 +0x1 fp=0xc00019ffe8 sp=0xc00019ffe0 pc=0x1056f91
[Tue Mar 12 18:57 rich@HQ ~] mkcert -install
Using the local CA at "/Users/rich/Library/Application Support/mkcert" ✨
The local CA is now installed in the system trust store! ⚡

Can you try uninstalling the Passenger certificate and retrying?

There is none

What are the logs talking about then? Can we remove what they're having problems with?

Logs are about not finding the Passenger cert.  I had no clue it even had one.  At this point, the reason I need localhost or local domain certs, is working.  I've tweaked Chrome to go ahead with processing, and the forms (that require ssl to move forward, or have it served under localhost) do indeed work.  I can't shut down my server to see what's causing a cert issue.  That could set me back the time I cannot afford.  At this point, removing something that's not there is a rabbit hole of time.


Opens new window when running multiple tests

Im using NUnit and latest preview of Easyrepro with chromedriver.
I've a setup were I created a baseclass which is responsible for logging in to my CRM instance. In my test class I have two method both annotated with [Test]-attributes and a method annotated with a [Setup] attribute. The SetUp method navigates to  the start by opening the app and open a new entity form in create mode.
The problem is that after the first test has run to completion and the SetUp method is called again all windows are opened  in a new tab instead of staying in the first one which fails all consecutive tests after the first one.
Is this a bug or is there any setting I should use?

Sure. This is my current setup
My base class that connects to my instance
    public class UIAutomationBase
    {
        private static readonly SecureString _username = ConfigurationManager.AppSettings["OnlineUsername"].ToSecureString();
        private static readonly SecureString _password = ConfigurationManager.AppSettings["OnlinePassword"].ToSecureString();
        private static readonly SecureString _mfaSecret = ConfigurationManager.AppSettings["MfaSecretKey"].ToSecureString();
        private static readonly Uri _xrmUri = new Uri(ConfigurationManager.AppSettings["OnlineCrmUrl"].ToString());

        protected static XrmApp XRMApp { get; }

        static UIAutomationBase()
        {
            var options = new BrowserOptions
            {
                BrowserType = BrowserType.Chrome,
                PrivateMode = true,
                Headless = false,
                UCITestMode = true,
                DriversPath = Path.GetDirectoryName(typeof(UIAutomationBase).Assembly.Location),
                StartMaximized = false,
                Height = 1080,
                Width = 1920
            };

            var client = new WebClient(options);

            XRMApp = new XrmApp(client);

            XRMApp.OnlineLogin.Login(_xrmUri, _username, _password, _mfaSecret);

        }

        [OneTimeTearDown]
        public void TearDown()
        {
            XRMApp.Dispose();
        }
    }

Some extensions to write tests more fluently
    public static class XrmAppEntityExtensions
    {
        public static Entity SetOptionSetValue(this Entity entity, string fieldName, int value)
        {
            entity.SetValue(new OptionSet
            {
                Name = fieldName,
                Value = value.ToString()
            });

            return entity;
        }

        public static Entity SetFieldValue(this Entity entity, string fieldName, string value)
        {
            entity.SetValue(fieldName, value);

            return entity;
        }

    }

and last my test cases
    [TestFixture]
    public class AccountTestCases : UIAutomationBase
    {
        [Test]
        public void AccountIsCreatedAsIndividualPersonWithAllRequiredFieldsButNoPersonalIdentityNumberEntered_AccountIsCreatedWithoutError()
        {
            XRMApp.Entity
                    .SetOptionSetValue("prefix_optionset1", 249160000)
                    .SetOptionSetValue("prefix_optionset2", 249160000)
                    .SetFieldValue("prefix_firstname", "Automatiserad")
                    .SetFieldValue("prefix_lastname", "Testperson")
                    .Save();
        }

        [Test]
        public void AccountIsCreatedAsCompanyWithAllRequiredFieldsButNoOrganizationNumberEntered_AccountIsCreatedWithoutError()
        {

            XRMApp.Entity
                    .SetOptionSetValue("prefix_optionset1", 249160001)
                    .SetOptionSetValue("prefix_optionset2", 249160000)
                    .SetFieldValue("name", "Automatiserat Testföretag")
                    .Save();
        }

        [SetUp]
        public void Setup()
        {
            XRMApp.Navigation.OpenSubArea("My sub area");

            XRMApp.CommandBar.ClickCommand("Skapa"); // Create
        }
    }

When I run my tests the first test that executes works as expected, but the second one opens all commands in new windows for some reason.

@reager I suppose constructor for UIAutomationBase executed for each test.
Move code from constructor  to method with [OneTimeSetUp] attribute

@Shakevg  It should only be called once, but after writing my last comment I did try OneTimeSetUp instead and it still open new windows.

@Shakevg I'm encountering the same Issue. On first execution of ClickElement it works fine, but every subsequent ClickElement opens it in a new tab. This causes the test to fail as it tries to search for the Element on the wrong tab.
The testcase where ClickElement gets called once,  succeeds, but all tests where it gets called more then once fails

@Shakevg I'm encountering the same Issue. On first execution of ClickElement it works fine, but every subsequent ClickElement opens it in a new tab. This causes the test to fail as it tries to search for the Element on the wrong tab. The testcase where ClickElement gets called once, succeeds, but all tests where it gets called more then once fails

Opening a new tab after clicking it looks like a separate issue, please create a new issue with steps.
Issue from @reager related just with NUnit Framework.

Understand now. I saw one-time such an issue, but it was temporary. Looks it like something is wrong with the menu item.
@reager Is it possible to reproduce for some standard menu items, not custom, to reproduce on my side?
Can you try to click manually on the menu after the first test?
What is NuGet version are you using, did you try wave2?

@Shakevg Sorry for the late reply.
I used the latest preview version 9.2.21111.116-RW2-Preview.
Manually clicking on the new tab sadly doesn't work, it continues running in the first tab.
The Issue #1249 seems to be about the same problem.

@Shakevg Sorry for the late reply. Manually clicking on the new tab sadly doesn't work, it continues running in the first tab.

I mean in debug mode before the step that opens a new tab (I suppose it is OpenSubArea("My sub area") ) click on the link manually.

FWIW, the issue is with the Entity.Save method. This method uses the pattern of sending crtl S to the window to save the record. I think the browser thinks the ctrl key is still down after this method finishes executing and that is why the next click end up opening in a new tab. I switched to using the command bar save button and all is well.


Default install location of windows system.

Why the default install location is "C:\Users\name\AppData\Local\atom" , that's sh!t. Hope that can choosing by users.

@decaylong download atom-windows.zip and copy it wherever you want...

Where would you prefer it to be? Usually there are two options for installing - for all users, which requires administrator permissions and installs in program files, or this user, which installs it in the users profile directory (current behaviour).

There are only two possible locations that Squirrel will install to at this time:

%LOCALAPPDATA%\atom (the default which you experienced)
%PROGRAMFILES%\atom (AtomSetup.exe  --machine)

I'm not aware of any plans to allow custom install paths - @paulcbetts can you confirm?

ok，Im choose download zip file，and Im actully dont know about

%PROGRAMFILES%\atom (AtomSetup.exe --machine)
this option :)   ty @50Wliu  @russlescai

Three are two possible locations that Squirrel will install to:

`%LocalAppData%\Atom% - the default
C:\ProgramFiles\Atom\USERNAME - the install location that is set when the first location cannot be written to / executed from, because of Group Policy

AtomSetup.exe --machine will just end up installing to one of these two places, but for all users (i.e. upon a new user logging in, we will proceed to install to that location)

Hope that can choosing by users.

Squirrel will never offer this choice, sorry!

This is horrible. I have an SSD as my main drive and I typically want things on my regular HDD. How can I not choose where to install a program?
I'd even help contribute to change this.

@hichris1234 Once the app is installed, you can move %LocalAppData%\Atom to wherever you want, then use mklink /D %LocalAppData%\Atom D:\Path\To\Where\You\Put\Atom and everything will work, even updates.

But I shouldn't need to. Look at any program on Windows. Try to install it. In the installer, 99% of the time there's an option for "where do you want to install this program?" (I can think of only a few exceptions, such as Chrome). However, for Atom, there isn't.

But I shouldn't need to. Look at any program on Windows. Try to install it. In the installer, 99% of the time there's an option for "where do you want to install this program?" (I can think of only a few exceptions, such as Chrome). However, for Atom, there isn't.

  That's it. Squirrel will never, ever, ever, ever, ever change this.

Why should I need to symlink a directory in order to put it on my non-SSD drive? Or say I had partitions, and I wanted it to be on a specific partition? Or say my main partition was 99% full. What now? I need to download a zip in order to install it then? So much for a setup program that knows what I want.
This is a program made for developers. If developers can't be allowed to choose where their text editor installs, then that's insane! They're smart enough to know where they want it (I hope). Atom is made to be configurable. If the install location isn't configurable, I'm afraid Atom has failed at the very basic stages of configuration.

I agree with hichris here.
A program intended for developers is not the same as a program for a end-user audience.
The location of the installation is definitely not a 'dumb question'..
That is just bad practice.

Or say I had partitions, and I wanted it to be on a specific partition?

Symlink.

Or say my main partition was 99% full. What now?

Delete some files or move them.

If the install location isn't configurable, I'm afraid Atom has failed at the very basic stages of configuration.

Sorry!

I agree that not having an option for installation directory is unconventional these days .. but ...
I see opinions here that users of Atom are not "end-users", but developers and yet at the same time people are against creating a symlink. Actually developers should have no problems creating a symlink if they really need to move the atom directory if they really need to. They are used to way more "esoteric" things like that :see_no_evil: .
Some people were were also able to create a portable versions of Atom.

Actually developers should have no problems creating a symlink if they really need to move the atom directory if they really need to.

Almost every program we use everyday allows us to choose an install directory. Forcing users to symlink for something that basic is... not smart. Saying that just because we're developers, we should symlink is like saying just because we're developers, we should want to mess around with atom's code. We can, but some things we'd like to Just Work.

Almost every program we use everyday allows us to choose an install directory.

.. on Windows ... and as you can see some people feel that it shouldn't be the case.

linux packages are installed into predefined directories
npm modules are installed into predefined directories (even on Windows)
chocolatey packages are installed into predefined directories (unless you want to figure out what installer they are using and overwrite settings by hand)
homebrew applications are installed into predefined directories (and symlinked)
also Mac App Store is installing applications into predefined directory

(Don't kill me if I am wrong about last two, I don't own a mac :sweat_smile:)

Saying that just because we're developers, we should symlink is like saying just because we're developers, we should want to mess around with atom's code.

You can say that. On the other hand you can say: "Why if I want to have white tree-view in atom I need to tinker with styles.less or look for a specfic theme. I want a checkbox in settings for that." Well, Atom developers didn't feel such thing is necessary so you have to mess around with styles for that. Same goes for the custom installer path where 95%+ of the people just don't care about special location (yup, I pulled this number out of my ...). Yeah, you will have to do it yourself and it will cost you writing a one-liner and being done with it.

I see opinions here that users of Atom are not "end-users", but developers and yet at the same time people are against creating a symlink.

Sorry, but I think this is a classic catch-22. The installer is supposed to be very simple (Just works, one click, wizard free, etc.), yet the solution to a very common request (custom install location) is: Just create a symlink. So much for simplicity...
And don't get me started on the discussion about symlinks on Windows (mklink doesn't work on XP), and that flooding your directories with symlinks isn't an elegant solution either.
I get that installing a program into %LocalAppData% is a deliberate design decision, and it certainly has benefits, but as I tried to express, I can let an end-user program (Google Chrome, for example) get away with this behavior, but if you can safely assume that your target audience knows about this stuff, I won't give them the same benefit of the doubt.
Design decision is design decision, but this won't change the opinion of (many) users, who think that is bad practice, and I agree here.
And the link you provided to a 'portable' version.
Sorry, but that is just a really ugly hack. Uses its own environment variable, changes the location of %USERPROFILE% (Not a good idea. Not permanently, I know, but still), and creates a \AppData\Roamingsubdir in your new location, just to avoid breaking some other things.  Definitely not a simple "one-liner"..
And sorry, the notion that you can or at least should not change the location of program installations is just plain wrong. Even outside of the windows world.

linux packages are installed into predefined directories

You can always use ./configure --prefix=/home/my/path/here. No predefined directory needed.
Conf file location can be changed with --sysconfdir=/etc and so on..
The FHS is always a good occasion for heated debates, you can chime in eventually, if you are inclined. That is all just a big work in progress. A lot of old Unix cruft that you don't really need, and thankfully the Unices have always been flexible in that regard.

homebrew applications are installed into predefined directories (and symlinked)

Yes, but Homebrew uses its own prefix, as it should be. You can easily modify that, if you want. The binaries are then symlinked back into your $PATH, or somewhere where your shell finds them.
But Homebrew does not write files outside of its prefix. They got Unix right..

I appreciate all of the feedback, but this is kind of a done deal, and is extremely unlikely to change

Don't care what 20 years of bad software has done in the past
It is still official that Program Files needs to be the default install directory of proper Windows software https://msdn.microsoft.com/en-us/library/windows/desktop/hh749939.aspx
It seems this decision is based on trying to apply a principle from the Mac/Linux world to the Windows world. Which does not work. It confuses and frustrates the users, as it deviates from the norm. The software installation step is not something that should be innovative unless you're trying to reject a share of potential users.
Why the default install location is "C:\Users\name\AppData\Local\atom"
It seems there was no answer. Or is it just to keep things minimal? Because it's normal to expect programmers to be able to use symlinks?
Atom is a text editor that's modern, approachable, yet hackable to the core—a tool you can customize to do anything but also use productively **without ever touching a config file**
Symlinks go way beyond config files.

First, Atom should be installed under Program Files and not C:\Users\name\AppData\Local\atom. Second, the install location should be configurable.

It seems this decision is based on trying to apply a principle from the Mac/Linux world to the Windows world

Nope! This decision is made so that updates can happen in the background without UAC prompts. If you want to read more about the reasons behind how the installer works, check here:
https://github.com/squirrel/squirrel.windows#what-do-we-want

I realise this conversation has probably run it's course, but for what it's worth, I'm also strongly in favour of allowing users to choose the installation location. I'd much rather have that choice, even if it means dealing with UAC during an update (I think we're pretty much all used to UAC now, it really isn't a problem).
As an example use-case, I have access to install this kind of software on some machines, but only in certain locations - symlinks would not be an acceptable "workaround".

As an example use-case, I have access to install this kind of software on some machines, but only in certain locations - symlinks would not be an acceptable "workaround".

Atom will soon have a Portable Version that will let you run it from arbitrary locations and it'll still update

Portable Version is not a solution. Only proper solution, which doesn't confuse users, is installing Atom to %PROGRAMFILES%\atom and additionally allowing users to change that during the installation. User created during installing Windows itself doesn't need raising privileges to install into that directory. Talk about "raising privileges" is avoiding to comply to Windows standard practices, and force feeding Linux "install anywhere" norm to Windows users who are highly unaccustomed to this.

installing Atom to %PROGRAMFILES%\atom

AtomSetup.exe --machine

User created during installing Windows itself doesn't need raising privileges to install software into that directory

Can you elaborate?  As far as I'm aware installing anything into %PROGRAMFILES% requires UAC privileges.

Default user created during Win7, Win8 & win10 installation has admin privileges. Absolute majority of non-domain loged users (environments without Active Directory) run their machines this way without even being aware of it, otherwise they would not be able to install anything since (almost) all Windows  software follows convention to install in %PROGRAMFILES%. Don't break the convention, don't protect users from themselves, don't force people to uninstall Atom, and then install again with "AtomSetup.exe --machine".

The experience of installing Windows software by convention, is awful. Updates are awful, the install experience is awful. Nobody writes desktop software on Windows, because it's awful. Why would we follow that convention?

Does atom on Linux tries to avoid sudo ?
Does atom on OS X tries to avoid the drag to /Applications dialog ?
Those are basically the same as UAC. The purpose is to make user aware of important changes.
As thing are now update are seamless, but so would be infection by a malicious software.

It took me much more time and effort:

to uninstall atom when it just placed itself wherever without asking me
to read through everything related here and in other threads
download another package (zip)
configure environment variable
and now I have to manually add it to context menu by editing registry

So much for simple installer.

So... I had to read 3 complete forum posts to finally understand what was happening and why atom was installing in appdata (which is just completely weird). Ugh.
https://imgs.xkcd.com/comics/standards.png

My two cents, which being two Brazilian Real cents are worth almost nothing. Anyway...

This is open source. And it's on GitHub. Everybody is invited to branch away and hack the installer anyway they like it. Even rebrand the branched outcome if you like.

That being said, things like "works for me", "if you want it your way do it yourself", "this is  free software, i'm not your slave, if you want support you have to pay", "you have to buy a $5,000 hardware for it to work on my code" and "this is kind of a done deal, and is extremely unlikely to change" are typical and are what scare people away from free/open software.

Same here. I just don't understand why i need to type "where atom is installed ?" in google to find it...

    Basically, like everybody else, I installed atom, it ran and then, I couldn't find it. I literally had to google and find this discussion to know where it was installed to. THIS, is an example of "bad software design" the developer is so eager to eliminate. Now, if i also pinned to my desk top and still hid the installation location to a place for Application Data and not typically applications, that might be different. Then, it would at least have been plug and play. (Note: the actual interface looks great and the software is opensource and free but I'm addressing your arrogance.)  So 1) thanks for the hard work and 2) don't be so quick to dismiss feebback like this "why doesn't it work like every other windows program" with this "I don't care about what 20 years of bad software design does".    That said, I intend to happily exploit your unpaid hard work as I retool and learn web stuff.

Wow! I was about to install Atom and realized it doesnt ask where to install. So then I research more about it. Maybe there is a cmd option or a zip file. I find no cmd option, and I see the zip file, but i question if the zip file will update.
 If he is one of the developers of this softwar, then Im very sorry for Atom as you just lost a user (and all of my references to it). My question to you, paulcbetts, is why on earth is it bad practice to choose your install location?  I prefer all of my apps to go to D:\Programs. Not C:. Because C is my main SSD for main OS. and D is my SATA drive for apps. C will only hold the OS and or any other apps/games that require SSD. (I can almost imagine your answer here, get a bigger SSD for your C drive .... well a#$@#$@#$ not everyone can afford that, or have time for that - in my case the latter). The fallacy in your statement just shows your lack of intelligence and open-mindedness. I wouldnt hire you even if you could write up the best code, because that code probably wouldnt agree with what 99% of the population wants... Why is changing install location bad developing? Thats like saying having an installer is bad developing. If having installers is bad developing, then just make atom one giant EXE that just loads and doesnt install (kind of like Putty - the portable one). You seem to understand humanity and software developers better then the rest of us, so lets let you lead the way... to failure.

Im going to not recommend this app to anyone. Thank you.
Although I will give it a try, and try my best to not think about how it has one very arrogant developer behind its scenes.

Looks like this issue should keep open.

Name calling and personal attacks have no place in the Atom community. @georgejost and @kossboss, you might have had a case until you decided to attack someone on a personal level. Honestly, I didn't even read all of your comments because once you cross that line it doesn't matter if you have the best argument in the world ... you are a drain on the community and that attitude is not welcome.
@georgejost and @kossboss, you may both consider yourselves officially warned.
Thanks everyone for your passion and feedback. We have decided we are keeping things the way they are and sticking with the installer we have for now. If people want to have a civil and constructive discussion about this Issue and perhaps come up with solutions ... please feel free to talk about it on the official Atom forum at https://discuss.atom.io.


Designer POSTS Template to REST proxy

Designer POSTS Template to REST proxy, which goes to SINK, SINK runs Cypher, send to Jotunheim, Runs Cypher
From line# 382 of neuron notes

Closed, to be revisited when Kafka is implemented.


Added methods to NodeState and Connector

Missing interfaced method added for connector
Added useful method to NodeState for filtering out log-nodes
Added debug-logs to filtered broadcasts

LGTM :+1:


Types in arrow functions not parsed

Originally reported in https://github.com/facebook/react/issues/2624 which has the details. My understanding of the report is that we're failing to parse, not that we're failing to strip the types which is why I'm here.
cc @gabelevi

Just ran into it with JSCS with esprima-fb parser


Gurobi.GurobiError(10020, "Q matrix is not positive semi-definite (PSD)")

Hi, I'm trying to solve a class of optimization problems with quadratic objective function but also with some quadratic constraints with the form r(x) * s(x) <= twhere r and s are lineal function and t is a constant.
For this problems I want to use the Gurobi solver in julia.
My julia verision is 1.2.0 and I'm using Gurobi 8.11.
Everything works perfectly when the constraints are lineal, but with quadratic constraint it doesn't. For example in this particular easy problem:
min: ( (x1-1)^2 + (x2-2)^2 + (x3-1)^2 ) / 2

s.t.:
x1, x2, x3 >= 0
x1 * x3 <= 1
x2 * x3 <= 1

it said this error:
Gurobi.GurobiError(10020, "Q matrix is not positive semi-definite (PSD)")
What does that mean exactly? What's this Q matrix? I think that is the matrix of the application of each quadratic constraint, because if I change those constraint to:
x1^2 <= t
x3^2 <= t

it works
Can you help me? There isn't any way to solve my original problem using Gurobi?
I will appreciate every help, thanks

What's this Q matrix? I think that is the matrix of the application of each quadratic constraint

Correct.
Gurobi only supports convex quadratic problems. x1 * x3 is a bilinear, non-convex term, and so, looking at the Q matrix from x'Q x <= 1, the Q matrix is not PSD.
There is no way to solve your original problem using Gurobi. You could try Ipopt instead (] Ipopt, using Ipopt, Ipopt.Optimizer), but note that you will only find a locally optimal solution.

Ok, thank you very much for your answer. And that was what I thought. I'm using Ipopt already, but as you said I'm just obtaining a locally optimal solution. For this particular problem is veeery near to the real solution but the idea is to solve harder problems.
So, my question is, do you know about another solver in julia to use for this kind of problems, maybe CPLEX, I don't really know if this one works.
Thank you

You could use a mixed-integer nonlinear program silver like SCIP (wrapper: https://github.com/SCIP-Interfaces/SCIP.jl), which should be able to give you a global minimizer as long as you specify upper bounds on the decision variables as well. I think Gurobi is adding support for nonconvex quadratics in the upcoming version as well.

You could use a mixed-integer nonlinear program silver like SCIP (wrapper: https://github.com/SCIP-Interfaces/SCIP.jl), which should be able to give you a global minimizer as long as you specify upper bounds on the decision variables as well. I think Gurobi is adding support for nonconvex quadratics in the upcoming version as well.

Ok, I'll follow your advise
And let's hope Gurobi don't take too long doing that.
Thank you very much

I'll close this since it appears to be resolved and isn't an issue with the Gurobi wrapper.


Add heatmap formatting rule

Coverage increased (+0.1%) to 91.833% when pulling d79afd7f6129cb2c5c556ffcfef9c910ce8fd236 on gl3nn:heatmap-formatting into d1bbd48f75f9f5a7d00c13019b4976eff01837d1 on kayak:master.


FEAT-#6141: ray.data.from_modin should work with non-partitioned storage format

I added a hack that would make from_modin work. I think a long term solution would be to change the unwrap_partition function completely / provide abstractions instead of relying on implementation details. Fixes #6141.

[x] first commit message and PR title follow format outlined here

NOTE:  If you edit the PR title to match this format, you need to add another commit (even if it's empty) or amend your last commit for the CI job that checks the PR title to pick up the new PR title.

[x] passes flake8 modin/ asv_bench/benchmarks scripts/doc_checker.py
[x] passes black --check modin/ asv_bench/benchmarks scripts/doc_checker.py
[x] signed commit with git commit -s
[ ] Resolves #?
[ ] tests added and passing
[x] module layout described at docs/development/architecture.rst is up-to-date

@rentruewang feel free to reopen or create a new PR when you have time to continue.


Root flag doesn't work sometimes.

$ keys list -root ~/junk
panic: mkdir oot/keys: no such file or directory
$ keys list -root .
panic: mkdir oot/keys: no such file or directory
$ keys list -r .
List Keys: readdirent: not a directory
keys list -r ~/junk does work correctly.

This seems to be a standard usage with cobra. Also note the usage info from keys --help:
  -r, --root string       root directory for config and data (default "/Users/ethan/.tlc")

keys -r ~/junk works, as does keys --root ~/junk.
keys -rfoo = keys -r foo = keys --root foo
The only "fix" I can do it remove the shortcut, so -r is illegal and only --root is supported.  Closing for now, please re-open if you think I this flag handling is too confusing (and then bring in bucky and rigel who are working on cobra for other packages for a standard solution).


issue with installing exec-time: hosted packages not supported

I was using pnpm to install exec-time and got this:
exec-time git+https://github.com/capablemonkey/exec-time#e39279713fcb87a9c9e27f5a81d913d7b6853c3d ERROR ✗
mocha 1.21                                                      finding ·
underscore 1.6.0                                                finding ·
! git+https://github.com/capablemonkey/exec-time#e39279713fcb87a9c9e27f5a81d913d7b6853c3d: hosted packages not supported

it's because hosted packages are not supported

indeed, hosted packages aren't supported.

but they are in roadmap https://github.com/rstacruz/pnpm/blob/master/docs/roadmap.md

Ok gotcha


Linked List : write code for atleast one of the following task

Basic Operations on Linked_list ( Traversal, Insertion, Deletion, Search )
Sort given linked list.
Insertion at beginning, end, and middle.
Deletion from beginning, end, and middle
Reverse a doubly linked list
Merge sort for Linked list
quick sort for linked list
Check if the linked List is a circular linked list or not
Split a circular linked list into two halves
segregate even & odd nodes in the linked list
remove duplicates in a sorted linked list.

Hey @TechVine I would like to solve Merge sort for Linked List in java!

I would like to solve insertion at the beginning , end and middle? can you assign me?

I would like to solve insertion at the beginning , end and middle? can you assign me?

yes you can do it

Hey @TechVine I would like to solve Merge sort for Linked List in java!

soon i will add another folder for Java plz wait for that

@TechVine Can you assign this issue to me. I would like to contribute with Linked_list ( Traversal, Insertion, Deletion, Search ) in cpp .

@TechVine Can you assign this issue to me. I would like to contribute with Linked_list ( Traversal, Insertion, Deletion, Search ) in cpp .

yes you can contribute

@TechVine middle means after an element specified or finding size and add in middle of linked list?

@TechVine insert at middle means after an element specified or finding size and add in middle of linked list?

finding size & then inserting

@TechVine Assign this to me ,i can contribute in this

@TechVine Assign this to me ,i can contribute in this

sure!!

Hey, is there any issue free,if yes i woul love to contribute in any of it cuz most of it i know about. Plzz let me do this.

Hello can i write a code to remove duplicates from a sorted linked list in c++

Sure you can

Hey, is there any issue free,if yes i woul love to contribute in any of it cuz most of it i know about. Plzz let me do this.

yes you can contribute

hello, can you please assing me to write a code for splitting a circular link list into two halves in c++.

hello, can you please assing me to write a code for splitting a circular link list into two halves in c++.

Sure you can contribute , make sure you star marked this repository

I will do the tenth problem can u assign me with it?

I will do the tenth problem can u assign me with it?

yes you can do it

Hey! Bro Give me the 3rd one
Insertion at beginning, end, and middle.

Hey! Bro Give me the 3rd one Insertion at beginning, end, and middle.

sure, assigned

I would like solve 1st Basic Operations on Linked_list ( Traversal, Insertion, Deletion, Search ) using java . can you assign to me ?

I would like solve 6th no. problem Merge sort for Linked list . Can you assign me?

I would like solve 6th no. problem Merge sort for Linked list . Can you assign me?

sure you can do it

Hey! Bro Give me the 4th one Deletion from beginning, end, and middle

ok!! you can contribute to this task

I would like solve 7th no. problem quick sort for linked list . Can you assign me?

i would like to solve 5th Reverse a doubly linked list can you assign this  to me?

i would like to solve 5th Reverse a doubly linked list can you assign this to me?

assigned....

I would like solve 7th no. problem quick sort for linked list. Can you assign me?

I am submitting a PR for heap sort, binary tree, binary search tree and AVL tree.
is that okay @TechVine

I am submitting a PR for heap sort, binary tree, binary search tree and AVL tree. is that okay @TechVine

yes but they all should be in separate files

@TechVine bhaiya please assign me in this..I can do it

@TechVine bhaiya please assign me in this..I can do it

sure assigned.......

I would like solve 7th no. problem quick sort for linked list. Can you assign me?

hey bro you have not assign me to this task yet

you  can do it !

Hii bro, can you assign me to  this issue?

@TechVine bhaiya code of segregate even & odd nodes in the linked list done in cpp..please merge my pr

#49

I can do 11th number problem, can you assign me ?

I can do 11th number problem, can you assign me ?
sure you can do it

Hii bro, can you assign me to this issue?

sure  assigned..........

@TechVine can u assign this to me i want to contribute all ur task pls assign

sure you can contribute , also make sure you star mark this repo

I would like to solve problem no.4 ->Deletion from beginning, end, and middle.Can you pleasse assign me?

I would like to solve problem no.4 ->Deletion from beginning, end, and middle.Can you pleasse assign me?

assigned!!

Hey bro! I would like to work on this issue.
Please assign it to me.

@TechVine hey, can you check I just pushed the Merge sort in Linkedlist in java.Can you confirm that?

@TechVine, kindly check I just pushed a repo of Quick Sort in your Linked list Java folder. Till now i did two, Quicksort and Merge sort,let mw know

can you assign this to me. I would like to contribute seven question

can you assign this to me .

Can you assign this issue to me?

Sir please assign this issue to me i want to contribute

@TechVine,hey you didn't added that,is your repo excluded from hacktoberfest or there is some bug cuz you merged my repo but it's not showing

Sir please assign problem 11 to me so that I can contribute.

please assign me this issue sir.

can you assign me to contribute?

Please assign issues No. 1,2,3,4,5 to me .

Sir please assign this issue to me i want to contribute

can you assign this to me?

pleade assign this issue to me

Hey @TechVine Can I contribute in this repository

Can you please assign this issue to me?


Minimum regex

This sets the default minimum length to 3 chars for a regex and allows the minimum length to be adjusted.

To me the change looks good.
There are one question and one suggestion.
One question is ..
I'm not very knowledgable about the history of sniffles, but it seems that feature.py is used by rand_rule_gen.py.  Do we still use rand_rule_gen.py?
One suggestion ..
Why don't we also allow users to specify maximum length of regex? (e.g. -M option)
Thanks.

rand_rule_gen is used if you want to create more complex rules.  It uses feature.py among others.  I can add a maxlen feature as well.  It is already supported, partially at least.

I added a user story for the maximum length.  I will add it to another pull request after this one is closed and merged.


RFC: resultiterator_test - Enable subscripts/superscripts test

@stweil Please review.
I enabled the subtest with a replacement image, but tesseract (legacy engine, I think) is not recognizing all superscripts correctly.
I have commented out the check for the test to pass... Is that ok or should the test fail?

@stweil: any comments?


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/80583

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/80811

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/82244

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/95294

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/99310

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/99957

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/100684


Recurse skip for branch operator

Turns out pulling that PR doesn't do anything, so I'm recursively skipping tasks myself.
I will at some point upstream this.

cc @Alagappan
Alagappan encountered some branchOperator issue as well.

This is not fixed upstream btw, so I might file a ticket about it


Support tsconfig inheritance via extends option

I have a monorepo with multiple typescript projects. To keep tsconfigs simple and synced I decided to extract common tconfig.json in project root and extend it inside packages. For react-native projects, yarn run tsc works fine, however packager fails.
It seems that react-native-typescript-transformer only reads top-level tsconfig and doesn't follow extends hierarchy.
It would be nice if someone could fix this

Ran in to this error myself today, and got a mysterious error from react-native:
Cannot convert undefined or null to object

because of this line:
https://github.com/ds300/react-native-typescript-transformer/blob/7aa16d351a14068b1dcfa95aa99edaa163686700/index.js#L187
As it turns out, my tsconfig file didn't have a compilerOptions field defined because it uses extends to inherit from a different file. A nicer error message here would be great, and even better would be support for extends!

@doomsower @JKillian Kudos to both of you.
Thanks to you, I manage to workaround the issue by adding compilerOptions: {} in my tsconfig.json file

Nevermind, the compilerOptions in the parent tsconfig.json are not read so it's not a viable solution 😄


Autoindent adjusts end-brace to wrong indentation level (JavaScript)

VSCode Version: 1.14.2
OS Version: 10.12.5

Steps to Reproduce:

Start with code:

try {
  start()
    .catch(err => {
      // ...
    });

Now type } at the end of this snippet.
It will placed one level deep, instead of being aligned with the outer }:

try {
  start()
    .catch(err => {
      // ...
    });
  }  // :-(

Manually fixing the indentation level and following up with } finally { automatically adjusts the line again, which is frustrating.

Is it because the autoindent support doesn't understand anonymous function syntax?
Reproduces without extensions: Yes

This is due to the limited architecture (regex based indentation rules and only support limited code styles), we may want to consider using formatters if they exist for indenation adjustment (if interested, we can discuss in https://github.com/microsoft/vscode/issues/19847).
For this particular issue, if the indentation rules are leading to more trouble than having no auto indent, you can set editor.autoIndent to advanced to disable the regex based indentation adjustment. As we don't have an easy good-enough fix for it, we close it for now and explore better solutions through issues like https://github.com/microsoft/vscode/issues/19847.


Add HOLI problem from SPOJ in Graphs Section

Thank you for considering my pull request.

you are welcome😊🐱🏍


Flake8 6.1.0 errors: "do not compare types"

Here are some errors as output by the new Flake8 version as done on beta branch:

flake8...................................................................Failed

hook id: flake8
exit code: 1
holidays/helpers.py:20:32: E721 do not compare types, for exact checks use is / is not, for instance checks use isinstance()
holidays/holiday_base.py:525:12: E721 do not compare types, for exact checks use is / is not, for instance checks use isinstance()
holidays/holiday_base.py:528:14: E721 do not compare types, for exact checks use is / is not, for instance checks use isinstance()
tests/common.py:203:12: E721 do not compare types, for exact checks use is / is not, for instance checks use isinstance()
tests/common.py:281:12: E721 do not compare types, for exact checks use is / is not, for instance checks use isinstance()
tests/common.py:338:27: E721 do not compare types, for exact checks use is / is not, for instance checks use isinstance()
tests/common.py:339:42: E721 do not compare types, for exact checks use is / is not, for instance checks use `isinstance()``

Hey @PPsyrius, thanks for filing this!
The fix has been merged into beta.


Removed a pitfall where the code was using a default mutable argument

The problem
In Python it usually dangerous to use mutable arguments like dicts or lists as default arguments in method, as is better explained here
the solution
This PR applies a simple refactoring to remove a case where a method was created using default a mutable argument

The globals variable is not mutated and does not leave the local scope of the function. This is safe to do.
The other change does not not seem to have any effect.


Windows Terminal session log entires

Windows Terminal version
1.18.3181.0
Windows build number
10.0.19045.0
Other Software
Some forum posts suggest that it's perhaps related to Visual Studio Code, but I wasn't able to find anything conclusive. VS Code version: 1.85.0.
Steps to reproduce
Start my windows machine and launch Windows Terminal and these log entries will start appearing. I have VS Code installed but the log entries appear even when VS Code has not been launched.
Expected Behavior
I don't want any automatic/random log entries littering my Windows Terminal session.
Actual Behavior
09:55 C:\Users\myusername>
[main 2023-12-13T07:55:27.414Z] update#setState idle
[main 2023-12-13T07:55:30.670Z] WSL is not installed, so could not detect WSL profiles
[main 2023-12-13T07:55:57.439Z] update#setState checking for updates
[main 2023-12-13T07:55:57.631Z] update#setState idle

the last two log entries will keep getting re-logged every hour. this started happening a few weeks ago. before I never saw these log entries. I have never even used WSL. why do these log entries appear?

Hey there! Thanks for filing.
It absolutely seems like this is a VS Code issue: https://github.com/Microsoft/vscode/issues/56833. They're looking for people who have the ability to reproduce it, so you may be able to help them out!
FWIW: If one of your startup scripts is launching code for any reason, even for checking the version number (or something), it could be attaching itself to whichever console session first interacted with it.
/dup https://github.com/Microsoft/vscode/issues/56833


"The project begins in:" isn't clear its a year

Thanks for putting this project together. It's handy for someone like me who is coming from outside the Node ecosystem to start a project without having to make all the initial decisions.
I went to generate a project and was confused about the correct input for the "Ths project begins in:" prompt. My first instinct was the value later provided in the "Main file" prompt. I looked at the source code to see it's supposed to be a year, which makes sense now that I know what it should be.
May I recommend either showing its for the copywrite year or having a default value of the current year for an example?

Thanks for the advice, I will implement that as soon as possible.

Please, check v 1.5.0.


Piping stream through single transformation chain vs. multiple transformation chains results in different output

What is the output of running npx envinfo --binaries --languages --system --utilities?
  System:
    OS: macOS 10.14.5
    CPU: (4) x64 Intel(R) Core(TM) i5-6287U CPU @ 3.10GHz
    Memory: 151.29 MB / 16.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 8.9.4 - ~/.nvm/versions/node/v8.9.4/bin/node
    Yarn: 1.13.0 - /usr/local/bin/yarn
    npm: 5.6.0 - ~/.npm-global/bin/npm
  Utilities:
    Make: 3.81 - /usr/bin/make
    GCC: 10.14. - /usr/bin/gcc
    Git: 2.20.1 - /usr/bin/git
  Languages:
    Bash: 3.2.57 - /bin/bash
    Java: 1.8.0_171 - /usr/bin/javac
    Perl: 5.18.4 - /usr/bin/perl
    PHP: 7.1.23 - /usr/bin/php
    Python: 2.7.10 - /usr/bin/python
    Ruby: 2.3.7 - /usr/bin/ruby

What are the steps to reproduce?
Download the example input file: input.jpg.zip and run the gist below.
What is the expected behaviour?
Both thumbnails should be equal in size, but they are not AssertionError [ERR_ASSERTION]: 224087 == 224051
When switching quickly between both output images in MacOS Quicklook, it looks like the output from multiple pipelines is warmer / closer to the original than using a single pipeline, although I can't see this difference when opening both images in Preview.
I've compared both outputs in Photoshop following these steps, and it shows this result:

Are you able to provide a standalone code sample, without other dependencies, that demonstrates this problem?
(async () => {
  // Import modules
  const fs = require("fs");
  const sharp = require("sharp");
  const pump = require("pump");
  const assert = require("assert");

  // Multiple pipelines
  function multiplePipes() {
    return new Promise((resolve, reject) => {
      // Setup streams
      const rs = fs.createReadStream("./input.jpg");
      const ws = fs.createWriteStream("./output-multi.jpg");

      // 1. Resize pipeline
      const resizeOperations = sharp();
      resizeOperations.resize(2000, 1000);

      // 3. Conversion pipeline
      const convertOperations = sharp();
      convertOperations.jpeg();

      // Pipe the streams
      pump(rs, resizeOperations, convertOperations, ws, err => {
        if (err) {
          reject(err);
        } else {
          resolve(fs.readFileSync("./output-multi.jpg"));
        }
      });
    });
  }

  // Single pipeline
  function singlePipe() {
    return new Promise((resolve, reject) => {
      // Setup streams
      const rs = fs.createReadStream("./input.jpg");
      const ws = fs.createWriteStream("./output-single.jpg");

      // Single pipeline
      const operations = sharp();
      operations.resize(2000, 1000).jpeg();

      // Pipe the streams
      pump(rs, operations, ws, err => {
        if (err) {
          reject(err);
        } else {
          resolve(fs.readFileSync("./output-single.jpg"));
        }
      });
    });
  }

  // Run both pipes
  try {
    // Get output
    const buf1 = await multiplePipes();
    const buf2 = await singlePipe();

    // Compare results
    assert.equal(buf1.length, buf2.length);
  } catch (err) {
    console.error(err);
  }
})();

Are you able to provide a sample image that helps explain the problem?
yes: input.jpg.zip
We have some byte-level checks in our test suite to always ensure the same output, and our tests failed while changing the code, although the output seems to be (quite) the same.
I'm wondering why both approaches have different results, and if there are any tips for combining multiple operations (as we'd like to pipe the raw pixel data through another image processing library after resizing with Sharp, and before encoding to jpeg with Sharp). Any help or insights would be greatly appreciated!

Hi, the mutliple pipeline approach involves a JPEG encode/decode roundtrip between resizeOperations and convertOperations, hence the compresion artefacts you're seeing.
To avoid these compression artefacts, ensure the output of resizeOperations is lossless, e.g. via raw, PNG or lossless WebP.

Thanks for your quick response!
Following your explanation , would it be wise to combine both resize and jpeg operations in a single pipeline, in terms of performance?

Yes, if possible.

great, thanks for confirming!


Update wireguard to 1.5.10

Please update my adapter ioBroker.wireguard to version 1.5.10.
This pull request was created by https://www.iobroker.dev c0726ff.

1.5.10 released 17.08.2023
21 User (5%)


CNV-46603: UDN list & form implementation

Add UserDefinedNetwork:

[X] List implementation
[X] YAML example
[x] Edit form
[x] Detail page

A followup PR will be created for ClusterUserDefinedNetwork implementation

/lgtm
/approve


GHA setup-java-build should have embedded default maven settings

https://alfresco.atlassian.net/browse/ACS-5175

Updated. Thanks @dsibilio !


I have an inquiry about changing the properties information on the garden container.

If you'd like a faster response for your question, please contact us in the CloudFoundry Slack Channel for Diego.
Summary

I have an inquiry about changing the properties information on the garden container.
(Type attribute map [string] string)
The old version key "host-interface" is not displayed.
What name has the current version been changed to?

Diego repo

code.cloudfoundry.org/rep

There was a problem with remark processing related to garden in the *-deployment.yml file.
The contents are as follows.

name: garden
release: garden-runc
properties:
garden:
containerd_mode: true
cleanup_process_dirs_on_wait: true
debug_listen_address: <IP_ADDRESS>:17019
default_container_grace_time: 0
destroy_containers_on_start: true
deny_networks:
- <IP_ADDRESS>/0
#  network_plugin: /var/vcap/packages/runc-cni/bin/garden-external-networker
# network_plugin_extra_args:
#  - --configFile=/var/vcap/jobs/garden-cni/config/adapter.json


Support Swarmkit services

Presumably in the same way as ECS and Kubernetes tasks/services/etc are visible.
From a user on Docker Community Slack:

hey man :slightly_smiling_face: have one question .. is weave SCOPE app able to visualize services in swarm mode ?

my reply:

hey! we don't support swarm mode services yet... but we'd like to!
we just added ECS support

his reply:

ok :slightly_smiling_face: it would be nice to have such a tooling .. at least all the business guys want to see fancy visualizations :slightly_smiling_face:

cc @pidster @rade

@lukemarsden @2opremio isn't this a dup of #1618?

Yep, I will mark that one as a duplicate though

Yep, I will mark that one as a duplicate though

I much prefer going the other way. Marking the old issue as a dup misrepresents history and rewards bad behaviour (such as not looking for existing issues).

So, I know the title specifically references SwarmKit. Would this support extend to the Swarm Mode released in Docker 1.12?

They're the same thing, so yes

This was closed by https://github.com/weaveworks/scope/pull/2444


Remove trailing lines settings go one EOL too far.

This is plugin seems to be removing the last EOL from what should be the last line^1, but ends up with the last line followed by text after the last line.  When running scripts that concatenate files, it causes "run-in" errors.

Can you provide some sample markdown to test with?

I can, and will, but I now do not believe it is this plugin causing the problem, but a co-editor using vscode to edit the files, and vscode not knowing what a "line" is.
single_line.md
single_line.md
One without a line, the other with a line, both with the text "This is a single line."

It seems to be the plugin, just had to close and open the vault and it is doing the same thing of removing the EOL (end of line) character from what should be the last line.

This sounds like intended behaviour with the "Trim Trailing Lines" preference enabled, which removes empty lines at the end of the document.
So, one of these documents includes a linebreak after the text; disabling that pref preserves it, which seems to be the goal?

The last line, by definition of a line, should have an "End of Line" character.  Extraneous ones should be removed, definitely.
So if you have a collection of lines, where you have 0 or more characters followed by an EOL character, and then the last line is really 4 EOL characters, you would expect it to trim the 3 extraneous EOL characters, but preserve the last line as a line, rather than make what was the last line, "extra characters after the last line".
Good:
Original second  to the last line.\n
Last line\n

Not good:
Original second line, but now the last line.\n
Original last line, but now extra characters after the last line.

About changing the preferences, yes, indeed, I can "not use the plugin", that would solve the problem altogether.  But the plugin is convenient and from what I can see (not a javascript dev) pretty well designed.  I would rather it do the Right Thing™ instead, as it concerns lines.  To get around it, for sure, I have disabled the setting for the meantime to not trim at the end of the file, and just have the team pay attention to what they are doing.

No, I do not imply.  I missed a word that should have resulted in "by some definition" . I simply missed typing a word, it should have been "by some definition" and your link confirms that practice that by some definition it is a terminator, by another definition it is a separator.  This has been going on for at least 40 years, and I am well aware, so would not imply some universal rule.  It would be knowingly dishonest.
Sure, I am not sure I called it a defect, but we can go with "enhancement" if you like.  However, the description of the options state:

We can see in the description that it should "trim empty lines" not "trim the EOL from the last line".  It surely trims 'non-empty' lines as well.
I would be fine with a description change, but would be better with leaving the terminator there, with an option to use it as a separator instead of terminator instead.
You bring up a great point about being cautious with "scripts that concatenate files".  We can even expand that to say "scripts that remove things from files" as we can see this is such a script that does not do what it says it does by description.  I generally recommend caution with any script.  It is why I am looking at this plugin in the first place!

Since I did not also provide a link, and since we are working with plain text, and POSIX is a thing, this may be an interesting answer for context, including the validity of the "separator" camp.

With this code sample:
Original second  to the last line.¬
Last line¬

You have some content ("Original second...Last line"), followed by trailing whitespace (the new line created by \n, stylized as ¬).
The preference "Trim trailing lines" will remove the empty line at the end of your document, resulting in the same content, but with that trailing newline character removed.
Original second  to the last line.¬
Last line

This is by design, and it's doing exactly what it's meant to. It does indeed conflict with the dev-centric practice of inserting a final newline at the end of the file, as these concepts are incompatible without further controls.

To that end, as @velebit mentioned, it sounds like this ticket raises a feature request to have a separate preference for whether preserve a single trailing newline character.
For reference, this is how vscode handles it; it uses two separate preferences, which operate independently:

Insert Final Newline (whether to add that extra line at the end), and
Trim Final Newlines (which will trim all newlines, including the final newline unless the preference above is enabled)

While this plugin won't ever insert that character, we can definitely add a preference to preserve it if it's there!

The preference "Trim trailing lines" will remove the empty line at the end of your document, resulting in the same content, but with that trailing newline character removed.

This is described as we might be able to see in the first option that I submitted as a "screenshot", as "trim empty lines at the end of the document".
The second line is not an empty line, it has content and a newline at the end of it.
This:
\n
\n

would be two empty lines, since there is nothing before the newline character.  Those I would expect to be trimmed, by the description of "trim empty lines at the end of the document".
I can not understand how this:
something\n

would be described as an empty line at the end of a document.
I do know that some tools present a visual blank line after that, though.

While this plugin won't ever insert that character, we can definitely add a preference to preserve it if it's there!

YAY!  That would be nice.  And definitely good news.  I would not expect things to be inserted in my documents, especially in a tool called "trim" not "insert".

This sounds like intended behaviour with the "Trim Trailing Lines" preference enabled, which removes empty lines at the end of the document.
So, one of these documents includes a linebreak after the text; disabling that pref preserves it, which seems to be the goal?

Generally speaking, rather than technically speaking, preserving it, if it is there, is good, yes.
I think you will find that what is there is the newline character though.  Had I presented it as Windows file, it would be linefeed and carriage return and as Mac/OS, I would have presented it as linefeed only.  Whatever the character(s) are that are being addressed and trimmed, as described in the settings/options of the tool/plugin, should only happen on empty lines, as it states.
Disabling that preference, though, also leaves the extras blank lines after the last non-empty line.  Ideally, I would only want blank lines to be trimmed as the description for the option states.


Compatibility with Prettier 3.0

We're going to need to explore what it takes to be compatible with the 3.0 version of prettier, now in alpha: https://github.com/prettier/prettier/releases/tag/3.0.0-alpha.0
I haven't actually tried it yet, but I'm guessing we'll be broken, since upstream apparently does not work: https://github.com/trivago/prettier-plugin-sort-imports/issues/171

@IanVS — that’s a real bummer! We also want to work on the breaking changes we were proposing for the config. It sounds like once we have a sense of what we need to do for this 3.0.0 upgrade we’ll know a lot more about the feasibility of our changes.

Ah! This is probably at least the first breadcrumb to look into: https://github.com/prettier/prettier/blob/1a602b590ec9ed5db01780939659c427e3d277b8/changelog_unreleased/api/12748.md

I'd love to get https://github.com/IanVS/prettier-plugin-sort-imports/pull/20 merged in, and then start working on breaking changes.

I think I've tracked down why this has started to fail, and it's due to a change in the way that parsers are resolved:  https://github.com/prettier/prettier/pull/13268/files#diff-c8358202bc5a3fdb28f467ec76840e377dd714156543353736f19a76c8c1a930
Previously, the last plugin defining a parser with a given name would "win", and since custom plugins are added to the end of the array of plugins, that meant our versions of the babel, flow, or typescript parsers would take precedence over the built-in ones.  Now, a for .. of loop with an early return is used, so the built-in parsers are used instead.
I'll open an issue in prettier to see if they can suggest a way around this, but unless that happens, I think our only choice is to define our own parser(s), which means we would lose out on prettier automatically inferring the correct parser to use.  :(

https://github.com/prettier/prettier/issues/13729

Prettier 3.0 was released today: https://prettier.io/blog/2023/07/05/3.0.0.html

Since https://github.com/trivago/prettier-plugin-sort-imports/issues/171 was completed, does that mean this library is good to go for v3 compatibility?

Thanks for the heads up.  I think we might be compatible, but I haven't checked yet.  Want to give it a shot?

Preliminary tests I've run with our existing config looked good.  What I haven't tested yet, but have on my to-do list, is to test with esm config.

@michaelfaith we have a PR where we did the initial upgrade to one of the alphas: https://github.com/IanVS/prettier-plugin-sort-imports/pull/75
See that PR for a discussion -- but unfortunately, we were broken for alpha.5 to alpha.11! (Haven't tested later than that).

@fbartho thanks for the link.  Running in an existing project with Prettier v3 and the latest release of this library worked ok without needing to change any config.  It's possible we're not using an aspect of the library that's broken, if you're having trouble with it.  I still need to test with esm config

Just tested with esm config and everything just worked.
Here's the config I'm using now:
import sortImports from '@ianvs/prettier-plugin-sort-imports';

export default {
  printWidth: 120,
  singleQuote: true,
  plugins: [sortImports],
  importOrder: [
    '', // Empty line
    '<BUILTIN_MODULES>', // Node.js built-in modules
    '<THIRD_PARTY_MODULES>', // Imports not matched by other special words or groups.
    '', // Empty line
    '^[.]', // relative imports
  ],
  importOrderParserPlugins: ['typescript', 'jsx', '["decorators", { "decoratorsBeforeExport": true }]'],
};

No errors.  I shuffled my imports up just to verify that it wasn't failing silently or anything, and on the surface everything worked as expected.

Cool, thanks!  I'm going to close this issue then, and if anyone has troubles they can open a new one.


You need to change it to this: :grin:.  Also, the brackets are intentional so the change request should look like: (:grin:). This will give you the expected: (:grin:)


Omit empty timestamp in metadata (report's JSON)

Returns the report JSON object without "last_checked_at" field when timestamp cannot be retrieved.

+1 to @Bee-lee 's comment
Also it would need change in OpenAPI JSON + in tests

    > Yes. And I'll open a ticket for that and gently throw it to another team member...


docs: alert page cleanup

What I did
Updated Alert docs
Testing Instructions
View Alert page in deploy preview
Notes to Reviewers
Closes #903

@coreyvickery, there are still some things that need to be updated site-wide (like fixing the alert styling and changing the "Foundations" to "Related elements or patterns"), but I wanted to get your feedback on the other docs updates.

Things that need to be completed in Spinner docs:

[ ] Replace Foundations section with Related Components section
[ ] Add accessibility info


Use vercel edge middleware for apis

This allows us to let people stay on manifold.markets/api/v0.
The edge middleware handles all of the fetching from our backend. And edge functions are billed only for calculation time and not time spent waiting for data https://vercel.com/docs/functions/edge-functions/usage-and-pricing. so I thiiiink this should basically not cost us anything
Of course, while this still requires us to move back the the backend routes to match the old routes. And in this PR I'd also need to undelete api/og and some other things, but just this is sufficient to show that it works!

closing now that #2285 which includes this is merged


can i push the code which i made change in sentinl support for kibana 7.2

System Details
Versions

Type
Version

Kibana

Elasticsearc

Server OS

Browser

Original Install Method

[ ] Release pkg link
[ ] Gulp
[ ] Source
Other:

Bug Details
Bug Description
Steps to Reproduce

Expected Behavior
Sample of data you have in Elasticsearch

Full Watcher JSON

Screenshots (if relevant)
Errors in Browser Console (if relevant)

Kibana logs and/or server output (attached if relevant)
Any additional information

Feel free to open a pull request!
Core team will be really very happy to have such a contribution!

Thanks @kundan8239 feel free to send a PR or contact me directly if you need help doing so - thanks for your contribution!


address #103: add a scriv.user_nick setting

closes #103

I wonder if github.user is better for this, but I suppose a scriv-specific setting couldn't hurt.

i want just ronny as my nickname, my github name is my full name, my email address user is opensource


Add new items to ToDo list & add links to PRs

Do we want to distinguish between future items we're planning on doing and others that are tentative? Not sure if we have any tentative ones in this list though.
Losing the headings means we have no way to indicate an “in progress” item.
We should add an item for helper functions to reduce boilerplate. It's implied by the conclusion paragraph but since that was written I think we know we want to do that in some form.

Do we want to distinguish between future items we're planning on doing and others that are tentative? Not sure if we have any tentative ones in this list though.

Sure :) Cross that bridge when we come to it?

Losing the headings means we have no way to indicate an “in progress” item.

It'll have a PR link and not be checked off. Is that too subtle? (We also have a project in the nodejs/node repo)

We should add an item for helper functions to reduce boilerplate. It's implied by the conclusion paragraph but since that was written I think we know we want to do that in some form.

Oh! Yes, good shout. Will add.

Oh, actually now that you mention it, didn't Bradley already implement the channel communication thing? I'm thinking we just axe both of those from the final paragraph.

Oh, actually now that you mention it, didn't Bradley already implement the channel communication thing?

Not that I'm aware of? You can look at landed PRs that he's authored.

Pretty sure that a communication channel is already exposed to globalPreload code, if that's what you're talking about.
https://nodejs.org/dist/latest-v18.x/docs/api/esm.html#globalpreload

Pretty sure that a communication channel is already exposed to globalPreload code, if that's what you're talking about. https://nodejs.org/dist/latest-v18.x/docs/api/esm.html#globalpreload

Yes, exactly what I was thinking of (here's the PR nodejs/node#39240)


[BUG] Client crashing on world startup

Describe the bug
Testing out a group of mods in single player to verify they work together, narrowed it down to these 2
OS
Windows
Mod version
2.3.8
Game version
1.19.3
If using other mods, which?
Translocator Engineering Redux v1.4.9
To Reproduce
I went through the RP Voice Chat setup prior to this
Steps to reproduce the behavior:

Create world with default settings
Client crashes near the end of world loading

Additional context
Relevant exception:
Exception: Attempted to read past the end of the stream.
at ProtoBuf.ProtoReader.ReadUInt64Variant() in C:\Code\pb-net_24\src\protobuf-net\ProtoReader.cs:line 463
at ProtoBuf.ProtoReader.SkipField() in C:\Code\pb-net_24\src\protobuf-net\ProtoReader.cs:line 785
at proto_38(Object, ProtoReader)
at ProtoBuf.Meta.TypeModel.DeserializeCore(ProtoReader reader, Type type, Object value, Boolean noAutoCreate)
at ProtoBuf.Meta.TypeModel.Deserialize(Stream source, Object value, Type type, SerializationContext context)
at ProtoBuf.Serializer.Deserialize[T](Stream source)
at Vintagestory.Client.NoObf.NetworkChannel.<>c__DisplayClass12_0`1.b__0(Packet_CustomPacket p)
at Vintagestory.Client.NoObf.NetworkChannel.OnPacket(Packet_CustomPacket p)
at RPVoiceChat.Networking.NativeNetworkClient.ProcessInBackground(Int32 channelId, Packet_CustomPacket customPacket)
at RPVoiceChat.SystemNetworkProcessPatch.ProcessInBackground(Boolean& __result, Packet_Server packet)
at Vintagestory.Client.NoObf.SystemNetworkProcess.ProcessInBackground_Patch1(SystemNetworkProcess this, Packet_Server packet)
at Vintagestory.Client.NoObf.SystemNetworkProcess.TryReadPacket(Byte[] data, Int32 dataLength)
at Vintagestory.Client.NoObf.SystemNetworkProcess.NetworkProcess()
at Vintagestory.Client.NoObf.ClientThread.Update()
at Vintagestory.Client.NoObf.ClientThread.Process()
Any logs should also be attached
client-main.txt

Had a quick look at this. As far as I can tell no functionality breaks between the two mods in spite of the crash.
Temporary workaround while I track the source of the problem down properly is to create your world without one of either RPVoiceChat or Translocator Engineering Redux first and then afterwards enabling it again.
Very much appreciate the helpful bug report!


SlideMenuControllerDelegate not work

Hi, first of all thank you so much for the awesome package.
I have a UITableViewController named . In the viewDidLoad method, I set navigation bar right item:
    override func viewDidLoad() {
        // Set navigation bar right item for right slide menu
        self.setNavigationBarRightItem()
    }

Then I can use right slide menu properly.
Then I want to use SlideMenuControllerDelegate to catch slide menu open/close events so I add:
extension MyUITableViewController : SlideMenuControllerDelegate {

    func leftWillOpen() {
        print("SlideMenuControllerDelegate: leftWillOpen")
    }

    func leftDidOpen() {
        print("SlideMenuControllerDelegate: leftDidOpen")
    }

    func leftWillClose() {
        print("SlideMenuControllerDelegate: leftWillClose")
    }

    func leftDidClose() {
        print("SlideMenuControllerDelegate: leftDidClose")
    }

    func rightWillOpen() {
        print("SlideMenuControllerDelegate: rightWillOpen")
    }

    func rightDidOpen() {
        print("SlideMenuControllerDelegate: rightDidOpen")
    }

    func rightWillClose() {
        print("SlideMenuControllerDelegate: rightWillClose")
    }

    func rightDidClose() {
        print("SlideMenuControllerDelegate: rightDidClose")
    }
}

But it doesn't work.
Did I miss something, please tell me. Thank you very much.

To catch the events you have to specify a delegation first. You can do so by adding
slideMenuController()?.delegate = selfto the view controller, which implements the delegate (event) functions. For example, add the line in your override func viewDidLoad() of the UIViewController. Hope that helps.

Hi. I get it working now by extending the SlideMenuControllerDelegate and catch the global event. This is bad practice I think but working. I will try your suggestion.
Thank you very much.

I put all the code for slideMenucontroller but the button did not show the left side menu while touching the button. i don't know what is the issues in my code


Always print UUIDs using uppercase.

This changes UUID::toString() to always print using upper case. The previous
behavior was platform specific, resulting in difficulty checking UUIDs in tests.
Serialization/basic_sil.swift and SIL/Parser/basic.sil are now expected to pass
on Linux. This resolves bug SR-417.

Additional notes for the review:

The case that libuuid's unparse function uses seems to be defined at compile time.
On Ubuntu 14.04, this is compiled as lower case. In OS X 10.10, this is compiled in as upper case.
Parsing is unaffected by this change (upper, lower, and mixed case UUIDs still parse)

This change causes other platforms to conform with Swift's current behavior on OS X.

Nice!


Dependency Updates

@rorpage are you able to test it? I hope it builds well for you and the app runs well.

Looks good to me.

This is so awesome! Thanks @nateridderman!! Merging now


Fix existing-install profile and update enforcer messages

Fix existing-install profile and update enforcer messages so they format correctly.
Signed-off-by: Kate Stanley<EMAIL_ADDRESS>

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


could you please update a new release with current code when convenient

hello, i am interested in potentially using this tree-sitter in sourcegraph and would like to try the latest release. I'm afraid i have no knowledge of building the artifacts and would kindly request updating the release page which is still at 0.0.1.
@krn-robin @sebastiaanspeck are you using this yourself in emacs or something else?
thanks
-paul

thank for pointing out that link. are you using this as an alternative highlighter in emacs, or for some other purpose?
-paul


#301 Fixed Bug : Margin top given for Login & SignUp

**Fixed the Bug: [#301] **
**Fixed Margin Top for Login/SignUp Pages: **
Adjusted the CSS to correct the margin top issue on the Login and SignUp pages.
I have added the proper margin-top for Login & SignUp in the code to differentiate the nav bar and pop-ups and ensured that the margin is consistent with the overall design guidelines of the application.
**Steps to Fixed the Issue: **

Navigate to the Login/SignUp page.
Pull the latest changes from this branch.
Go to the particular element here login-outer-container then correct the margin top of the page.

Screenshots:

@Sweetynehra  there are some merge conflicts in the following file first resolve those and push your code again creating another PR as I am closing this one.