text:
no training: Total training time: 0:00:00

I debugged the training process. There is no problem loading the data set. But when it runs to the 205th line of /home/zhaojing/BCNet/detectron2/engine/train_loop.py, the training ends.
data = next(self._data_loader_iter)
How to solve this problem，thank you!
The log is as follows：
.................
[07/15 18:54:16 d2.data.datasets.coco]: Loading /repository01/nucleus_seg_data/instanceSeg/MoNuSeg/annotations/instances_train2017bcnet.json takes 16.16 seconds.
[07/15 18:54:17 d2.data.datasets.coco]: Loaded 7680 images in COCO format from /repository01/nucleus_seg_data/instanceSeg/MoNuSeg/annotations/instances_train2017bcnet.json
[07/15 19:00:58 d2.data.build]: Removed 0 images with no usable annotations. 7680 images left.
[07/15 19:01:12 d2.data.build]: Distribution of instances among all 1 categories:

category
#instances

building
310262

[07/15 19:01:16 d2.data.common]: Serializing 7680 elements to byte tensors and concatenating them all ...
[07/15 19:01:20 d2.data.common]: Serialized dataset takes 253.14 MiB
[07/15 19:02:52 d2.data.detection_utils]: TransformGens used in training: [ResizeShortestEdge(short_edge_length=(600,), max_size=900, sample_style='choice'), RandomFlip()]
[07/15 19:03:31 d2.data.build]: Using training sampler TrainingSampler
[07/15 19:05:52 fvcore.common.checkpoint]: [Checkpointer] Loading from /home/zhaojing/BCNet/pretrainmodel/R-101.pkl ...
[07/15 19:05:52 d2.checkpoint.c2_model_loading]: Remapping C2 weights ......
[07/15 19:05:54 d2.checkpoint.c2_model_loading]: backbone.bottom_up.res2.0.conv1.norm.bias            loaded from res2_0_branch2a_bn_beta           of shape (64,)
[07/15 19:05:54 d2.checkpoint.c2_model_loading]: backbone.bottom_up.res2.0.conv1.norm.running_mean    loaded from res2_0_branch2a_bn_running_mean   of shape (64,)
[07/15 19:05:54 d2.checkpoint.c2_model_loading]: backbone.bottom_up.res2.0.conv1.norm.running_var     loaded from res2_0_branch2a_bn_running_var    of shape (64,)
............................
[07/15 16:52:25 d2.checkpoint.c2_model_loading]: The checkpoint state_dict contains keys that are not used by the model:
fc1000_b
fc1000_w
[07/15 16:52:25 d2.engine.train_loop]: Starting training from iteration 0
[07/15 16:52:25 d2.engine.hooks]: Total training time: 0:00:00 (0:00:00 on hooks)
[07/15 16:52:26 d2.data.datasets.coco]: Loaded 896 images in COCO format from /repository01/nucleus_seg_data/instanceSeg/MoNuSeg/annotations/instances_test2017bcnet.json
[07/15 16:52:26 d2.data.build]: Distribution of instances among all 1 categories:

category
#instances

building
24384

[07/15 16:52:26 d2.data.common]: Serializing 896 elements to byte tensors and concatenating them all ...
[07/15 16:52:26 d2.data.common]: Serialized dataset takes 7.96 MiB
[07/15 16:52:27 d2.evaluation.evaluator]: Start inference on 896 images
[07/15 16:52:28 d2.evaluation.evaluator]: Inference done 11/896. 0.0775 s / img. ETA=0:01:30
[07/15 16:52:33 d2.evaluation.evaluator]: Inference done 61/896. 0.0761 s / img. ETA=0:01:24

_libgcc_mutex             0.1                        main
_openmp_mutex             4.5                       1_gnu
blas                      1.0                         mkl    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
bzip2                     1.0.8                h7b6447c_0
ca-certificates           2021.7.5             h06a4308_1
certifi                   2021.5.30        py37h06a4308_0
cffi                      1.14.6           py37h400218f_0
charset-normalizer        2.0.1                    pypi_0    pypi
cloudpickle               1.6.0                    pypi_0    pypi
cudatoolkit               10.0.130                      0    nvidia
cycler                    0.10.0                   pypi_0    pypi
cython                    3.0.0a8                  pypi_0    pypi
detectron2                0.1                       dev_0    <develop>
ffmpeg                    4.3                  hf484d3e_0    pytorch
freetype                  2.10.4               h5ab3b9f_0
future                    0.18.2                   pypi_0    pypi
gmp                       6.2.1                h2531618_2
gnutls                    3.6.15               he1e5248_0
idna                      3.2                      pypi_0    pypi
intel-openmp              2021.2.0           h06a4308_610
iopath                    0.1.9                    pypi_0    pypi
jpeg                      9b                            0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
kiwisolver                1.3.1                    pypi_0    pypi
lame                      3.100                h7b6447c_0
lcms2                     2.12                 h3be6417_0
ld_impl_linux-64          2.35.1               h7274673_9
libffi                    3.3                  he6710b0_2
libgcc-ng                 9.3.0               h5101ec6_17
libgfortran-ng            7.5.0               ha8ba4b0_17
libgfortran4              7.5.0               ha8ba4b0_17
libgomp                   9.3.0               h5101ec6_17
libiconv                  1.14                          0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
libidn2                   2.3.1                h27cfd23_0
libpng                    1.6.37               hbc83047_0
libstdcxx-ng              9.3.0               hd4cf53a_17
libtasn1                  4.16.0               h27cfd23_0
libtiff                   4.2.0                h85742a9_0
libunistring              0.9.10               h27cfd23_0
libuv                     1.40.0               h7b6447c_0
libwebp-base              1.2.0                h27cfd23_0
lz4-c                     1.9.3                h2531618_0
mkl                       2021.2.0           h06a4308_296
mkl-service               2.4.0            py37h7f8727e_0
mkl_fft                   1.3.0            py37h42c9631_2
mkl_random                1.2.1            py37ha9443f7_2
ncurses                   6.2                  he6710b0_1
nettle                    3.7.3                hbbd107a_1
ninja                     1.7.2                         0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
numpy                     1.20.2           py37h2d18471_0
numpy-base                1.20.2           py37hfae3a4d_0
olefile                   0.46                     py37_0
openh264                  2.1.0                hd408876_0
openjpeg                  2.3.0                h05c96fa_1
openssl                   1.1.1k               h27cfd23_0
pillow                    6.2.2                    pypi_0    pypi
pip                       21.1.3           py37h06a4308_0
portalocker               2.3.0                    pypi_0    pypi
pycocotools               2.0                      pypi_0    pypi
pycparser                 2.20                       py_2
pydot                     1.4.2                    pypi_0    pypi
pyparsing                 3.0.0b2                  pypi_0    pypi
python                    3.7.10               h12debd9_4
python-dateutil           2.8.1                    pypi_0    pypi
pytorch                   1.4.0           py3.7_cuda10.0.130_cudnn7.6.3_0    pytorch
pywavelets                1.1.1            py37h7b6447c_2
pyyaml                    5.4.1                    pypi_0    pypi
readline                  8.1                  h27cfd23_0
requests                  2.26.0                   pypi_0    pypi
scipy                     1.6.2            py37had2a1c9_1
setuptools                52.0.0           py37h06a4308_0
six                       1.16.0             pyhd3eb1b0_0
sqlite                    3.36.0               hc218d9a_0
tabulate                  0.8.9                    pypi_0    pypi
tensorboard               2.5.0                    pypi_0    pypi
tensorboard-data-server   0.6.1                    pypi_0    pypi
tensorboard-plugin-wit    1.8.0                    pypi_0    pypi
tk                        8.6.10               hbc83047_0
torchaudio                0.4.0                      py37    pytorch
torchvision               0.5.0                py37_cu100    pytorch
tqdm                      4.61.2                   pypi_0    pypi
typing                    3.10.0.0         py37h06a4308_0
typing_extensions         3.10.0.0           pyh06a4308_0
urllib3                   1.26.6                   pypi_0    pypi
werkzeug                  2.0.1                    pypi_0    pypi
wheel                     0.36.2                   pypi_0    pypi
xz                        5.2.5                h7b6447c_0
yacs                      0.1.8                    pypi_0    pypi
zlib                      1.2.11                        0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
zstd                      1.4.9                haebb681_0

Hi, this is due to the encountered training error which causes the programs to skip the training to evaluation directly. You could wait for all evaluation finishes and then I think the error will go out. For more quick validation, I suggest to uncomment this line to see the error.

After all evaluation finishing, a new error is caused.
[07/16 11:03:05 d2.engine.train_loop]: Starting training from iteration 0
[07/16 11:03:06 d2.engine.hooks]: Total training time: 0:00:00 (0:00:00 on hooks)
[07/16 11:03:07 d2.data.datasets.coco]: Loaded 896 images in COCO format from /repository01/nucleus_seg_data/instanceSeg/MoNuSeg/annotations/instances_test2017bcnet.json
[07/16 11:03:07 d2.data.build]: Distribution of instances among all 1 categories:
|  category  | #instances   |
|:----------:|:-------------|
|  building  | 24384        |
|            |              |

[07/16 11:03:07 d2.data.common]: Serializing 896 elements to byte tensors and concatenating them all ...
[07/16 11:03:07 d2.data.common]: Serialized dataset takes 7.96 MiB
[07/16 11:03:08 d2.evaluation.evaluator]: Start inference on 896 images
[07/16 11:03:08 d2.evaluation.evaluator]: Inference done 11/896. 0.0500 s / img. ETA=0:00:56
[07/16 11:03:13 d2.evaluation.evaluator]: Inference done 96/896. 0.0457 s / img. ETA=0:00:47
[07/16 11:03:18 d2.evaluation.evaluator]: Inference done 181/896. 0.0461 s / img. ETA=0:00:42
[07/16 11:03:23 d2.evaluation.evaluator]: Inference done 265/896. 0.0464 s / img. ETA=0:00:37
[07/16 11:03:28 d2.evaluation.evaluator]: Inference done 351/896. 0.0464 s / img. ETA=0:00:32
[07/16 11:03:33 d2.evaluation.evaluator]: Inference done 440/896. 0.0461 s / img. ETA=0:00:26
[07/16 11:03:39 d2.evaluation.evaluator]: Inference done 526/896. 0.0460 s / img. ETA=0:00:21
[07/16 11:03:44 d2.evaluation.evaluator]: Inference done 612/896. 0.0461 s / img. ETA=0:00:16
[07/16 11:03:49 d2.evaluation.evaluator]: Inference done 698/896. 0.0462 s / img. ETA=0:00:11
[07/16 11:03:54 d2.evaluation.evaluator]: Inference done 783/896. 0.0463 s / img. ETA=0:00:06
[07/16 11:03:59 d2.evaluation.evaluator]: Inference done 871/896. 0.0462 s / img. ETA=0:00:01
[07/16 11:04:00 d2.evaluation.evaluator]: Total inference time: 0:00:52.059438 (0.058428 s / img per device, on 1 devices)
[07/16 11:04:00 d2.evaluation.evaluator]: Total inference pure compute time: 0:00:41 (0.046215 s / img per device, on 1 devices)
[07/16 11:04:00 d2.evaluation.coco_evaluation]: Preparing results for COCO format ...
[07/16 11:04:00 d2.evaluation.coco_evaluation]: Saving results to ./output/inference/coco_instances_results.json
[07/16 11:04:00 d2.evaluation.coco_evaluation]: Evaluating predictions ...
Loading and preparing results...
DONE (t=0.00s)
creating index...
index created!
Running per image evaluation...
Evaluate annotation type *bbox*
DONE (t=0.36s).
Accumulating evaluation results...
DONE (t=0.04s).
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=  1 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets= 10 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.000
[07/16 11:04:00 d2.evaluation.coco_evaluation]: Evaluation results for bbox:
|  AP   |  AP50  |  AP75  |  APs  |  APm  |  APl  |
|:-----:|:------:|:------:|:-----:|:-----:|:-----:|
| 0.000 | 0.000  | 0.000  | 0.000 | 0.000 | 0.000 |
Loading and preparing results...
DONE (t=0.00s)
creating index...
index created!
Running per image evaluation...
Evaluate annotation type *segm*
DONE (t=0.87s).
Accumulating evaluation results...
DONE (t=0.04s).
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=  1 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets= 10 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.000
[07/16 11:04:01 d2.evaluation.coco_evaluation]: Evaluation results for segm:
|  AP   |  AP50  |  AP75  |  APs  |  APm  |  APl  |
|:-----:|:------:|:------:|:-----:|:-----:|:-----:|
| 0.000 | 0.000  | 0.000  | 0.000 | 0.000 | 0.000 |
[07/16 11:04:01 d2.engine.defaults]: Evaluation results for MoNuSeg_test in csv format:
[07/16 11:04:01 d2.evaluation.testing]: copypaste: Task: bbox
[07/16 11:04:01 d2.evaluation.testing]: copypaste: AP,AP50,AP75,APs,APm,APl
[07/16 11:04:01 d2.evaluation.testing]: copypaste: 0.0000,0.0000,0.0000,0.0000,0.0000,0.0000
[07/16 11:04:01 d2.evaluation.testing]: copypaste: Task: segm
[07/16 11:04:01 d2.evaluation.testing]: copypaste: AP,AP50,AP75,APs,APm,APl
[07/16 11:04:01 d2.evaluation.testing]: copypaste: 0.0000,0.0000,0.0000,0.0000,0.0000,0.0000
Traceback (most recent call last):
  File "tools/train_net.py", line 179, in <module>
    args=(args,),
  File "/home/zhaojing/BCNet/detectron2/engine/launch.py", line 51, in launch
    main_func(*args)
  File "tools/train_net.py", line 167, in main
    return trainer.train()
  File "/home/zhaojing/BCNet/detectron2/engine/defaults.py", line 373, in train
    super().train(self.start_iter, self.max_iter)
  File "/home/zhaojing/BCNet/detectron2/engine/train_loop.py", line 131, in train
    self.run_step()
  File "/home/zhaojing/BCNet/detectron2/engine/train_loop.py", line 225, in run_step
    losses.backward()
  File "/home/zhaojing/anaconda3/envs/bcnet/lib/python3.7/site-packages/torch/tensor.py", line 195, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph)
  File "/home/zhaojing/anaconda3/envs/bcnet/lib/python3.7/site-packages/torch/autograd/__init__.py", line 99, in backward
    allow_unreachable=True)  # allow_unreachable flag
RuntimeError: cuDNN error: CUDNN_STATUS_NOT_SUPPORTED. This error may appear if you passed in a non-contiguous input.

Maybe be the losses are not contiguous?

I inserted the following code in BCNet/detectron2/engine/train_loop.py.  This problem was solved.
**torch.backends.cudnn.enabled = False
loss_dict = self.model(data, self.iter, self.max_iter)**

I had the same bug in windows 10. And I find it's caused by the PYTORCH VERSION==1.4, which has been reported in github/pytorch before.

CUDNN_STATUS_NOT_SUPPORTED. This error may appear if you passed in a non-contiguous input.

One solution is to upgrade PYTORCH==1.8, and TORCHVISION. The BCNet has many compatibility issues with PYTORCH_1.8 . Step by step debugging, finally, it works out.

authors: chenxinfeng4 jingzhaohlj lkeab


text:
Disappearing Sender (@) column

Hi,
I'm running Thunderbird 68.10.0 on Linux Mint 20.1 Cinnamon with these addons:

Allow HTML Temo
DKIM Verifier
Enigmail
Lightning
Paranoia
Rise of the Tools
Signature Switch
Send later
and obviously Full Address column v.1.0.2

The Sender (@) column keeps disappearing occasionally, not after each TB shutdown/launch. I'm using local folders for my e-mail accounts. I have not yet identified a way how to consistently reproduce this behavior.
Is there anything else that I could do/check for other than to observe more carefully and notice some potential correlation?
Thanks.

When you notice the column disappears, check console (CTRL-SHIFT-J) for any unusual messages and compare them with those you get during normal Thunderbird startup.

I have similar problems: Sender@ and Recipient@ columns disappear when Thunderbird is closed. But only in virtual folders. They combine the mails of 10 accounts and several archive-folders. All folders are online(imap).
Thunderbird 102.7.1 is a fresh and clean install on a fresh installed Linux Mint 20.1 Cinnamon.
I cannot compare different startups, because every startup has lost the columns in the virtual folders.

You mean saved search folders? I can't reproduce the behavior on TB 102.7.2 on Debian 11, Windows 7 or Windows 10. Please provide step-by-step description how you do it.

After adding Sender@ and Recipient@ to all folders, the saved search folders _Trash and _Junk (10 folders each) are ok.
_Inbox (85 folders) is more stable than before but the columns disappear sometimes.
My idea is the issue is depending on the number of searched folders or on the column order of the searched folders.

Not really sure what I can do about this bug.

source: gharchive/issue

authors: CEHitchens Key-Snapper lkosson

repo: lkosson/full-address-column

license: MIT

license_type: permissive

license_source: github-api


text:
[v2] Password section - Empty Password Works

In the Password section in V2 even with empty password it allows the clicking to next and with enter key,
It should be restricted
https://github.com/llaske/sugarizer/assets/116670999/8ca78835-94c4-4477-8a34-424c99725ded

:open_mouth: Well done!
The minimal size should even be checked: https://github.com/llaske/sugarizer/blob/dev/js/firstscreen.js#L183

😮 Well done! The minimal size should even be checked: https://github.com/llaske/sugarizer/blob/dev/js/firstscreen.js#L183

Yes, I was thinking of adding that, even if it wasn't mentioned
The minimal size should be kept to 4 right

The minimal size should be kept to 4 right

Yes this is the default minimal size but the server keep the control on the real minimum.

Fixed in https://github.com/llaske/sugarizer/pull/1599

repo: llaske/sugarizer

license_source: bigquery


text:
Replaced Bootstrap-tour by IntroJs in Vote activity

Fixes: #1090
Replaced bootstrap-tour with introJs library in Vote Activity.

I have followed all the steps as mentioned here.
Still I have problem in running the tutorial.
When I am checking it on console the following error is coming.
Please help me how could I correct it and where I have made the mistake.

Thanks @disha1202 .

The card popup doesn't appear. It should be there after the first popup.

Whenever I am trying to run this activity network error is occuring.Its happening with only this.Could you suggest any possible fix?

Do you have an error message in the console?

Close due to lack of activity. @abhishek-sultaniya feel free to reopen it if need.

source: gharchive/pull-request

authors: abhishek-sultaniya llaske


text:
Replaced bootstrap tour with IntroJs for Abecedarium

Fixes #1090 for Abecedarium.

@llaske I've fixed the issue Kindly check it

There is still an issue, the Done button is not localized.

Fixed now

Nice. Thanks.

authors: UtkarshSiddhpura llaske


text:
DOC: Vector Databases > Pinecone error for import

Issue with current documentation:
In the documentation under vector databases for Pinecone, there may be an error unless I am missing something.
When importing embedjs-pinecone the example shows:
import { LanceDb } from '@llm-tools/embedjs-pinecone';
However, later the example calls upon new PineconeDb within .setVectorDb as shown (instead of LanceDb):
const app = await new RAGApplicationBuilder()
.setEmbeddingModel(new OpenAiEmbeddings())
.setModel(SIMPLE_MODELS.OPENAI_GPT4_O)
.setVectorDb(new PineconeDb({
...

This caused an error, which seems to have been resolved when I exchanged { LanceDb } with { PineconeDb } in the import statement.

Thanks for pointing it out. It's addressed now.

repo: llm-tools/embedJs


text:
Entering command mode from visual mode should make use of marks

vjj: should:

pre-write :'<,'>
actually work (since typing them complains about marks not being set, maybe a vim-mode issue)

Yes, vim-mode doesn't actually set the < and > marks.
I opened an issue at atom/vim-mode#597

authors: jazzpi lloeki

repo: lloeki/ex-mode

license: mit


text:
How auto_scale mode works?

I see it reduce noise even if chose level0. :)

README.md の「変換モード」にある「ノイズ除去(自動判別)と拡大」に説明が書いてあります。


text:
400: Bad Request

My HA is throwing "400: Bad Request" when connecting from a none Tailscale equipped device. Connecting from a device with Tailscale works fine using http
Some comments.

I have two HA in my network, both configured with tailscale, but only this one configured with Funnel.
This device is also configured for DuckDNS/NGINX, but I guess this has nothing to do with this setup
My Config file has this http entry:

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 172.30.33.0/24

Something I noticed in the log file is "http://192.168.0.150:5000/Public_UPNP_gatedesc.xml". That is an very old Netgear router configured only as an access point and my HA is not routed through this device. As this is the only device on my network (except for my HA at 192.168.0.158) I think it's worth noticing.

Log file below:
2023/08/09 00:38:32 portmapper: UPnP meta changed: {Location:http://192.168.0.150:5000/Public_UPNP_gatedesc.xml Server:Linux/2.6.12, UPnP/1.0, NETGEAR-UPNP/1.0 USN:uuid:c08bed9f-ca63-872c-35eb-849431d8e49a::urn:schemas-upnp-org:device:InternetGatewayDevice:1}
s6-rc: info: service init-nginx successfully started
s6-rc: info: service nginx: starting
2023/08/09 00:38:32 control: NetInfo: NetInfo{varies=false hairpin=true ipv6=false ipv6os=true udp=true icmpv4=false derp=#4 portmap=active-UM link=""}
2023/08/09 00:38:32 magicsock: endpoints changed: 83.216.118.134:46062 (portmap), 172.30.32.1:46062 (local), 172.30.232.1:46062 (local), 192.168.0.158:46062 (local)
2023/08/09 00:38:32 Switching ipn state NoState -> Starting (WantRunning=true, nm=true)
2023/08/09 00:38:32 magicsock: SetPrivateKey called (init)
2023/08/09 00:38:32 magicsock: private key changed, reconnecting to home derp-4
2023/08/09 00:38:32 wgengine: Reconfig: configuring userspace WireGuard config (with 1/2 peers)
2023/08/09 00:38:32 magicsock: adding connection to derp-4 for home-keep-alive
2023/08/09 00:38:32 magicsock: 1 active derp conns: derp-4=cr0s,wr0s
2023/08/09 00:38:32 wgengine: Reconfig: configuring router
2023/08/09 00:38:32 wgengine: Reconfig: configuring DNS
2023/08/09 00:38:32 dns: Set: {DefaultResolvers:[] Routes:{tailYYYY.ts.net.:[] ts.net.:[199.247.155.53 2620:111:8007::53]}+65arpa SearchDomains:[tailYYYY.ts.net.] Hosts:3}
2023/08/09 00:38:32 derphttp.Client.Connect: connecting to derp-4 (fra)
2023/08/09 00:38:32 peerapi: serving on http://100.111.254.99:43486
2023/08/09 00:38:32 health("dns"): error: getting OS base config is not supported
2023/08/09 00:38:32 health("dns-os"): error: getting OS base config is not supported
2023/08/09 00:38:32 peerapi: serving on http://[fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486
2023/08/09 00:38:32 Switching ipn state Starting -> Running (WantRunning=true, nm=true)
[00:38:32] INFO: Starting NGinx...
2023/08/09 00:38:33 magicsock: derp-4 connected; connGen=1
s6-rc: info: service nginx successfully started
2023/08/09 00:38:34 wgengine: Reconfig: configuring userspace WireGuard config (with 1/10 peers)
[00:38:40] DEBUG: Requested API resource: http://supervisor/network/info
[00:38:40] DEBUG: Request method: GET
[00:38:40] DEBUG: Request data: {}
[00:38:40] DEBUG: API HTTP Response code: 200
[00:38:40] DEBUG: API Response: {"result": "ok", "data": {"interfaces": [{"interface": "wlan0", "type": "wireless", "enabled": false, "connected": false, "primary": false, "mac": "B8:27:EB:EF:40:97", "ipv4": {"method": "disabled", "address": [], "nameservers": [], "gateway": null, "ready": false}, "ipv6": {"method": "disabled", "address": [], "nameservers": [], "gateway": null, "ready": false}, "wifi": null, "vlan": null}, {"interface": "eth0", "type": "ethernet", "enabled": true, "connected": true, "primary": true, "mac": "B8:27:EB:BA:15:C2", "ipv4": {"method": "auto", "address": ["192.168.0.158/24"], "nameservers": ["192.168.0.1"], "gateway": "192.168.0.1", "ready": true}, "ipv6": {"method": "disabled", "address": ["fe80::4276:11cb:6a16:4a27/64"], "nameservers": [], "gateway": null, "ready": true}, "wifi": null, "vlan": null}], "docker": {"interface": "hassio", "address": "172.30.32.0/23", "gateway": "172.30.32.1", "dns": "172.30.32.3"}, "host_internet": true, "supervisor_internet": true}}
2023/08/09 00:38:40 wgengine: idle peer [wsJSV] now active, reconfiguring WireGuard
2023/08/09 00:38:40 wgengine: Reconfig: configuring userspace WireGuard config (with 2/10 peers)
2023/08/09 00:38:40 magicsock: disco: node [wsJSV] d:a4f4b648194b869e now using 90.129.214.194:32466
2023/08/09 00:38:40 Accept: TCP{100.79.46.100:53384 > 100.111.254.99:8123} 65 tcp non-syn
2023/08/09 00:38:40 Accept: TCP{100.79.46.100:53409 > 100.111.254.99:8123} 64 tcp ok
2023/08/09 00:38:40 [unexpected] localbackend: got TCP conn without TCP config for port 8123; from 100.79.46.100:53409
2023/08/09 00:38:41 Accept: TCP{100.79.46.100:53409 > 100.111.254.99:8123} 52 tcp non-syn
[00:38:41] DEBUG: Requested API resource: http://supervisor/network/interface/wlan0/info
[00:38:41] DEBUG: Request method: GET
[00:38:41] DEBUG: Request data: {}
[00:38:41] DEBUG: API HTTP Response code: 200
[00:38:42] DEBUG: API Response: {"result": "ok", "data": {"interface": "wlan0", "type": "wireless", "enabled": false, "connected": false, "primary": false, "mac": "B8:27:EB:EF:40:97", "ipv4": {"method": "disabled", "address": [], "nameservers": [], "gateway": null, "ready": false}, "ipv6": {"method": "disabled", "address": [], "nameservers": [], "gateway": null, "ready": false}, "wifi": null, "vlan": null}}
[00:38:43] DEBUG: Requested API resource: http://supervisor/network/interface/eth0/info
[00:38:43] DEBUG: Request method: GET
[00:38:43] DEBUG: Request data: {}
[00:38:43] DEBUG: API HTTP Response code: 200
[00:38:44] DEBUG: API Response: {"result": "ok", "data": {"interface": "eth0", "type": "ethernet", "enabled": true, "connected": true, "primary": true, "mac": "B8:27:EB:BA:15:C2", "ipv4": {"method": "auto", "address": ["192.168.0.158/24"], "nameservers": ["192.168.0.1"], "gateway": "192.168.0.1", "ready": true}, "ipv6": {"method": "disabled", "address": ["fe80::4276:11cb:6a16:4a27/64"], "nameservers": [], "gateway": null, "ready": true}, "wifi": null, "vlan": null}}
[00:38:46] INFO: Tailscale is running
[00:38:47] WARNING: Currently the following subnets are both present as local subnets
[00:38:47] WARNING: and are also routed within your tailnet to other nodes!
[00:38:47] WARNING: Please reconfigure your subnet routing within your tailnet
[00:38:47] WARNING: to prevent current or future collisions.
[00:38:47] WARNING:   192.168.0.0/24
s6-rc: info: service post-tailscaled successfully started
s6-rc: info: service proxy: starting
s6-rc: info: service taildrop: starting
s6-rc: info: service taildrop successfully started
[00:38:49] DEBUG: Requested API resource: http://supervisor/core/info
[00:38:49] DEBUG: Request method: GET
[00:38:49] DEBUG: Request data: {}
[00:38:49] DEBUG: API HTTP Response code: 200
[00:38:49] DEBUG: API Response: {"result": "ok", "data": {"version": "2023.8.1", "version_latest": "2023.8.1", "update_available": false, "machine": "raspberrypi3-64", "ip_address": "172.30.32.1", "arch": "aarch64", "image": "ghcr.io/home-assistant/raspberrypi3-64-homeassistant", "boot": true, "port": 8123, "ssl": false, "watchdog": true, "audio_input": null, "audio_output": null}}
2023/08/09 00:38:50 serve: closing idle connections to http://127.0.0.1:8123
2023/08/09 00:38:50 Hostinfo.WireIngress changed to false
2023/08/09 00:38:51 serve: creating a new proxy handler for http://127.0.0.1:8123
2023/08/09 00:38:51 wgengine: Reconfig: configuring userspace WireGuard config (with 2/2 peers)
[00:38:51] INFO: Tailscale Proxy is enabled:
[00:38:51] INFO:   Your Home Assistant instance is available within your Tailnet VPN at
[00:38:51] INFO:   https://XXXX.tailYYYY.ts.net
s6-rc: info: service proxy successfully started
s6-rc: info: service funnel: starting
2023/08/09 00:38:53 Hostinfo.WireIngress changed to true
[00:38:53] INFO: Tailscale Funnel is enabled:
[00:38:53] INFO:   Your Home Assistant instance is publicly available on the internet at
[00:38:53] INFO:   https://XXXX.tailYYYY.ts.net
s6-rc: info: service funnel successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
2023/08/09 00:38:53 wgengine: Reconfig: configuring userspace WireGuard config (with 2/10 peers)
2023/08/09 00:39:37 Accept: TCP{100.79.46.100:53409 > 100.111.254.99:8123} 52 tcp non-syn
2023/08/09 00:39:37 Accept: TCP{100.79.46.100:53409 > 100.111.254.99:8123} 58 tcp non-syn
2023/08/09 00:39:50 Accept: TCP{100.79.46.100:53409 > 100.111.254.99:8123} 52 tcp non-syn
2023/08/09 00:39:50 Accept: TCP{100.79.46.100:53409 > 100.111.254.99:8123} 66 tcp non-syn
2023/08/09 00:39:56 [unexpected] localbackend: got TCP conn without TCP config for port 8123; from 100.79.46.100:53411
2023/08/09 00:39:56 [unexpected] localbackend: got TCP conn without TCP config for port 8123; from 100.79.46.100:53412
2023/08/09 00:39:56 [unexpected] localbackend: got TCP conn without TCP config for port 8123; from 100.79.46.100:53413
2023/08/09 00:39:58 Accept: TCP{100.79.46.100:53411 > 100.111.254.99:8123} 52 tcp non-syn
2023/08/09 00:40:41 wgengine: idle peer [8EeRI] now active, reconfiguring WireGuard
2023/08/09 00:40:41 wgengine: Reconfig: configuring userspace WireGuard config (with 3/10 peers)
2023/08/09 00:40:41 magicsock: disco: node [8EeRI] d:770110597853e96d now using 185.40.234.37:41651
2023/08/09 00:40:41 Drop: TCP{[fd7a:115c:a1e0:ab12:4843:cd96:6249:ba61]:49386 > [fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486} 80 no rules matched
2023/08/09 00:40:41 Drop: TCP{[fd7a:115c:a1e0:ab12:4843:cd96:6249:ba61]:49402 > [fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486} 80 no rules matched
2023/08/09 00:40:41 Accept: TCP{[fd7a:115c:a1e0:ab12:4843:cd96:6249:ba61]:49386 > [fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486} 72 tcp non-syn
2023/08/09 00:40:41 Accept: TCP{[fd7a:115c:a1e0:ab12:4843:cd96:6249:ba61]:49402 > [fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486} 72 tcp non-syn
2023/08/09 00:40:41 Accept: TCP{[fd7a:115c:a1e0:ab12:4843:cd96:6249:ba61]:49402 > [fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486} 315 tcp non-syn
2023/08/09 00:40:41 [RATELIMIT] format("%s: %s %d %s\n%s")
2023/08/09 00:40:57 Accept: TCP{[fd7a:115c:a1e0:ab12:4843:cd96:6249:ba61]:49386 > [fd7a:115c:a1e0:ab12:4843:cd96:626f:fe63]:43486} 72 tcp non-syn

Please add 127.0.0.1 to trusted proxies (as noted in the Documentation), because Tailscale is running on the host network, not like NGINX on the docker network.
Note: This is an intentional Tailscale limitation that it uses 127.0.0.1, "Note that only http://127.0.0.1 is currently supported for proxies." https://tailscale.com/kb/1242/tailscale-serve/
  trusted_proxies:
    - 172.30.33.0/24
    - 127.0.0.1

On the Netgear issue: I think Tailscale tries to find any route toward the internet with any means.

Important:
[00:38:47] WARNING: Currently the following subnets are both present as local subnets
[00:38:47] WARNING: and are also routed within your tailnet to other nodes!
[00:38:47] WARNING: Please reconfigure your subnet routing within your tailnet
[00:38:47] WARNING: to prevent current or future collisions.
[00:38:47] WARNING: 192.168.0.0/24

There is a protection in this add-on to prevent this collision, but without this, when you enable the subnet routing on the other site, this site would route all the traffic toward the other site and your local HA would lose ALL network access, would get soft bricked! Yes, it is typical to use 192.168.0.0/24 or 192.168.1.0/24 on multiple LAN-s, but Tailscale assumes they are on the same LAN and this is usually not true, and a simple click (enabling subnet routing on the Tailscale admin page) can mess up your networking completely.

Thanks, now works like a charm.
I tried to understand the "Important:" above but didn't totally grab it. I only have one network that should be known by tailscale and that is 192.168.0.0/24
I did see that there was another issue related to the same "400: Bad Request" with the solution to set 127.0.0.1 as the trusted proxy but as I didn't find it in the documentation I thought it was not relevant. Are you sure this is in the documentation for HA. I looked at the latest documentation where there was some updates for Funnel but I didn't find the information about the trusted proxy but I might have miseed something
I could see that this is on the way to be released in the official repro, that would be great
Thanks for the help and all the work you are doing, this will be a great improvement to HA when finally released. Now my Internet Provider can NAT and hide my router anyway they want, I will still be able to give access to my family members without them to install the Tailscale app and register an account

Ah, I see, this 127.0.0.1 thing is in the proxy documentation, but funnel uses the proxy. I will add a note to the funnel docs to read the proxy docs also. It was trivial for me, but not trivial for a first time reader, thank you for the reply! And I will try to add some detection for this misconfiguration.

On the "Important" thing: there are at least 2 Tailscale devices (add-on or real Tailscale installation) in your tailnet network that uses the same local 192.168.0.0/24 LAN network, and the add-on automatically advertises these as possible subnet routes. Subnet: you can access non-tailscale-installed devices on the advertised subnet through the tailscale-installed device routing the traffic. Advertising doesn't automatically enable the routing, but it seems you have enabled on at least one of the other devices (not this add-on that we are talking about now) this routing (see https://login.tailscale.com/admin/machines), so you can access that subnet's devices from any tailscale-installed device (like this add-on's device) easily with a ping 192.168.0.x. But this add-on's local LAN also uses a 192.168.0.0/24 network, so all the traffic, even your local HA's traffic on 192.168.0.x will go to the other devices LAN, a total mess. Tailscale assumes they are load-balancing or failsafe nodes on the same physical LAN, but they are usually just misconfiguration.
Enter this into a cli (do not copy-paste the output here, just see it):
docker exec -it addon_09716aab_tailscale /bin/bash
/opt/tailscale status --json --peers=true --self=false | jq '.Peer[] | select(has("PrimaryRoutes"))'

You will get at least one result, a device that is not this add-on's LAN, but has an enabled 192.168.0.0/24 subnet routing.
Enter this:
{ ip -4 rule list; ip -6 rule list; }

There will be lines starting with "5000" like:
5000:   from all to 192.168.0.0/24 lookup main

These lines prevent tailscale to route this add-on's devices's ALL network trafic to the other device's network, making it de facto unreacable.

Yeah, my forked docs contain an extra "check logs again" step, now I made a PR for the official add-on also: https://github.com/hassio-addons/addon-tailscale/pull/242 I don't want to mention proxy explicitly, if somebody is a fresh new Tailscale user, HTTPS won't be set, and if it is already set, there will be warning in the log about the situation. Other services are also starting after the login, so better to be not too specific, core developers don't like that in my experience.
And I made a reference from the funnel docs to the proxy doc also.
And I've tried to add some proxy config check to the scripts, but a simple curl fails on userspace-networking devices, after I figure out this problem, there will be a warning about this trusted proxies issue also.

And the proxy config check is released also, closing this issue now.

Thanks for this great addon supercharge! Definitely add this to your DOC.md (Something like "Note: 127.0.0.1 must be one of your trusted_proxies in your home assistant config file for https/proxy to work, otherwise you will see a 400:Bad Request error when trying to access home assistant").
Just to understand are their any serious security risks of adding this to the trusted proxy list?

Oh, and the security issue: I'm really not an expert, as I understand, this will make accessible the unencrypted plain HTTP web UI of HA for proxies not only on the 172.30.33.0/24 internal docker add-on network (used by eg. the NGINX proxy) but on the localhost also. I think this is at least not much worst than without this extra config line. And this is a Tailscale requirement, so we can't do anything about it. :/

That should help.
Been using the proxy/https features and they work great.

And finally even myself run into this 400: Bad Request error... :D
I fixed reverse proxy config detection: diff
New release is out.

authors: erapade googanhiem lmagyar

repo: lmagyar/homeassistant-addon-tailscale


text:
OpenFPGA Shell Run run failed with returncode -6

Hello everyone,
The issues is that i'm trying to execute the testbench with the AES128 algorithm, the verilog files are from "https://opencores.org/projects/tiny_aes" and it works perfectly, but when i try to use those files to run the Operating Phase testbench the following error appears.
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - OpenFPGA Shell Run run failed with returncode -6
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - command /home/emilio/Desktop/OpenFPGA/openfpga/openfpga -batch -f aes_128_run.openfpga
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - -->>terminate called after throwing an instance of 'VprError'
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - -->>  what():  Error: Activity file does not contain signal a8.out_1[96]__n1412
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - Current working directory : /home/emilio/Desktop/OpenFPGA/openfpga_flow/tasks/My_task/run020/k6_frac_N10_tileable_adder_chain_40nm/aes_128/MIN_ROUTE_CHAN_WIDTH
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - Failed to run OpenFPGA Shell Run task
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - Exiting . . . . . .
ERROR (00_aes_128_MIN_ROUTE_CHAN_WIDTH) - Failed to execute openfpga flow - 00_aes_128_MIN_ROUTE_CHAN_WIDTH
Does anyone know what is the cause of this problem and how can I fix it?

@Baungarten-CINVESTAV See answers https://github.com/lnis-uofu/OpenFPGA/issues/515#issuecomment-1039906933

authors: Baungarten-CINVESTAV tangxifan

repo: lnis-uofu/OpenFPGA


text:
Avoid to output initial signal for general-purpose output ports of FPGA fabrics in Verilog testbenches

Motivate of the pull request

[X] To address an existing issue. If so, please provide a link to the issue.
[ ] Breaking new feature. If so, please decribe details in the description part.

Describe the technical details

What is currently done? (Provide issue link if applicable)
To address issue #178

What does this pull request change?
This PR patched testbench generator of FPGA-Verilog by removing the signal initialization for unused general-purpose output ports of FPGA fabrics.
Attached an example testbench outputted by OpenFPGA after this patch.
You can see all the signal assignment for SOC_OUT is now removed from generator (as shown in #178)

and2_autocheck_top_tb.zip
Which part of the code base require a change
In general, modification on existing submodules are not acceptable. You should push changes to upstream.

[ ] VPR
[ ] OpenFPGA libraries
[X] FPGA-Verilog
[ ] FPGA-Bitstream
[ ] FPGA-SDC
[ ] FPGA-SPICE
[ ] Flow scripts
[ ] Architecture library
[ ] Cell library

Checklist of the pull request

[X] Require code changes.
[ ] Require new tests to be added
[ ] Require an update on documentation

Impact of the pull request

[ ] Require a change on Quality of Results (QoR)
[ ] Break back-compatibility. If so, please list who may be influenced.

@liaokevin-ql Please checkout out the auto-generated testbenches and see if it addressed your needs

@liaokevin-ql Please checkout out the auto-generated testbenches and see if it addressed your needs


text:
Add automated github actions testing.

Use github actions to run automated tests on each commit.

While we appreciate your help, lobot is currently in the middle of a substantial rewrite and we're not accepting new PRs at this time. I will make sure the readme is updated to reflect this in the next merge.

authors: EmpyrealHell TreyE

repo: lobosjr/lobotjr


text:
Websocket error 400

So, i tried to proxy the request on my local websocket server and tried to connect to localtunnel with a websocket connection and this error occurred: failed: Error during WebSocket handshake: Unexpected response code: 400. I have read the other issues regarding websockets but still i could not understand if localtunnel supports websocket or not. I started local tunnel with
lt --port 8082

I am running into same issue right now. Anyone on this?

for what i saw there is no websocket implementation

I ended up using ngrok...seems to load faster as well.

yes but ngrok doesn't work with websockets, so is useless for this

My website has WebSocket and it is working fine

anyone here who has tried Serveo?

authors: ECorreia45 VivianoRiccardo tomleejumah

repo: localtunnel/localtunnel


text:
changing the travis config to run grunt tasks. Travis will run all tasks listed in TRAVIS task in Gruntfile.

For now, Travis/Grunt run Jasmine and JSHint.
If you like, my next idea is install a SASS Hint and some Regression Test.

I prefer to keep it running with rake, since we are using middleman, so we can use ruby to integrate any other routine, just as we could do for JS and CSS hint, but it is personal.
Otherwise, the most important right now, is to keep all test routines running together, especially on Travis.
And it is, just like: https://travis-ci.org/locaweb/locawebstyle/jobs/52756774
Go for it! :+1:

I admit I'm in doubt about what task runner we use.
Rake and Grunt have all we need, but Grunt is more friendly since this is JS.
I really don't know.

Closing this PR. We will use only rake to run tests.

authors: diegoeis renatocn

repo: locaweb/locawebstyle


text:
Backpage Seized

Backpage.com appears to have been seized as part of an enforcement action by various U.S. government agencies on April 6, 2018.
Although the seizure notice discloses to email 'info@backpage.net' for backpage record certification requests, you may replace this site with an alternative or remove it.

Removed, thanks.

repo: lockfale/OSINT-Framework


text:
Expose number of clients to TaskSet

Expose client_index to TaskSet
Useful in distributed mode, when we need to simulate users identified uniquely.
Otherwise a TaskSet doesn't know its range of ids to generate.
Example: 3 clients share the work of 3000 users.
client 1 will generate ids from 1 to 1000
client 2 will generate ids from 1001 to 2000
client 3 will generate ids from 2001 to 3000.
Otherwise all clients will generate ids from 1 to 1000 since they don't know how many they are.

there is some good stuff in here, but there are also many small unrelated changes.  Those should be moved into separate PRs.  (for example, I wouldn't expect the test runner to change in a PR for exposing the number of clients)

I rebased it to keep only the commit that this pull request intent to bring.

@ticosax You could reopen this and the builds should pass.

This PR passes all travis tests when rebased on current master, is it possible to merge it?

I think it's a god idea to enumerate the slave runners, but I'm not sure we want to expose the whole runner instance to the Locust instances. Maybe we could set the LocustRunner.client_index but instead of injecting the runner instance into each Locust instance, one would have to manually import locust.runners.locust_runner in the test scripts to access it (we could document it as a semi-public/private API)?
I see a lot of potential problems if users starts to treat the runner instance as part of the public API.
Another possibility would be to inject the client_index into each LocustUser, but that will suddenly make them" aware" of how they are being run (which might be okay, but it's a conceptual change of how Locust users work now).

@heyman actually, I have to use various workarounds to ensure that each locust gets a distinct configuration, so making them aware of the setup might not be a bad idea after all
I could surely use a variable for identifying each node and another one for each individual locust (something that can be used as a key for my configuration dicts).

Hi @ticosax ! This PR has been idle for a very long time and has conflicts, so I am closing it. Please feel free to reopen it and resolve the conflicts if you are still interested. There could be workarounds for your use case (for example, setting an environment variable identifying the client at startup)

authors: alexandrul cgoldberg cyberw heyman mbeacom ticosax

repo: locustio/locust


text:
adding find redeemer by ref

Need a function to find a redeemer data by some output reference

adding find.redeemer_by_ref

repo: logicalmechanism/assist


text:
🛑 Potus Remoto is down

In b6886c5, Potus Remoto (https://remoto.potus.ar) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Potus Remoto is back up in b63ec0d after 1 day, 23 hours, 23 minutes.


text:
metadata_max_age_ms setting is broken

Setting that setting causes:
[logstash.inputs.kafka    ] Unable to create Kafka consumer from given configuration {:kafka_error_message=>#<NameError: uninitialized constant Java::OrgApacheKafkaClientsConsumer::ConsumerConfig::METADATA_MAX_AGE_MS_CONFIG>, :cause=>nil}
[2017-08-03T17:31:25,741][ERROR][logstash.pipeline        ] A plugin had an unrecoverable error. Will restart this plugin.

also seen here https://github.com/logstash-plugins/logstash-input-kafka/issues/202#issuecomment-317729812 for users.
It seems the constant name in the Kafka library changed. The has been reported widely, but I couldn't reproduce it outright locally, could be we're having some trouble with the build caching the library jar in some messed up way here.

fixed in #220

@original-brownbear Thanks a lot for fixing this, what would be the ETA for this to make it's way to the release?

@shreyu86 this is already fixed in releases 8.0.1+

my bad for failing to close the issue back then :(

I am using the logstash docker image docker.elastic.co/logstash/logstash:5.6.0 and when I list the plugins I see logstash-input-kafka (5.1.11) am I missing something?

False alarm, I had connectivity issues, was able to upgrade to 8.0.2

@shreyu86 happy to hear that :)

repo: logstash-plugins/logstash-input-kafka


text:
Document format of arrays such as topics in kafka input 5.0

From here I see that the topics are now in an array format.
Does that mean it looks like this?
topics => [ {blah => topic1}, {blah => topic2} ]
Or this?
topics => [ {topic1}, {topic2} ]
Some examples would be helpful
What is the key for the arrays?

Does the topics parameter replace the white_list ?
black_list and white_list parameters are missing in 5.0

authors: Charleezy seuf


text:
Add compatability matrix to 2.x

@suyograo  where I can download the logstash 2.4 version which seems to be compatible with  kafka broker 0.10

Hi @prabhakar349. Although there will be an update to the plugins to enable support for Kafka 0.10 in Logstash 2.4. Logstash 2.4 has not yet been released, so there is no plugin compatible just yet, since there is no logstash 2.4 release just yet.

@talevy I did tried to use logstash 2.3.4 , with the logstash-input-kafka version 2.0.9 with my current kafka 0.10.0.1 and seems its able to read messages from kafka. But after looking at the compatibility matrix I am worried whether I can use it or to find some other alternative to read messages from kafka before 2.4 is available

@prabhakar349 There are a few things going on. The compatibility is backwards between server -> client. That is to say, a kafka broker running on 0.10.x will continue to translate between kafka 0.8.x and 0.9.x protocols I believe. The other way around is not the case. Kafka 0.10 clients cannot communicate with 0.8 and 0.9 brokers.

authors: dedemorton prabhakar349 talevy


text:
feature(attention): Highlight tabs on error

Issue #3

Great, thanks! Here is few things to fix:

sync instanceof BaseSync works not perfect in JS, because of CommonJS isolation. As result, logux-status and user app may use different versions of logux-sync and BaseSync will be different. So, sync = sync.sync ? sync.sync : sync will be OK.
It is always better to use toThrowError with error message regexp. Because it could be a syntax error, or some other error.
In checks sync property as instance of BaseSync test we need to check what sync was really used. You can check sync.emitter.events for your listeners.
In returns unbind function you should check that function really unbind listeners. Just copy title test here.

And I will need your Twitter and VK account for announce

@ai one question for first point: use only sync = sync.sync ? sync.sync : sync and remove check that sync or sync property is an instance of BaseSync, right?

Yeap, remove check. Unfortunately it can be done in node.js in proper way.

@ai up

Great. I will accept it after few hours.
I will need your Twitter and VK account for announce.

twitter
vk

authors: ai andrewmnlv

repo: logux/logux-status


text:
Update sbt-scoverage to 2.0.12

About this PR
📦 Updates org.scoverage:sbt-scoverage from 1.6.1 to 2.0.12 ⚠
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scoverage", artifactId = "sbt-scoverage" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.scoverage", artifactId = "sbt-scoverage" }
}]

labels: sbt-plugin-update, early-semver-major, semver-spec-major, commit-count:1

Superseded by #102.

repo: loicknuchel/TypedAPI


text:
Show Thumbnails of Walls on Main Wall Page

Walls should be shown as thumbnails on the main wall page.

Closing this as this has been implemented.

Where is the thumbnail? Where can we test it?

Anyways, there is more important stuff. So, I am adding this issue to a later milestone.

The idea is that a thumbnail is like a screenshot of the actual wall. I think this feature is not a top priority. We can reopen it in the future, when other more important things are done.


text:
Cache response headers in CorsSettingsImpl

Caching as much as possible headers that are derived solely from the settings should improve performance.
Fixed headers:

Access-Control-Expose-Headers
Access-Control-Allow-Credentials
Access-Control-Allow-Methods
Access-Control-Max-Age

Released in v0.3.1

repo: lomigmegard/akka-http-cors


text:
SyntaxError: 'return' outside function in the Views documentation examples

Here is an example code from the Views:
from lona.view import LonaView
from lona.html import H1
from lona import LonaApp

app = LonaApp(__file__)

@app.route('/')
class MyLonaView(LonaView):
    return H1('Hello World')

app.run()

I tried to run the example with Python 3.8.10, and it gives me a syntax error:
    return H1('Hello World')
    ^
SyntaxError: 'return' outside function

I guess the return must be inside of the handle_request method, like this? At least in this form, it works for me.
from lona.view import LonaView
from lona.html import H1
from lona import LonaApp

app = LonaApp(__file__)

@app.route('/')
class MyLonaView(LonaView):
    def handle_request(self, request):
        return H1('Hello World')

app.run()

There are more returns outside of methods on that page and in Lona Scripts. Possibly in some other places too, but I haven't read all the documentation yet.

@insolor: you are completely right, that needs to be in a handle_request() method. I will fix that later, thaks for reporting :)

@insolor: I have gone through all examples and fixed all issues that i found. Thanks for reporting!

authors: fscherf insolor

repo: lona-web-org/lona


text:
🛑 Posie is down

In 9e070e2, Posie (https://posie.jau.co.jp) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Posie is back up in db6a85f.

repo: longforme/longforme-uptime-monitor


text:
🛑 Northern Light is down

In 8add21d, Northern Light (https://northernlight.jau.co.jp) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Northern Light is back up in 2b6bc3b.


text:
feat(longhornctl): add examples to help menu and doc

Which issue(s) this PR fixes:

Issue longhorn/longhorn#8992
What this PR does / why we need it:
Add examples to the help menu and doc.
Special notes for your reviewer:
None
Additional documentation or context
None

@mergify backport v1.7.x

repo: longhorn/cli


text:
[FEATURE][BACKPORT][v1.1.4] Have UI support to identify non-default instance manager image of each volume in the volume list

#3306

Validation - PASSED
Tested with v1.1.0 to v1.1.x(pre-v1.1.4) images.

More details please refer to https://github.com/longhorn/longhorn/issues/3306#issuecomment-1019857221

repo: longhorn/longhorn


text:
[BUG] Failed to attach "Block device" frontend volume

Describe the bug
I've installed longhorn my local minikube cluster (kubernetes version 1.21) with 5 nodes. I've installed open-iscsi on each node and iscsid is running fine on each node.
The issue is:
Whenever I'm creating a pvc for a pod, it's always using Block device as frontend and that too is not attaching to the pod. It's health is keep failing after every few seconds.
There are no options to use iscsi Frontend from pvc.
Also why Block device is not working?
To Reproduce
Steps to reproduce the behavior:

Go to longhorn ui
Click on "create volume"
Perform use Block device as frontend and attach a volume to any node.
See error unhealthy volume just after trying to attach.

Expected behavior
It should be working with Block device as frontend.
Log or Support bundle
If applicable, add the Longhorn managers' log or support bundle when the issue happens.
You can generate a Support Bundle using the link at the footer of the Longhorn UI.
Environment

Longhorn version: 1.2.3
Installation method: helm
Kubernetes distro: minikube and k3s

Number of management node in the cluster: 1
Number of worker node in the cluster: 4

Node config

OS type and version: ubuntu
CPU per node: 2
Memory per node: 500gGi
Disk type(e.g. SSD/NVMe): HDD
Network bandwidth between the nodes: 20Mbps

Underlying Infrastructure: Baremetal
Number of Longhorn volumes in the cluster: 3

Additional context
Add any other context about the problem here.

Please check the discussion thread https://github.com/longhorn/longhorn/discussions/2702

Thanks for the response. I'll close this issue.

authors: iamatulsingh jenting


text:
Replicas error

replica status is stop ,no rebuilding,pod report error
time="2019-08-06T02:45:12Z" level=error msg="Error in request: Failed to find metadata for volume-snap-c-rdofl3-153e4e48.img"
time="2019-08-06T01:57:36Z" level=info msg="Done running ssync [ssync -port 9780 -daemon volume-snap-c-2fv2en-8101389c.img.meta]"
time="2019-08-06T01:57:36Z" level=info msg="Running ssync [ssync -port 9781 -daemon volume-snap-c-2fv2en-b28845f6.img]"
time="2019-08-06T01:57:36Z" level=info msg="Creating Ssync service"
time="2019-08-06T01:57:37Z" level=info msg="open: receiving fileSize: 858993459200, setting up directIo: true"
time="2019-08-06T01:57:37Z" level=info msg="Ssync server opened and ready"
time="2019-08-06T03:09:28Z" level=info msg="Closing volume"
10.42.4.230 - - [06/Aug/2019:03:09:28 +0000] "POST /v1/replicas/1?action=close HTTP/1.1" 200 808 "" "Go-http-client/1.1"
time="2019-08-06T03:09:34Z" level=info msg="Opening volume /volume, size 858993459200/512"
time="2019-08-06T03:09:34Z" level=error msg="Error in request: Failed to find metadata for volume-snap-c-2fv2en-b28845f6.img"
10.42.4.217 - - [06/Aug/2019:03:09:34 +0000] "POST /v1/replicas/1?action=open HTTP/1.1" 500 209 "" "Go-http-client/1.1"
time="2019-08-06T03:10:06Z" level=info msg="Opening volume /volume, size 858993459200/512"
time="2019-08-06T03:10:06Z" level=error msg="Error in request: Failed to find metadata for volume-snap-c-2fv2en-b28845f6.img"
10.42.4.217 - - [06/Aug/2019:03:10:06 +0000] "POST /v1/replicas/1?action=open HTTP/1.1" 500 209 "" "Go-http-client/1.1"
time="2019-08-06T03:22:03Z" level=info msg="Done running ssync [ssync -port 9718 -daemon volume-snap-c-9omgr9-8dd9b047.img.meta]"
time="2019-08-06T03:22:04Z" level=info msg="Running ssync [ssync -port 9719 -daemon volume-snap-c-9omgr9-86292196.img]"
time="2019-08-06T03:22:04Z" level=info msg="Creating Ssync service"
time="2019-08-06T03:22:04Z" level=info msg="open: receiving fileSize: 858993459200, setting up directIo: true"
time="2019-08-06T03:22:04Z" level=info msg="Ssync server opened and ready"
time="2019-08-06T03:22:11Z" level=info msg="Ssync server exit(0)"
time="2019-08-06T03:22:11Z" level=info msg="Done running ssync [ssync -port 9719 -daemon volume-snap-c-9omgr9-86292196.img]"
time="2019-08-06T03:22:11Z" level=info msg="Running ssync [ssync -port 9720 -daemon volume-snap-c-9omgr9-86292196.img.meta]"
time="2019-08-06T03:22:11Z" level=info msg="Creating Ssync service"
time="2019-08-06T03:22:11Z" level=info msg="open: receiving fileSize: 181, setting up directIo: false"
time="2019-08-06T03:22:11Z" level=info msg="Ssync server opened and ready"
time="2019-08-06T03:22:11Z" level=info msg="Ssync server exit(0)"
longhorn 0.5.0

Mark as duplicate of #413


text:
Add missing webhook RBAC rule for uninstaller

While testing for #2034, noticed some webhook RBAC rules are missing.
https://github.com/longhorn/longhorn-manager/commit/ed4a2c4170849fc9fdfd490ff233e6558bf31757

cc @derekbit

@c3y1huang Thank you. Just found the permission in uninstall manifest is missing.


text:
Implement SyncSnapshot which syncs the content of source snapshot to a file on remote host

longhorn/longhorn#2403
longhorn/longhorn#2534
longhorn/longhorn#1815

Thanks @shuo-wu !
I have implemented the 2nd method

repo: longhorn/sparse-tools


text:
Change "Long Do" preloader

Hi, thanks for your greatest work!
I am wondering to kindly ask how I can change Long Do logo to my own name?

Hi, thanks for checking out this repo.
Changing the name will kinda kill the animation loop.
So, technically to just change the name:

_includes/landing-page.html: Replace the big letters inside the <em> tags to your name.

Now, you either need to fix the animation or remove it completely.

_sass/main.scss relevant subclasses are inside .landing-logo: .planet::before class is for the background of the rotating letter, left and right defines the position of the background, h1::before is the red ring.
try and error around the rem values to match the animation to your name
or just remove/comment out the beforementioned classes

authors: longpdo shirinyamani


text:
Tester

I'm going to add a /test command to batch-test all commands without having to run them every time.
GUT doesn't seem to really do what it's testing. I tried UT commands, and they pass, but I can't see the result and that may be misleading. For example, I ran a test on /scale that passed the test (I use Status to check if it fails), but It wasn't actually working properly. I could only detect the error by evaluating the command from the editor.
So I thought a /test command would be useful. I'll try to automate it in a GDScript function, otherwise I'll manually write it in a def file.
Do you think it's a good idea?

BTW, I just made some fixes (2d47153) to the test_main unit tests, now they don't crash when running, and even better they pass (even if there are orphans...haven't looked at that yet). It was previously crashing when you tried to run a command that expected one argument, but you gave it more than one (callv was returning null ... also, in another place your lambda function needed to return a Status object rather than nothing). You were also relying on a "bla" animation being there, so I changed it to "default", which we both have.

authors: loopier totalgee

repo: loopier/animatron


text:
Support Actor colour modulation (as well as the current addition behaviour)

It would be very useful to be able to use the built-in modulation colour for Sprites. This is more useful than addition (which we currently support) when you have mostly black & white images, or greyscales, because modulation (multiplication) by a colour gives you a shade of that colour.
The current additive behaviour is useful when you have very dark things, or sprites that have pure black in some components (like a pure green or blue sprite...you can multiply it by red all you want by it won't turn red). So both addition and multiplication of colours are useful in different cases, but likely modulation would be more what people would expect.

Resolved by 8bfc873. The /color behaviour is now to modulate, and there is a new command /color/add to...add.

Cool!
Would you mind posting some examples? I'm a bit lost with the multiplying vs. adding you are saying...


text:
Make a byte[] buffer pool

A nice way to reduce memory pressure by using and returning buffers from a pool

This is implemented

repo: loudej/firefly


text:
Push Monitor reporting down when servcice is up in same second.

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

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

🛡 Security Policy

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

Description
Push monitors are reporting down and up in the same second causing copious amounts of false notifications.

👟 Reproduction steps
Start a 60 second push monitor and use push on a network that has slightly variable ping.
👀 Expected behavior
Downtime should not be reported because the push was received.
😓 Actual Behavior
Downtime is reported in the same second that the push is received.
🐻 Uptime-Kuma Version
1.16.1
💻 Operating System and Arch
Debian
🌐 Browser
Firefox 101.0
🐋 Docker Version
20.10.14, build a224086
🟩 NodeJS Version
No response
📝 Relevant log output
No response

Hang on, i got a little diffrent issue.
Im on 1.16.1 too.
My Discord Bot makes a GET request every 60 seconds and tells his ping to the discord servers in the request.
Nothing special, should work, but Uptime Kuma tells the Ping i send with every request but it shows that my Monitor is offline (but i get a ping in every request, so why offline)? I guess this was how the Push monitor works, not Uptime Kuma makes a GET request, the client makes a GET request.

I thought it should be fixed in 1.16.1. Could you please double check it is 1.16.1 in Settings > About? Thanks
Related issue: #1422 Related pull request: #1428 cc: @kaysond

Yes, I can confirm that I am on 1.16.1

Same for me and i have more information.
I debugged a bit and my bot now prints 'PING!' every time a GET request was made.

The second is, Uptime Kuma tells me "Inactive" as the status.

Still i get pings (still not everyone has a ping thats why there is sometimes no strait line to connect all pings) but it wont turn online, before i had the issue with version 1.15.1? but im not sure if it was that exact version.

Now im up to date on 1.16.1 and still have that issue

@Fluqzy Please do not hijack other people's issues. However, I had a similar problem because I had not formatted my get request properly.
If you are not using the optional parameters 'https:///api/push/5wGOmMPbJB?status=up&msg=OK&ping=' then it will report down instead of up. I simply use 'https:///api/push/5wGOmMPbJB' without them since they are not needed.

@kaysond I am using the following as a cronjob */1 * * * * wget "https://<kuma>/api/push/WrZMizR40l" >/dev/null 2>&1
I don't believe that my ping is >1 second because I have a second monitor set up for that server (port) to watch an IMAP service - That reports ~24ms at the highest and an average of 21ms.

I should note that this happens to all of my push monitors. Not just that one.

@kaysond
Okay - Some more testing and research later. This might be primarily a Linode Firewall issue. For bits and giggles I turned off the Linode Firewall and the problem vanished. It seems like it is adding some latency on inbound requests but not outbound.
So I guess my question now is this: Is there a way to adjust that buffer / grace period? If not, would setting the interval in Kuma to 61-62 seconds, but leaving the actual period in the cronjob as 60 seconds work as a grace, and @louislam should I submit a feature request for an editable grace?

So I guess my question now is this: Is there a way to adjust that buffer / grace period? If not, would setting the interval in Kuma to 61-62 seconds, but leaving the actual period in the cronjob as 60 seconds work as a grace, and @louislam should I submit a feature request for an editable grace?

Not at the moment. My original PR to add the buffer was just a bug fix, but I did note that it would be useful for cases like these to be able to adjust it. I think there's a large backlog of feature-add PR's, so it may not get merged any time soon. Your work around is probably the right choice for now.

Sounds good, thank you very much @kaysond
I am going to close this issue as I consider it resolved.

Reopen as similar issue reported on Reddit:
https://www.reddit.com/r/UptimeKuma/comments/va0zzv/tolerance_between_push_events_before_notifying/

@louislam probably need to make the buffer period a user setting. Healthchecks does it this way and calls it "grace time" - https://healthchecks.io/docs/configuring_checks/

Maybe we can change it to be some fraction of the heartbeat interval like we did for axios timeout?

Hello ! I have the same problem #1732 , Heartbeat Interval (Check every 70 seconds), my device get URL every 60 seconds.
My device return to DOWN when it should have remained UP.
I hope you will find the solution ! Your project is great !! ;)

I am thinking maybe:
* Just add a description to tell user that they have to add some buffer to the interval.

* Or increase the buffer from 1s to 10s.

Probably the first one. It should work fine now because the timeout is synchronized to api calls. If you do the second I think people might wonder why it takes so long for a monitor to go down. But if they choose the timeout they will know.

authors: Apashh Fluqzy Subnet-Masked chakflying kaysond louislam

repo: louislam/uptime-kuma


text:
How can I figure out the monitorID

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

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

🛡 Security Policy

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

📝 Describe your problem
As featured in PR#1119, uptime badge became available.
However, I'm not sure how I can figure out the monitorID for an ongoing monitoring.
📝 Error Message(s) or Log
No response
🐻 Uptime-Kuma Version
1.23.0
💻 Operating System and Arch
Ubuntu 22.04
🌐 Browser
Google Chorme 115.0.5790.170
🐋 Docker Version
20.10.24
🟩 NodeJS Version
No response

The id you are searching for is this one:

Note that there also is a badge-generator hidden here on the status page:

Thank you for the answer


text:
Wireguard endpoint availability testing

⚠ Please verify that this feature request has NOT been suggested before.

[X] I checked and didn't find similar feature request

🏷 Feature Request Type
New Monitor
🔖 Feature description
Since https://www.wireguard.com is part of the linux kernel it is widely adopted and will probably grow in the future.
This feature would allow to add a monitor for a Wireguard endpoint, determining if Uptime Kuma is able to receive a UDP package from a publicly reachable Wireguard endpoint.
✔ Solution
I am no UDP or Wireguard expert, but I assume one could send a UDP package to an endpoint to provoke a reaction which could be tested.
❓ Alternatives
No response
📝 Additional Context
No response

@flowli The wireguard protocol is designed to be silent and invisible unless proper authentication has been performed during the client handshake. Refer to https://www.wireguard.com/protocol/ for more technical details. UDP is also a connectionless protocol designed for time sensitive communications meaning it does not perform handshakes like TCP does and thus would not reply to the UDP traffic that initiated communication. If you'd like to monitor a wireguard endpoint I recommend establishing a wireguard connection on the host machine and setting the VPN peer's wireguard interface (often wg0) IP address in the hostname field on a ping monitor. This will send ICMP traffic within the tunnel and solicit a response from the endpoint that can be monitored in Uptime Kuma. Do note that if running Uptime Kuma in a container, you may need to make modifications to your firewall rules to allow the traffic to pass from the container through the wireguard interface.

@RedPine404 Thank you for the clear and exhaustive response :)

Thank you for the clear and exhaustive response :)


text:
releases中没有1.8的版本

我在Centos7上使用
php7.2
swoole4.3.2 发现cpu占用率在10%，查看文档说升级到1.8的版本，目前看到单PHAR只有1.7的版本

https://github.com/louislivi/SMProxy/pull/47/commits/ac2d6362bf1281ebbf7c57b993fe345d4d488ae2
试试这个能不能修复你的问题

我遇见的这个问题不是mysql回收时候造成的，而是运行后就基本保持在4颗CPU占用率都是10%上

最新版本已解决

authors: jianghua louislivi nsnake

repo: louislivi/SMProxy


text:
请问柯林斯本地词典从哪下载？是sqlite格式吗？

请问柯林斯本地词典从哪下载？是sqlite格式吗？谢谢:-)

每个单词都是爬有道词典网页的，并没有柯林斯本地词典。只不过可以把单词及含义加到本地数据库里，有这个力气可以自己爬大量的单词存入。

什么时候支持语句呀

authors: lfade littlethunder louisun

repo: louisun/iSearch


text:
Build error since version 0.8

I just upgraded from 0.7.2 to 0.8.0 and npm install aborted with the following error:
../src/common.cc: In function ‘VipsImage* sharp::InitImage(sharp::ImageType, void*, size_t, VipsAccess)’:
../src/common.cc:77:74: error: ‘vips_tiffload_buffer’ was not declared in this scope
       vips_tiffload_buffer(buffer, length, &image, "access", access, NULL);

0.7.2 installs without a problem.
uname -a
Linux localhost 3.17.3-1-ARCH #1 SMP PREEMPT Fri Nov 14 23:13:48 CET 2014 x86_64 GNU/Linux
node -v
v0.10.33
node-gyp -v
v1.0.2

Hi @lovell, thanks for your patience!
I was indeed able to install sharp 0.9.1 after installing vips 7.40.11 from AUR.

Great, glad to hear you got it working.

authors: jo lovell

repo: lovell/sharp


text:
Resize webp image from buffer

Hi,
I have webp image from a buffer data and wants to resize using this code below:
sharp(data.Body)
.resize(myObjKey.width, myObjKey.height)
webp({ quality : appConfig.IMAGES_SETTINGS.QUALITY })
.toBuffer()
.then(data => {
console.log(buffer data);
})
resizer function is successfully executed but when I see the image it crops the the original image according to the provided width and height instead of resizing it.
Is it the original behavior ?

Hello, as http://sharp.pixelplumbing.com/en/stable/api-resize/#resize says, by default it will resize and crop.

"By default, the resized image is centre cropped to the exact size specified."

Perhaps you are looking for the http://sharp.pixelplumbing.com/en/stable/api-resize/#max option?

Is there any way to resize only?
I tried all the options and provide it with .max() but it always crop the image.

Please can you provide a sample image, standalone code snippet and expected vs actual output.

This could mantain the aspect ratio:
sharp(data.Body)
  .resize(myObjKey.width, myObjKey.height)
  .max()
  .webp({ quality : appConfig.IMAGES_SETTINGS.QUALITY })
  .toBuffer()
  .then(data => {
    console.log(buffer data);
  });

Hope this helped, please re-open with more details if not.

authors: a-cabinti lovell rodrigoalviani


text:
Text Problem when converting SVG to PNG on AWS Lambda

What is the output of running npx envinfo --binaries --languages --system --utilities?
My code is running on AWS Lambda Node 10, so I can not invoke this command.
What are the steps to reproduce?
On AWS Lambda I run the following function :
...
exports.handler = async function(event) {
  const result = await sharp("/tmp/ImageTemplateBis.svg").png().toBuffer();
  return {
    statusCode: 200,
    headers: {
      'Content-Type': 'image/png'
    },
    body: result.toString('base64'),
    isBase64Encoded: true
  }

It works. The following image is returned. But the text rendering fails (I get rectangles instead of letters)

What is the expected behaviour?
Running this code locally (on Mac) and storing it to a file results in the following png with pretty letters :

I attached the svg in case this helps.
ImageTemplateBis.svg.zip
Thank you!

The salient part of the attached SVG file is:
            @font-face {
                font-family: Merriweather;
                src: './fonts/Merriweather-Bold.ttf'';
            },
            @font-face {
                font-family: Source Sans Pro;
                src: './fonts/SourceSansPro-Regular.ttf'';
            }

You'll need to ensure fontconfig can find these two fonts in the Lambda environment - see #1565 for a previous example of a similar question.

I just deployed your sample with font files and can see proper render result.

I had not to set any special configurations (e.g. fontconfig related environment setup) to render these results.
To @lovell : I can confirm this is not sharp's issue, nor AWS Lambda's environment issue. You can close this issue ;)

@mooyoul what OS and sharp version are you running?

I got rid of all font customisation by replacing all font-families in the svg by sans-serif.
Then I ran the above on lambda using sharp 0.23.0. Still get the same result.
Putting FC_DEBUG=1 I get, Fontconfig error: Cannot load default config file.
So I assume the problem has not to do with sharp, and we can indeed close this issue.
Would appreciate anything that sends me in the right direction though. AWS & FontConfig or rather librsvg?

I'm using macOS Mojave 10.14.6, Node.js v8.14.0, NPM v6.11.3, Serverless v1.43.0 as default development environment.
I installed sharp with env npm_config_arch=x64 npm_config_platform=linux npm_config_target=8.10.0 npm i sharp@latest. and bundled font files to deployment package.
Here is provable project: https://test-mooyoul.s3-accelerate.amazonaws.com/public/sharp-issue-1875.zip
and full screen cast: https://asciinema.org/a/GnVxF3eVZiffcURn6Iul5ZZli
I never configured any fontconfig related environment variable.

BTW, If your svg input location is /tmp/ImageTemplateBis.svg, font files should be located in /tmp/fonts (e.g. /tmp/fonts/SourceSansPro-Regular.ttf  for Source Hans Pro)

@droegier The FONTCONFIG_PATH environment variable can be used to provide fontconfig with an alternative location for its config file - see https://www.freedesktop.org/software/fontconfig/fontconfig-user.html#AEN266

I hope this information helped. Please feel free to re-open with more details if further help is required.

@font-face {
        font-family: "Intervar";
        src: url("data:font/woff2;base64,d09GM...") format("woff2");
        font-weight: 600;
        font-style: normal;
      }

What about when you want to go the base64 route?

THANKS!  Figured it out!  Going to add my input here on how I got this to work incase anyone else is having trouble rendering fonts in AWS Lambda like this ticket describes.  Also thanks to @lovell for being super responsive to all of the tickets and keeping up with the project.
Since the aws lambda environment doesn't seem like it has fonts, you have to download them, package them up with your project and reference the path to them (so sharp can get to them) with the FONTCONFIG_PATH env set to where the fonts will be.
So need to create a font.conf file that has this XML in it, in the same folder where you store the fonts.  I stored mine in a folder called fonts
`

/var/task/fonts/
/tmp/fonts-cache/

`
Then in your function set the font path to this:
process.env.FONTCONFIG_PATH='/var/task/fonts'
the var/task/ path is where your lambda function lives on the aws lambda container. So you just need to create a folder in you project called fonts and put this font.conf file in it along with a font file.  And boom, you've got fonts with your shiney new PNG image.
Note: that the font file has to be a .ttf font file type like Roboto-Regular.ttf from google fonts.

@MattGohr First of all THANK YOU!!!!!!!!!!!
Second, its fonts.conf not font.conf.  Can you please update your post. Thanks.

Hi All, Took me a while to figure this out, so I thought I'd add a couple of notes that might be helpful for others following along here to get this working on AWS lambda with serverless.
I'm using serverless with the serverless-plugin-typescript and needed to add the following to my serverless.yaml script to actually package and deploy the fonts folder and set the environment variable FONTCONFIG_PATH.
serverless.yaml (extract)
plugins:
  - serverless-plugin-typescript
package:
  patterns:
    - 'fonts/**'
environment:
    FONTCONFIG_PATH: /var/task/fonts

As mentioned above, I put the file fonts.conf in a sub folder called fonts (along with all the ttf fonts)
/fonts/fonts.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <dir>/var/task/fonts/</dir>
  <cachedir>/tmp/fonts-cache/</cachedir>
  <config></config>
</fontconfig>

To be super clear with the folder structure.
package.json
/fonts
-> /fonts.conf
-> /Aldrich-Regular.ttf  <== The font-family is Aldrich
-> /Audiowide-Regular.ttf <== The font-family is Audiowide

As for the SVG, I did not need to add any of the font-face stuff I saw in some other examples. I am generating SVG dynamically similar to this:
const positionY = 100
const positionX = 100
const layer3Buffer = Buffer.from(`<svg xmlns="http://www.w3.org/2000/svg" width="1080" height="1350">
        <text x="${positionX}" y="${positionY}" font-size="50" font-family="Aldrich">ABC</text>
    </svg>`)
const buffer = await sharp(svgBuffer).png().toBuffer() // buffer can be passed to S3 putObject.

Hope this helps.
References:

https://www.serverless.com/framework/docs/providers/aws/guide/packaging
https://stackoverflow.com/questions/46486261/include-custom-fonts-in-aws-lambda
https://github.com/serverless/serverless-plugin-typescript#readme
https://www.serverless.com/framework/docs/providers/aws/guide/variables
https://fonts.google.com/specimen/Aldrich
https://fonts.google.com/specimen/Audiowide
https://stackoverflow.com/questions/16788330/how-do-i-get-the-font-name-from-an-otf-or-ttf-file

brandonros

I tried with a base64 encoded data url but had no luck with that. Only after I installed the font locally did it work. Fortunately I did not need to remove the @font-face declaration so it still gets used in supporting environments (I use the same SVG file in various places) and Sharp simply ignores it.
That is on Ubuntu 20 with librsvg 2.48.9
Cheers

authors: MattGohr brandonros corybill droegier gkostov hutch120 lovell mooyoul


text:
Excessive memory usage, extremely slow

Are you using the latest version? Is the version currently in use as reported by npm ls sharp the same as the latest version as reported by npm view sharp dist-tags.latest?

Yes (0.29.3).

What are the steps to reproduce?

Resize image atlas by individually resizing each sub-image.

What is the observed behavior?

After about 5 minutes only 10 of the 50 or so images had been converted. Script had to be terminated as it ate through 16 gigs of ram making my system very unhappy.

What is the expected behavior?

Folder containing neatly resized images within some reasonable time frame.

Are you able to provide a minimal, standalone code sample, without other dependencies, that demonstrates this problem?

const input_image = await sharp(input_filename);
const metadata = await input_image.metadata();
const horizontal_tiles = metadata.width / 16;
const vertical_tiles = metadata.height / 16;
const output_image = await sharp({create: {
	width: horizontal_tiles * 24,
	height: vertical_tiles * 24,
	channels: metadata.channels,
	background: metadata.background || { r: 0, g: 0, b: 0, alpha: 0 },
}});
const tiles = [];
for (let tx = 0; tx < horizontal_tiles; tx++) {
	for (let ty = 0; ty < vertical_tiles; ty++) {
		const tile = input_image.clone().extract({
			left: tx * 16,
			top: ty * 16,
			width: 16,
			height: 16,
		});
		tile.resize({ width: 24, height: 24 });
		tiles.push({
			input: await tile.toBuffer(),
			left: tx * 24,
			top: ty * 24,
			gravity: "northwest",
		});
	}
}
output_image.composite(tiles);
await output_image.toFile(output_filename);

Are you able to provide a sample image that helps explain the problem?

No, but the issue is reproducible with any image.

What is the output of running npx envinfo --binaries --system?

I'm not sure this is relevant.

Other information

The images in question had maximum input dimensions of 512x512, 24-bit color depth with some having alpha channels. The output image would be 50% larger with the same color depth and alpha channel. Doing the math, no more than (input dimensions + output dimensions) x bytes per pixel x image count = (512 x 512 + 768 x 768) x 4 x 50 = 170 megs of memory should have been used yet somehow this library is using several orders of magnitude more. I suspect that extract isn't very smart and ends up loading the same source image a thousand times over and composite is calling getpixel / setpixel like its 1985.
It could be that I'm using this "High Performance" library wrong so I'm open to suggestions. Meanwhile, I'll remove the dependency and write my own image conversion routines. There's no way that something this trivial takes that long and consumes that much memory.

Was able to perform the same operation on all 50 images in just a few seconds, ~100 megs of ram and fewer lines using the canvas library:
const input_image = await canvas.loadImage(input_filename);
const horizontal_tiles = input_image.width / 16;
const vertical_tiles = input_image.height / 16;
const output_image = canvas.createCanvas(horizontal_tiles * 24, vertical_tiles * 24);
const ctx = output_image.getContext("2d");
for (let tx = 0; tx < horizontal_tiles; tx++) {
	for (let ty = 0; ty < vertical_tiles; ty++) {
		ctx.drawImage(input_image, tx * 16, ty * 16, 16, 16, tx * 24, ty * 24, 24, 24);
	}
}
await write_file(output_filename, output_image.toBuffer("image/png"));

Again, if I was using the sharp library the wrong way I would love to know what I did wrong.

This scenario looks like the sort of thing that #1580 will provide a dedicated API for.

I hope this information helped. Please subscribe to #1580 for updates.

authors: lovell xtremeqg


text:
Fix failing test

Quick PR to fix a failing test case from https://github.com/lovoo/gcloud-opentracing/pull/2.

Thanks for the PR :+1:

authors: Taik edganiukov

repo: lovoo/gcloud-opentracing


text:
[dv] Ibex V2S Actions

[ ] Follow up on whether existing testing on OT side is sufficient to cover bus integrity errors for TL host. Ibex testbench covers ECC on data but integrity on control signals may be uncovered - @GregAC
[ ] lowRISC/ibex#1911
[ ] lowRISC/ibex#1912
[ ] Setup Ibex sec_cm FPV flow in OT - @GregAC PR incoming shortly
[ ] lowRISC/opentitan#16118
[ ] lowRISC/opentitan#16117
[ ] Cross check coverage plan against testplan - @GregAC
[ ] Write up V2S checklist and sec_cm to test mapping in Ibex documentation - @GregAC

I've made issues for everything that represents new engineering tasks, the rest are just following up/reviewing so didn't bother with separate issues.

For the first item above: https://github.com/lowRISC/opentitan/pull/16107 updates the chip_sw_data_integrity test so that it also injects faults into instructions of a test program residing in the SRAM, on top of data words in SRAM. This does not explicitly cover command integrity errors on the TL-UL bus, but it may be enough to cover the alert-specific glue logic in the rv_core_ibex wrapper, since AFAIK the behavior of the TL-UL host adapter (including data+cmd integrity) is checked in other tests such as the rv_dm block level tl_intg_err tests.
If we agree that is sufficient, we can link chip_sw_data_integrity to the first item and mark it as done once the PR is merged.
CC @weicaiyang @matutem @sriyerg

authors: GregAC msfschaffner

repo: lowRISC/ibex


text:
[test-triage] chip_sw_aes_sideload

Hierarchy of regression failure
Chip Level
Failure Description
UVM_ERROR @ 5286.263870 us: (sw_logger_if.sv:521) [aes_sideload_test_prog_sim_dv(w/device/lib/testing/keymgr_testutils.c:112)] CHECK-fail: Unexpected status: 3
  UVM_INFO @ 5286.263870 us: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]
  --- UVM Report catcher Summary ---

New issue - only observed since 17 August. All runs before passing
Steps to Reproduce
Observed only since 17 August
cab5ffb90
Build seed 3773991536, VCS
Tests with similar or related failures

[ ] chip_sw_keymgr_sideload_aes

I have tried to find the root cause for this issue.
After running this function, KEYMGR.OP_STATUS becomes "0x3 - DONE_ERROR" and lsb bit of the KEYMGR.ERR_CODE is set meaning "Invalid operation issued to key manager, synchronous error".
Maybe error is due to this line of code. Need to check specification.
Any idea?

that is very peculiar. Let me have a look as well.
the error suggests we issued a transaction that keymgr does not support, given the state the module is in.
But it's pretty strange it's suddenly happening since this stuff is pretty static.

just a note to issue filing, it would be good to indicate both the build seed and the run seed.
Most of the time, the run seed is probably more important.

unassigned since this is not currently being triaged.

assigning to @tjaychen for triage.

this issue appears to have been resolved and working in the latest nightly.
I will resolve this for now and re-open later if needed.

i ran a quick local regression of 50 seeds and also could not reproduce the issue.

authors: abdullahvarici johngt tjaychen

repo: lowRISC/opentitan


text:
[test, dv] chip_sw_pwrmgr_smoketest fails in DV

chip_sw_pwrmgr_smoketest fails in DV after the changes in #14243 with the following error:
* `UVM_ERROR @ * us: (prim_reg_cdc_arb.sv:241) [ASSERT FAILED] ReqTimeout_A` has 1 failures:
    * Test chip_sw_pwrmgr_smoketest has 1 failures.
        * 0.chip_sw_pwrmgr_smoketest.1\
          Line 297, in log /azp/agent/_work/1/s/scratch/HEAD/chip_earlgrey_asic-sim-vcs/0.chip_sw_pwrmgr_smoketest/latest/run.log

                UVM_ERROR @ 5563.306912 us: (prim_reg_cdc_arb.sv:241) [ASSERT FAILED] ReqTimeout_A
                UVM_INFO @ 5563.306912 us: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]

log
cc @dmcardle @timothytrippel

Should this failure block the merge of #14243?

Should this failure block the merge of #14243?

I dont think its related to this PR  - this failure is popping up on other tests in the nightly. The triage for the failure is ongoing - the symptom is understood - we are figuring out what is the best way to address it (it will most likely be an RTL fix).

I am testing a fix for the CI version of this failure - will push a PR out soon.

authors: alphan dmcardle sriyerg


text:
[flash_ctrl] flash filesystem support

To support a general flash file system, the flash must be able to support the following behavior:
Assume ECC on a region is enabled

The region can be written from an erased value (all 1's) to the desired value (for example 0xFFFF_FFFF_FFFF_FFFF -> 0xAB)
The region can be written, without an erase, from the desired value to all 0's (for example 0xAB -> 0x0).

This test can be done at either block level or chip level, but block level would be faster.

@jdonjdon once you've reviewed the latest file system assumptions, can you close this if you think we are all good?

Closed with #15214

authors: jdonjdon tjaychen


text:
[otbn] Add support for pseudo-instructions in the assembler

To do so, we should add some more instructions into insns.yml. These don't get an encoding but instead have a rule for generating a sequence of real instructions.
Currently on the list:

[x] nop
[x] li: This can be expressed as LUI; ADDI, but is a bit difficult because ADDI takes a signed immediate. So "constant materialisation" needs to get there by subtraction in some cases. Not sure how to do that in the YAML: maybe we have a "there's some Python code for this!" escape hatch?
[x] ret
[ ] loop / endloop

ret would be helpful for JALR x0, x1, 0
Another one that would be really helpful (but probably is not that straight forward) is an endloop statement. Otherwise the loop instruction has to be adjusted every time an instruction is added or removed to the loop body. Forgetting this (or making errors when counting instructions) creates nasty errors. In the dcrypto assembly this is achieved by using parenthesis. Personally, I would like endloop or similar better, but this is matter of taste I guess.

I agree about ret.
For "endloop", I was wondering about doing it with a pseudo instruction like this:
   loopi_until 10, end_of_loop
   addi       x1, x2, x3
end_of_loop:

The idea being that we could emit an instruction count of the form (end_of_loop - .) >> 2. I'm not sure whether the binutils assembler can sort out that sort of immediate, though: probably need to try it out.

Yes, your proposal is even better. This is much better readable with nested loops then.

Updated to tick off the operations that are done. Still to do: a handy syntax for loop/loopi.

Note to self, after spending a while trying to do the loop/loopi version: It's not as easy as you might hope. The problem is that neither loop nor loopi fits into an existing RISC-V encoding, so we can't emit either with an .insn line. As such, we have to assemble all the way on our own... which means we need to know the position of the target.
This isn't massively difficult, but it will force us to run otbn-as in two passes. The first parses the syntax of the file and spots all the labels. The second walks the resulting "AST" and sorts out the instructions. No biggie, but maybe a day's work.

authors: felixmiller rswarbrick


text:
[sw,tests] Verify that the data within the retention SRAM survives low power entry-exit

For test: chip_sw_sleep_sram_ret_contents.
This test writes data to the retention SRAM and then enters low power mode. Upon wake
from low power the data is read back and checked against the original data written.
Signed-off-by: Dave Williams dave.williams@ensilica.com

Thanks @rswarbrick, @timothytrippel, changes made.


text:
[gpio] GPIO to D3 for v1.1

This commit moves GPIO HWIP to D3 for version 1.1

@alphan could you take a look as well? See also the associated review doc.

authors: eunchan msfschaffner


text:
[dependabot] add dependabot config file

This adds a dependabot config file to trigger automatic updates to Python packages in response to #14941. This fixes #14956.
Signed-off-by: Timothy Trippel ttrippel@google.com

As noted here, this will require updates to the repo configs to:

activate this
maybe assign a reviewer team for PRs generated by this?

@mundaym we can discuss in person next week.

@timothytrippel I merged the PR that pins the package versions, you can rebase this one.

@timothytrippel please let us know if we must wait for the repo settings to be updated before merging this. Thanks!

@timothytrippel please let us know if we must wait for the repo settings to be updated before merging this. Thanks!

We should wait until updating the repo settings b/c I will change the "reviewers" field to something other than myself hehe.

Reviewer team has been created by @mundaym and the dependabot config file has been updated to use this. Ready to merge when this passes CI.

authors: alphan timothytrippel


text:
[opentitantool] Support multi-layer alias conf

We have an agreed way of connecting HyperDebug to CW310, which should be declared in a JSON conf file, such that opentitan tool understands a name such as A3 to be an alias of the HyperDebug native pin CN7_18.
Separately, the ChromeOS team has a particular idea of how to use the OpenTitan chip pins, and wishes to use the name AP_FLASH_SEL as an alias for A3.  This is mostly independent of CW310 and HyperDebug, and would apply even to future ASIC development board.
Because of the above, I foresee that we would want to simultaneously provide a CW310/HyperDebug configuration file, and a CromeOS/EarlGrey configuration file to OpenTitan tool.
This PR allows the --conf option to take multiple arguments, and it adapts the alias resolution logic to be transitive.
A semi-major inconvenience is the fact that StructOpt allows two way of specifying Vec as command line options, either
ott --conf A.json --conf B.json

or
ott --conf A.json B.json

The latter causes an ambiguity, if you write:
ott --conf A.json console

in that the flags parse believes that console is the name of a second configuration file.
A workaround is to "terminate" the list by another option, e.g.:
ott --conf A.json --interface hyperdebug console

As-is, this PR runs the risk of breaking existing scripts, if they specify --interface before --conf, I do not like that.  I have not been able to find a way of telling StructOpt to require repeating --conf in front of each configuration file name.  I think that would be the ideal way, if it is possible.
Change-Id: I6f8a328f269dfee246a19c4d3bae9fd60f056aec

I think this PR is ready to merge, the CW305 bitstream error cannot possibly have been affected by this change.


text:
[rom_ext] Communicate minimum security version in the boot_log

Add min_sec_ver fields to the boot_log structure.
Initialize the minimum security versions to the values contained in the boot_data structure.

We will be able to use the ROM_EXT version number to determine which new fields are populated in the future (it isn't really a big deal now, but wondering how we add fields in the future).

I will be incrementing the ROM_EXT version to 0.2 for the next release.  However, I consider the structure of the boot_log and boot_svc messages to be part of the silicon_creator retention RAM, and thus, are identified by the ret_ram version (which, I think is currently RR04).

What does ROM_EXT set the reserved field to (or is it left uninitialized)?

The reserved fields of the boot_log are explicitly initialized to zero.
While we're in development mode, I don't really want to be incrementing the retram version for trivial non-breaking changes, so I'm inclined to leave it at RR04 until we make a more major change to the structure of retram.

I will be incrementing the ROM_EXT version to 0.2 for the next release. However, I consider the structure of the boot_log and boot_svc messages to be part of the silicon_creator retention RAM, and thus, are identified by the ret_ram version (which, I think is currently RR04).

That sounds good to me. Where am I able to look up the ret_ram version?

While we're in development mode, I don't really want to be incrementing the retram version for trivial non-breaking changes, so I'm inclined to leave it at RR04 until we make a more major change to the structure of retram.

Agreed. I just wanted to see what the plan was long-term :)

That sounds good to me. Where am I able to look up the ret_ram version?

It should be the first word of the ret_ram region (0x4060_0000).

My bad, I was thinking about old code. Thanks!

authors: cfrantz jettr


text:
[dv,flash_ctrl] Fix many DV failures

This PR has a number of commits:

Fix tracking of injected errors
Align legacy and otf rand_op constraints
Fix tracking of addresses written
Handle data errors in host reads
Adjust number of transactions in some tests

With these fixes the flash_ctrl regression has much fewer errors left.
I intend to close the umbrella issue #22879, and open issues for more specific failures.
Fixes #22879

@vogelpi The first 3 commits are the most extensive, and the other three will seem trivial. The 4th commit is interesting, and I asked @rswarbrick for feedback.

The one CI failure is totally unrelated. Merging.


text:
[prim_lfsr] Factor out into a separate core file

The LFSR primitive is curently contained in the "catch all"
"lowrisc:prim:all" core file; factor it out into a separate core file.
This helps Ibex to only depend on the LFSR, not on the other primitives,
which it doesn't need.

This allows us to resolve the TODO at https://github.com/lowRISC/ibex/blob/bf5dd7ec15df4a869e827e78f9e038db7a727afc/ibex_core.core#L12-L13


text:
[doc] Clarify (UN)LOCKED_OWNERSHIP states

The use of OWNED and UNOWNED was confusing and I'd like to discuss
ownership transfer and similar flows with LOCKED_OWNERSHIP and
UNLOCKED_OWNERSHIP. This will distinguish it from UNLOCKED_ROM states
but will also clarify that there can be a Silicon Owner when the device
is in an "UNOWNED"->"OWNERSHIP_UNLOCKED" state.
Added a URL that should be sufficient to request access to the source
files for the svgs I edited to facilitate future edits.
Signed-off-by: Drew Macrae drewmacrae@google.com

I'm having a permissions issue here and can't assign this to other reviewers.

Don't worry, just mention other people that you think should see it in a comment ("@rswarbrick: Please look at this!") and they'll see the PR.

I'm having a permissions issue here and can't assign this to other reviewers.

Hi Drew - you should now have an invite to the OpenTitan GitHub team. If you accept this, you'll be able to assign reviewers.

Thanks! @drewmacrae. GitHub now shows "new changes"! Once you are ready to submit, can you squash the commits and post a message so that one of the committers can rebase and merge?

I squashed in a fix to the typo mentioned in the comments, and this should be ready to merge.

authors: asb drewmacrae moidx rswarbrick