Training with PyTorch is significantly slower than with PaddleOCR

I have noticed that the training speed of our model using PyTorch is significantly slower compared to PaddleOCR. Here are some specific examples using the SVTR model under different settings:
Without AMP (Automatic Mixed Precision):
PaddleOCR: 310 samples/s
PyTorch: 250 samples/s
With AMP enabled:
PaddleOCR: 490 samples/s
PyTorch: 150 samples/s
Is there any known reason for such a discrepancy in training speeds? Are there any optimizations or configurations that we might be missing in our PyTorch setup to achieve similar or better performance than PaddleOCR?

Please post the config file here and we will try to reproduce the issue.

thanks！
OpenOCR:
Global:
  device: gpu
  epoch_num: 200
  log_smooth_window: 20
  print_batch_step: 10
  output_dir: ./output/rec
  eval_epoch_step: [0, 1]
  eval_batch_step: [0, 5000]
  cal_metric_during_train: True
  pretrained_model:
  checkpoints:
  use_tensorboard: true
  infer_img:
  # for data or label process
  character_dict_path: &character_dict_path ./dicts/hwzh.dict
  max_text_length: &max_text_length 80
  use_space_char: &use_space_char False #
  save_res_path:
  use_amp: false
  distributed: true

Optimizer:
  name: AdamW
  lr: 0.0005
  weight_decay: 0.05
  filter_bias_and_bn: True

LRScheduler:
  name: CosineAnnealingLR
  warmup_epoch: 2

Architecture:
  model_type: rec
  algorithm: SVTR
  Transform:
  Encoder:
    name: SVTRNet
    img_size: [48, 320]
    out_char_num: 80 # W//4 or W//8 or W/12
    out_channels: 512
    patch_merging: Conv
    embed_dim: [192, 256, 512]
    depth: [6, 6, 9]
    num_heads: [6, 8, 16]
    mixer: ['Conv','Conv','Conv','Conv','Conv','Conv','Conv','Conv','Conv','Global','Global','Global','Global','Global','Global','Global','Global','Global','Global','Global','Global']
    local_mixer: [[5, 5], [5, 5], [5, 5]]
    last_stage: True
    prenorm: True
  Decoder:
    name: CTCDecoder

Loss:
  name: CTCLoss
  zero_infinity: True

PostProcess:
  name: CTCLabelDecode
  character_dict_path: *character_dict_path
  use_space_char: *use_space_char

Metric:
  name: RecMetric
  main_indicator: acc
  ignore_space: *ignore_space

Train:
  dataset:
    name: SimpleDataSet
    data_dir: .
    label_file_list:
    - ./xxx.txt
    transforms:
      - DecodeImage: # load image
          img_mode: BGR
          channel_first: False
      # - SVTRRecAug:
      #     aug_type: 0 # or 1
      - CTCLabelEncode: # Class handling label
          character_dict_path: *character_dict_path
          use_space_char: *use_space_char
          max_text_length: *max_text_length
      - SVTRResize:
          image_shape: [3, 48, 320]
          padding: True
      - KeepKeys:
          keep_keys: ['image', 'label', 'length'] # dataloader will return list in this order
  loader:
    shuffle: True
    batch_size_per_card: 128
    drop_last: True
    num_workers: 8

Eval:
  dataset:
    name: SimpleDataSet
    data_dir: .
    label_file_list:
    - ./xxx.txt
    transforms:
      - DecodeImage: # load image
          img_mode: BGR
          channel_first: False
      - CTCLabelEncode: # Class handling label
          character_dict_path: *character_dict_path
          use_space_char: *use_space_char
          max_text_length: *max_text_length
      - SVTRResize:
          image_shape: [3, 48, 320]
          padding: True
      - KeepKeys:
          keep_keys: ['image', 'label', 'length'] # dataloader will return list in this order
  loader:
    shuffle: False
    drop_last: False
    batch_size_per_card: 128
    num_workers: 8

Paddle:
Global:
  debug: false
  use_gpu: true
  epoch_num: 200
  log_smooth_window: 20
  print_batch_step: 10
  save_model_dir: ./output/paddle_test
  save_epoch_step: 50
  # evaluation is run every 2000 iterations after the 0th iteration
  eval_batch_step: [0, 1000]
  cal_metric_during_train: true
  pretrained_model:
  checkpoints:
  save_inference_dir:
  use_tensorboard: true
  infer_img:
  character_dict_path: dicts/hwzh.dict
  max_text_length: &max_text_length 80
  infer_mode: false
  use_space_char: false
  ignore_space: true
  distributed: true
  save_res_path: ./output/paddle_test

Optimizer:
  name: AdamW
  beta1: 0.9
  beta2: 0.99
  epsilon: 1.0e-08
  weight_decay: 0.05
  no_weight_decay_name: norm pos_embed char_node_embed pos_node_embed char_pos_embed vis_pos_embed
  one_dim_param_no_weight_decay: true
  lr:
    name: Cosine
    learning_rate: 0.0005 # 8gpus 64bs
    warmup_epoch: 5

Architecture:
  model_type: rec
  algorithm: SVTR_LCNet
  Transform: null
  Backbone:
    name: SVTRNet
    img_size:
    - 48
    - 320
    out_char_num: 80
    out_channels: 512
    patch_merging: Conv
    embed_dim: [192, 256, 512]
    depth: [6, 6, 9]
    num_heads: [6, 8, 16]
    mixer: ['Conv','Conv','Conv','Conv','Conv','Conv','Conv','Conv','Conv','Global','Global','Global','Global','Global','Global','Global','Global','Global','Global','Global','Global']
    local_mixer: [[5, 5], [5, 5], [5, 5]]
    last_stage: True
    prenorm: True
  Neck:
    name: SequenceEncoder
    encoder_type: reshape
  Head:
    name: CTCHead

Loss:
  name: CTCLoss

PostProcess:
  name: CTCLabelDecode

Metric:
  name: RecMetric
  main_indicator: acc
  ignore_space: true

Train:
  dataset:
    name: SimpleDataSet
    data_dir: .
    label_file_list:
    - ./xxx.txt
    transforms:
    - DecodeImage:
        img_mode: BGR
        channel_first: false
    - CTCLabelEncode:
    - RecResizeImg:
        image_shape: [3, 48, 320]
    - KeepKeys:
        keep_keys:
        - image
        - label
        - length
  loader:
    shuffle: true
    batch_size_per_card: 128
    drop_last: true
    num_workers: 8
Eval:
  dataset:
    name: SimpleDataSet
    data_dir: .
    label_file_list:
    - ./xxx.txt
    transforms:
    - DecodeImage:
        img_mode: BGR
        channel_first: false
    - CTCLabelEncode:
    - SVTRRecResizeImg:
        image_shape: [3, 48, 320]
    - KeepKeys:
        keep_keys:
        - image
        - label
        - length
  loader:
    shuffle: false
    drop_last: false
    batch_size_per_card: 128
    num_workers: 4

Based on the provided config file, we obtain the following results:
Without AMP (Automatic Mixed Precision):
PaddleOCR: 240 samples/s
OpenOCR: 225 samples/s
With AMP enabled:
PaddleOCR: 435 samples/s
OpenOCR: 325 samples/s
The possible reasons are as follows:

When there are too many character classes (e.g. Chinese), evaluation during training will affect the training speed. This can be avoided by setting cal_metric_during_train: False.
2, torch built-in CTCLoss is not as effective as Paddle's CTCLoss (the best CTCLoss on GPUs).

In addition, Paddle may experience training crashes when using AMP and needs to be careful in setting the AMP parameters.Torch AMP performs consistently and is nearly identical to the full-precision results.

Thank you for your prompt response and for sharing your results.
However, I am puzzled as to why my training speed decreases when AMP is enabled. It seems that instead of speeding up, my training slows down significantly with AMP. For your reference, I am using PyTorch version 2.1.1 with CUDA 11.8.
Any insights or suggestions on what might be causing this issue would be greatly appreciated.
Thank you!

It is indeed puzzling. We use the same setting: PyTorch version 2.1.1 with CUDA 11.8. What is the gpu type?

Thank you for your response.
I am using four NVIDIA H800 GPUs for training.

Unfortunately, we have no way to execute it on the H800, the GPUs we use are the 4090. If you can, try to verify it again on another type of GPU.

Thank you for your understanding.
I will have an opportunity to verify it on another type of GPU and will update you with the results.
Thanks again for your assistance!

Please post the log like this:
[2024/08/04 11:36:10] openrec INFO: epoch: [1/2], global_step: 310, lr: 0.000006, acc: 0.000000, norm_edit_dis: 0.000000, num_samples: 64.000000, loss: 22.806549, avg_reader_cost: 0.00679 s, avg_batch_cost: 0.19636 s, avg_samples: 64.0, ips: 325.93692 samples/s, eta: 1:25:07

OpenOCR(Without AMP):
[2024/08/05 14:06:54] openrec INFO: epoch: [1/20], global_step: 40, lr: 0.000001, acc: 0.000000, norm_edit_dis: 0.000210, num_samples: 64.000000, loss: 676.488342, avg_reader_cost: 0.00903 s, avg_batch_cost: 0.69598 s, avg_samples: 64.0, ips: 91.95673 samples/s, eta: 2 days, 16:16:56
OpenOCR(With AMP enabled:):
[2024/08/05 14:17:32] openrec INFO: epoch: [1/20], global_step: 40, lr: 0.000001, acc: 0.000000, norm_edit_dis: 0.000204, num_samples: 64.000000, loss: 676.378845, avg_reader_cost: 0.00928 s, avg_batch_cost: 1.40544 s, avg_samples: 64.0, ips: 45.53749 samples/s, eta: 4 days, 14:54:22

It's so strange. Also, we perform AMP (OpenOCR) on 3090 GPUs accelerated about 50%. You can try changing the torch version, or verifying other models.

Additionally, to investigate the performance further, I reduced the number of dictionary items from 8000 to 3000 and 1000, respectively. I observed that smaller dictionary sizes tend to align more with the expected performance improvements when AMP is enabled.
 We will verify the effect of character categories again based on the information you provide.

However, it is interesting to note that even though the IPS shows a slowdown with AMP turned on, a look at the log timestamps shows that AMP worked:
Without AMP: [2024/08/06 18:05:16] -- [2024/08/06 18:06:41] : 1m25s
With AMP: [2024/08/06 18:03:31] -- [2024/08/06 18:04:26] : 55s
However the IPS calculated in the code seems to be working without error. We will follow up with a deeper troubleshooting of this issue.
In addition, when the number of dictionaries is too large, it is recommended to set ''cal_metric_during_train'' to False. This will speed up the training significantly.

I appreciate your insights regarding the IPS and the log timestamps showing that AMP indeed worked. I'll look forward to further troubleshooting on this issue.
Regarding the suggestion to set cal_metric_during_train to False when the number of dictionaries is large, I will make this adjustment in my experiments to see how it impacts the training speed.
Thank you again for your assistance!

I am encountering an issue where the accuracy of OpenOCR implemented with PyTorch is consistently lower compared to PaddleOCR, despite using identical configurations.  Specifically, the accuracy of the PyTorch version is around 4 percentage points lower than that of the PaddleOCR version.
From the training curves, it is evident that OpenOCR (PyTorch) shows a more rapid increase in training accuracy.  However, the evaluation accuracy remains lower compared to PaddleOCR.
Have you encountered similar issues with OpenOCR (PyTorch) evaluation accuracy being lower than PaddleOCR?

I somehow suspect that the post-processing of the two is inconsistent. You can save the recognition results of both and observe the difference between them.

I have noticed that the training speed of our model using PyTorch is significantly slower compared to PaddleOCR. Here are some specific examples using the SVTR model under different settings:
Without AMP (Automatic Mixed Precision): PaddleOCR: 310 samples/s PyTorch: 250 samples/s
With AMP enabled: PaddleOCR: 490 samples/s PyTorch: 150 samples/s Is there any known reason for such a discrepancy in training speeds? Are there any optimizations or configurations that we might be missing in our PyTorch setup to achieve similar or better performance than PaddleOCR?

what is your system and paddle version to train rec_svtrv2_ch.yml?


API reference link broken in README

Hey! Thanks for reaching out! I'll look into this this weekend. As of now you can find the reference here: https://bengeisler.github.io/TcLog/reference/TcLogLib/Constants.html#sidetoggle


python preprocess.py

Hi, I run the commend "python preprocess.py",￼￼￼ it occurs the following error:
[luban@b8aeb1e5e498 style-token_tacotron2]$ python preprocess.py
initializing preprocessing..
Selecting data folders..
0it [00:00, ?it/s]
Write 0 utterances, 0 mel frames, 0 audio timesteps, (0.00 hours)
Traceback (most recent call last):
File "preprocess.py", line 142, in
main()
File "preprocess.py", line 138, in main
run_preprocess(args, modified_hp)
File "preprocess.py", line 114, in run_preprocess
preprocess(args, input_folders, output_folder, hparams)
File "preprocess.py", line 38, in preprocess
write_metadata(metadata, out_dir)
File "preprocess.py", line 51, in write_metadata
print('Max input length (text chars): {}'.format(max(len(m[5]) for m in metadata)))
ValueError: max() arg is an empty sequence
I don't how to fix it, I am looking forward to get your reply. My project structure is as follows.
LICENSE
-rw-r--r-- 1 luban deepmap      10348 May 11 11:53 README.md
drwxr-xr-x 1 luban deepmap        152 May 11 13:06 pycache
drwxr-xr-x 1 luban deepmap        216 Dec 30  2015 data_thchs30
-rw-r--r-- 1 luban deepmap<PHONE_NUMBER> May 11 14:44 data_thchs30.tgz
drwxr-xr-x 1 luban deepmap        272 May 11 16:32 datasets
-rw-r--r-- 1 luban deepmap       4521 May 11 11:53 griffin_lim_synthesis_tool.ipynb
-rw-r--r-- 1 luban deepmap      25976 May 11 11:53 hparams.py
-rw-r--r-- 1 luban deepmap       1231 May 11 11:53 infolog.py
-rw-r--r-- 1 luban deepmap       5851 May 11 16:33 preprocess.py
-rw-r--r-- 1 luban deepmap        191 May 11 11:53 requirements.txt
-rw-r--r-- 1 luban deepmap       4653 May 11 11:53 synthesize.py
drwxr-xr-x 1 luban deepmap        248 May 11 11:53 tacotron
-rw-r--r-- 1 luban deepmap       3555 May 11 11:53 test_wavenet_feeder.py
-rw-r--r-- 1 luban deepmap       5811 May 11 11:53 train.py
drwxr-xr-x 1 luban deepmap        216 May 11 15:11 training_data
drwxr-xr-x 1 luban deepmap        640 May 11 11:53 utils
-rw-r--r-- 1 luban deepmap       1867 May 11 11:53 wavenet_preprocess.py
drwxr-xr-x 1 luban deepmap        276 May 11 13:06 wavenet_vocoder

I'm sorry to reply so late.
Please unzip data_thchs30
data_thchs30 should be a folder instead of file. There are data folder under this data_thchs30.
data_thchs30
---data
------.wav
------.trn

thanks ,I have already unziped data_thchs30 , there are *.wav and *.trn in data folder. it doesn't work.
I tar xvzf data_thchs30.tgz ,there the following folders in data_thchs30:
[luban@b8aeb1e5e498 data_thchs30]$ ll
total 2388
-rw-r--r-- 1 luban deepmap    1875 Dec 30  2015 README.TXT
drwxr-xr-x 1 luban deepmap 2097152 Dec 30  2015 data
drwxr-xr-x 1 luban deepmap   65536 Dec 30  2015 dev
drwxr-xr-x 1 luban deepmap     148 Jan 29  2016 lm_phone
drwxr-xr-x 1 luban deepmap     116 Jan 29  2016 lm_word
drwxr-xr-x 1 luban deepmap  262144 Dec 30  2015 test
drwxr-xr-x 1 luban deepmap 1048576 Dec 30  2015 train
in data folder:
[luban@b8aeb1e5e498 thchs30]$ cd data/
[luban@b8aeb1e5e498 data]$ ll
total 3923368
-r-xr-x--- 1 luban deepmap 249644 Dec 30  2015 A11_0.wav
-rw-r--r-- 1 luban deepmap    451 Dec 30  2015 A11_0.wav.trn
-r-xr-x--- 1 luban deepmap 282924 Dec 30  2015 A11_1.wav
-rw-r--r-- 1 luban deepmap    508 Dec 30  2015 A11_1.wav.trn
.......
it doesn't work , I don't how to solve it .

Remain error: print('Max input length (text chars): {}'.format(max(len(m[5]) for m in metadata)))?
Please get new code, I update it today. Or you can copy datasets/preprocessor.py to replace old one.
Because I modify THCHS-30 dataset, so the suffix of text file is '.trn2' instead of '.trn'


Fix docblock type parsing from variadic params

~Hello, I have reproduced in tests a failure when type parser incorrectly parses variadic parameter. There should not be any error but TypesDoNotMatch exception is thrown.~

Hi @simPod, I've moved the logic to the type resolver where it should belong. Thanks for the report!

Nice. One more reason to always include tests 🙃


Could you please help to example how to use awscloudwatchsource?

no idea what I should  do with this fields
https://github.com/triggermesh/triggermesh/blob/main/config/samples/sources/awscloudwatchsource.yaml
apiVersion: sources.triggermesh.io/v1alpha1
kind: AWSCloudWatchSource
....
  metricQueries:
  - name: testquery
    metric:
      period: 60
      stat: p90
      unit: Milliseconds
      metric:
        metricName: Duration
        namespace: AWS/Lambda
        dimensions:
        - name: FunctionName
          value: lambdadumper

edit: formatting (@antoineco)

I deployed that sample to k8s,  it raises error
{"severity":"INFO","timestamp":"2022-03-09T07:47:49.387263951Z","caller":"logging/config.go:116","message":"Successfully created the logger."}
{"severity":"INFO","timestamp":"2022-03-09T07:47:49.388094241Z","caller":"logging/config.go:117","message":"Logging level set to: info"}
{"severity":"ERROR","timestamp":"2022-03-09T07:47:49.388599156Z","logger":"awscloudwatchsource","caller":"metrics/exporter.go:151","message":"Failed to get a valid metrics config","commit":"b6f376e","error":"metrics domain cannot be empty","stacktrace":"knative.dev/pkg/metrics.UpdateExporter\n\tknative.dev/pkg@v0.0.0-20220118160532-77555ea48cd4/metrics/exporter.go:151\nknative.dev/eventing/pkg/adapter/v2.MainWithInformers\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:131\nknative.dev/eventing/pkg/adapter/v2.MainWithEnv\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:105\nknative.dev/eventing/pkg/adapter/v2.MainWithContext\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:80\nknative.dev/eventing/pkg/adapter/v2.Main\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:76\nmain.main\n\tgithub.com/triggermesh/triggermesh/cmd/awscloudwatchsource-adapter/main.go:26\nruntime.main\n\truntime/proc.go:255"}
{"severity":"ERROR","timestamp":"2022-03-09T07:47:49.388739754Z","logger":"awscloudwatchsource","caller":"v2/main.go:132","message":"Failed to create the metrics exporter","commit":"b6f376e","error":"metrics domain cannot be empty","stacktrace":"knative.dev/eventing/pkg/adapter/v2.MainWithInformers\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:132\nknative.dev/eventing/pkg/adapter/v2.MainWithEnv\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:105\nknative.dev/eventing/pkg/adapter/v2.MainWithContext\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:80\nknative.dev/eventing/pkg/adapter/v2.Main\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:76\nmain.main\n\tgithub.com/triggermesh/triggermesh/cmd/awscloudwatchsource-adapter/main.go:26\nruntime.main\n\truntime/proc.go:255"}
{"severity":"WARNING","timestamp":"2022-03-09T07:47:49.38886909Z","logger":"awscloudwatchsource","caller":"v2/config.go:185","message":"Tracing configuration is invalid, using the no-op default{error 26 0  empty json tracing config}","commit":"b6f376e"}
{"severity":"WARNING","timestamp":"2022-03-09T07:47:49.388913351Z","logger":"awscloudwatchsource","caller":"v2/config.go:178","message":"Sink timeout configuration is invalid, default to -1 (no timeout)","commit":"b6f376e"}
{"severity":"EMERGENCY","timestamp":"2022-03-09T07:47:49.814544603Z","logger":"awscloudwatchsource","caller":"v2/main.go:205","message":"Start returned an error","commit":"b6f376e","error":"unable to read metrics: RequestError: send request failed\ncaused by: Post "https://monitoring.us-west-2.amazonaws.com/\": dial tcp <IP_ADDRESS>:443: connect: connection refused","stacktrace":"knative.dev/eventing/pkg/adapter/v2.MainWithInformers\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:205\nknative.dev/eventing/pkg/adapter/v2.MainWithEnv\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:105\nknative.dev/eventing/pkg/adapter/v2.MainWithContext\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:80\nknative.dev/eventing/pkg/adapter/v2.Main\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:76\nmain.main\n\tgithub.com/triggermesh/triggermesh/cmd/awscloudwatchsource-adapter/main.go:26\nruntime.main\n\truntime/proc.go:255"}

after pod restart, new error raised
{"severity":"INFO","timestamp":"2022-03-09T07:48:08.865687167Z","caller":"logging/config.go:116","message":"Successfully created the logger."}
{"severity":"INFO","timestamp":"2022-03-09T07:48:08.865783913Z","caller":"logging/config.go:117","message":"Logging level set to: info"}
{"severity":"ERROR","timestamp":"2022-03-09T07:48:08.866073987Z","logger":"awscloudwatchsource","caller":"metrics/exporter.go:151","message":"Failed to get a valid metrics config","commit":"b6f376e","error":"metrics domain cannot be empty","stacktrace":"knative.dev/pkg/metrics.UpdateExporter\n\tknative.dev/pkg@v0.0.0-20220118160532-77555ea48cd4/metrics/exporter.go:151\nknative.dev/eventing/pkg/adapter/v2.MainWithInformers\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:131\nknative.dev/eventing/pkg/adapter/v2.MainWithEnv\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:105\nknative.dev/eventing/pkg/adapter/v2.MainWithContext\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:80\nknative.dev/eventing/pkg/adapter/v2.Main\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:76\nmain.main\n\tgithub.com/triggermesh/triggermesh/cmd/awscloudwatchsource-adapter/main.go:26\nruntime.main\n\truntime/proc.go:255"}
{"severity":"ERROR","timestamp":"2022-03-09T07:48:08.866163514Z","logger":"awscloudwatchsource","caller":"v2/main.go:132","message":"Failed to create the metrics exporter","commit":"b6f376e","error":"metrics domain cannot be empty","stacktrace":"knative.dev/eventing/pkg/adapter/v2.MainWithInformers\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:132\nknative.dev/eventing/pkg/adapter/v2.MainWithEnv\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:105\nknative.dev/eventing/pkg/adapter/v2.MainWithContext\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:80\nknative.dev/eventing/pkg/adapter/v2.Main\n\tknative.dev/eventing@v0.29.0/pkg/adapter/v2/main.go:76\nmain.main\n\tgithub.com/triggermesh/triggermesh/cmd/awscloudwatchsource-adapter/main.go:26\nruntime.main\n\truntime/proc.go:255"}
{"severity":"WARNING","timestamp":"2022-03-09T07:48:08.866233085Z","logger":"awscloudwatchsource","caller":"v2/config.go:185","message":"Tracing configuration is invalid, using the no-op default{error 26 0  empty json tracing config}","commit":"b6f376e"}
{"severity":"WARNING","timestamp":"2022-03-09T07:48:08.866272835Z","logger":"awscloudwatchsource","caller":"v2/config.go:178","message":"Sink timeout configuration is invalid, default to -1 (no timeout)","commit":"b6f376e"}
{"severity":"INFO","timestamp":"2022-03-09T07:48:08.916201039Z","logger":"awscloudwatchsource","caller":"awscloudwatchsource/adapter.go:176","message":"Enabling CloudWatch","commit":"b6f376e"}

@life-learner1 the metricsQueries attribute needs to be populated with valid CloudWatch MetricQueries, which format is described in details at https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDataQuery.html.
I agree that our sample should contain a valid example. According to the error, the domain in the sample is empty: metrics domain cannot be empty.
If you tell me what metric you're interested in sourcing, I can help you compose the correct metric query.

Here is a snippet of our embedded CRD documentation:
$ kubectl explain awscloudwatchsources.sources.triggermesh.io.spec.metricQueries
KIND:     AWSCloudWatchSource
VERSION:  sources.triggermesh.io/v1alpha1

RESOURCE: metricQueries <[]Object>

DESCRIPTION:
     List of queries that determine what metrics will be sourced from Amazon
     CloudWatch. Each item represents an individual MetricDataQuery. For more
     information, please refer to the CloudWatch API reference at
     https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDataQuery.html

FIELDS:
   expression   <string>
     Math expression to be performed on the metric data. Mutually exclusive with
     'metric'.

   metric       <Object>
     Representation of a metric with statistics, period, and units, but no math
     expression. Mutually exclusive with 'expression'.

   name <string>
     Unique short name that identifies the query.

@antoineco Thank you a lot for your help, I want to handle ecr event from EventBridge (CloudWatch Events)

that`s the rule
{
  "detail-type": [
    "ECR Image Action"
  ],
  "source": [
    "aws.ecr"
  ],
  "detail": {
    "action-type": [
      "PUSH"
    ],
    "result": [
      "SUCCESS"
    ]
  }
}

@life-learner1 ah, CloudWatch Events (which became EventBridge) and CloudWatch Metrics are two different AWS products. This event source consumes metrics only.
We would need to write a new event source in order to be able to consume events from EventBridge event buses.
If that's something you're interested in, I can open a feature request.

@life-learner1 thanks, please help to open a feature request, now I think I have to write a service to deliver the event as a temporary way

@life-learner1 I opened #633. We'll see if we have capacity to work on this soon.
Feel free to continue the discussion over there in case you would like to add more details.


signatures of unknown trust

I get the following when running this action now.
  checking keyring...
  checking package integrity...
  error: glibc: signature from "Frederik Schwan<EMAIL_ADDRESS>is unknown trust
  :: File /var/cache/pacman/pkg/glibc-2.36-6-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
  error: gcc-libs: signature from "Frederik Schwan<EMAIL_ADDRESS>is unknown trust
  Do you want to delete it? [Y/n]
  :: File /var/cache/pacman/pkg/gcc-libs-12.2.0-1-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
  error: binutils: signature from "Frederik Schwan<EMAIL_ADDRESS>is unknown trust
  Do you want to delete it? [Y/n]
  :: File /var/cache/pacman/pkg/binutils-2.39-3-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
  error: gcc: signature from "Frederik Schwan<EMAIL_ADDRESS>is unknown trust
  Do you want to delete it? [Y/n]
  :: File /var/cache/pacman/pkg/gcc-12.2.0-1-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
  error: libtool: signature from "Frederik Schwan<EMAIL_ADDRESS>is unknown trust
  error: failed to commit transaction (invalid or corrupted package)
  Do you want to delete it? [Y/n]
  :: File /var/cache/pacman/pkg/libtool-2.4.7-5-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
  Do you want to delete it? [Y/n]
  Errors occurred, no packages were upgraded.

I have not researched this heavily, but did find this: https://www.reddit.com/r/archlinux/comments/rc1z0f/frederick_schwan_signature_issues
Maybe some clues there on how to solve it.

this issue is still happening, making this action sadly unusable, because it doesnt generate the srcinfo without downloading all of the dependencys

@GameTec-live this fork has my fix in it. https://github.com/toitlang/archlinux-package-action
This action doesn't seem to be maintained though so you might want to find an alternative. I ended up deleting my fork as I didn't want to maintain it... ended up just building in docker directly.

@GameTec-live this fork has my fix in it. https://github.com/toitlang/archlinux-package-action
This action doesn't seem to be maintained though so you might want to find an alternative. I ended up deleting my fork as I didn't want to maintain it... ended up just building in docker directly.

sad that theres basically no way of running the makepkg commands in docker... i now just used sed and manipulated the files directly...


value! - unable to infer enough type information about _

The following simplified code
named! (foo (&str) -> bool,
    chain! (
        tag_s! ("foo") ~
        b: alt_complete! (
            map! (tag_s! ("1"), |_: &str|->bool {true}) |
            value! (false)
        ),
        || b));

produces the following error:
error: unable to infer enough type information about `_`; type annotations or generic parameter binding required [--explain E0282]
  --> <nom macros>:11:3
   |>
11 |> ( $ crate :: IResult :: Done ( $ i , $ res ) ) ;
   |>   ^^^^^^^^^^^^^^^^^^^^^^^^^^
<nom macros>:25:32: 32:43: note: in this expansion of value! (defined in <nom macros>)
<nom macros>:25:1: 25:54: note: in this expansion of alt_parser! (defined in <nom macros>)
<nom macros>:8:52: 9:23: note: in this expansion of alt_complete! (defined in <nom macros>)
src/main.rs:8:24: 141:42: note: in this expansion of alt_complete! (defined in <nom macros>)
<nom macros>:14:1: 17:39: note: in this expansion of chaining_parser! (defined in <nom macros>)
<nom macros>:2:3: 2:54: note: in this expansion of chaining_parser! (defined in <nom macros>)
src/main.rs:6:10: 5:34: note: in this expansion of chain! (defined in <nom macros>)
src/main.rs:5:1: 12:16: note: in this expansion of named! (defined in <nom macros>)

Here's the code in the playground: http://play.integer32.com/?gist=50f465df8a126e1a96fba226717d7a9b

The real use case is a little different. If you're curious:
named! (exploding_dice (&str) -> DiceOp, chain! (
  tag_s! ("!") ~ explode: alt_complete! (
    map! (pair! (alt! (tag_s! ("<") | tag_s! (">")), digit),
      |(le_ge, d): (&str, &str)| DiceOp::Explode {le_ge: if le_ge == ">" {1} else {-1}, face: Some (d.parse().expect ("!parse"))}) |
    map! (digit,
      |d: &str| {DiceOp::Explode {le_ge: 0, face: Some (d.parse().expect ("!parse"))}}) |
    value! (DiceOp::Explode {le_ge: 0, face: None})),
  || explode));

Type inference issues often appear when I try to make one big parser instead of a few small ones that I combine. In your case, you could extract parts of your code, like map! (tag_s! ("1"), |_: &str|->bool {true}) in their own functions, and call them from the original parser. This usually does the trick.

The problem seems to be in the value itself (and not in the parser being "big").
The following code still fails with "unable to infer enough type information about _":
named! (foo (&str) -> bool,
    chain! (
        tag_s! ("foo") ~
        b: alt_complete! (
            value! (true) |
            value! (false)
        ),
        || b));

Here's another example of the same problem.
named! (num (&str) -> u32, map! (digit, |s: &str| -> u32 {s.parse().expect ("!num")}));
named! (num_default1 (&str) -> u32, alt_complete! (num | value! (1u32)));
named! (nom_dice (&str) -> u32, chain! (number: num_default1 ~ tag_s! ("d") ~ faces: num, || number));

Error:
error[E0282]: unable to infer enough type information about `_`
  --> <nom macros>:11:3
   |
11 | ( $ crate :: IResult :: Done ( $ i , $ res ) ) ;
   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type for `_`
<nom macros>:25:32: 32:43 note: in this expansion of value! (defined in <nom macros>)
<nom macros>:25:1: 25:54 note: in this expansion of alt_parser! (defined in <nom macros>)
<nom macros>:8:52: 9:23 note: in this expansion of alt_complete! (defined in <nom macros>)
<nom macros>:2:1: 2:72 note: in this expansion of alt_complete! (defined in <nom macros>)
src/main.rs:6:49: 5:34 note: in this expansion of alt_complete! (defined in <nom macros>)
src/main.rs:6:1: 6:74 note: in this expansion of named! (defined in <nom macros>)
   |
   = note: type annotations or generic parameter binding required

Note that in the current crates.io release of nom there is a workaround of using take! (0) instead of value.
For example:
named! (num_default1 (&str) -> u32, alt_complete! (num | map! (take! (0), |_| 1)));

But AFAIK take! (0) has stopped working in the github version.

The
named! (just_false (&str) -> bool, value! (false));

workaround works (playground).

I think the problem is that the value! fails to define the error type.
Here's a fixed value!:
macro_rules! value_ (
  ($i:expr, $res:expr, $submac:ident!( $($args:tt)* )) => (
    {
      match $submac!($i, $($args)*) {
        nom::IResult::Done(i,_)     => {
          nom::IResult::Done(i, $res)
        },
        nom::IResult::Error(e)      => nom::IResult::Error(e),
        nom::IResult::Incomplete(i) => nom::IResult::Incomplete(i)
      }
    }
  );
  ($i:expr, $res:expr, $f:expr) => (
    value!($i, $res, call!($f))
  );
  ($i:expr, $res:expr) => (
    {
      let ir: nom::IResult<_, _, u32> = nom::IResult::Done($i, $res);
      ir
    }
  );
);

(playground)

apparently this has been fixed, closing

Hey. The fix wasn't merged yet, right?

it was merged, but the crate is not published yet. It will be there under nom 3.0. By the way, you should probably take the time to remove uses of chain! and replace them with do_parse!: https://docs.rs/nom/2.2.1/nom/macro.do_parse.html

(because chain will probably be removed during this update)

it was merged, but the crate is not published yet. It will be there under nom 3.0.

Glad to hear, thanks!

By the way, you should probably take the time to remove uses of chain! and replace them with do_parse!

I've switched all the nom code I use to do_parse! for quite some time now!
Appreciate the heads up though.


Add CWA logo in the middle of generated event QR-Codes

Feature description
Similar to what the luca app does, the Corona-Warn-App should add it's logo in the middle of the generated event QR-Codes.
Problem and motivation
I saw users who were really confused when there are just QR-Codes without any logo in it, they don't know which app to use to scan it.
Additional information
I created this issue in the website repo since with the addition of the multi-qr-code feature it's possible to just print out QR-Codes without the typical "Checken Sie ein. Stoppen Sie das Virus." sheet around it.

@Ein-Tim Nice idea!

@dsarkar Thanks! Will you create a internal Ticket for this?

Proof of concept. Currently, this QR-Code links to another side which redirects to CWA, but this is not needed:

Good idea - if the correction bytes of the QR code allow it without negatively affecting readability.

@Jo-Achim Did you try to scan the QR-Code I provided in my comment above?
Here (iOS 15, CWA 2.10.1, iPhone XR) I can read the QR-Code with the in-app scanner in CWA as well as the native iPhone camera.

@Ein-Tim,
sorry, but the result is...

Samsung Galaxy Note 10, SM-N970F/DS
Android 11 (One UI 3.1) with Android security update: 01. August 2021
Google Play-Systemupdate: June, 1st, 2021.
CWA Version: 2.10.1
ENF:<PHONE_NUMBER>0
(CovPass 1.138.6 shows the same error. / CovPassCheck 1.95.12 means: invalid certificate.)

An attempt to scan (same smartphone) with another app ("QrEasy") does not cause an error message, but returns: "https: //e.coronawarn.app ...".
Do you need a screenshot?

@Jo-Achim This is a QR-Code for an event (Check-in) please try to scan it with the QR-Code scanner on the "Check-in" tab.
I don't suggest to add the logo of the Corona-Warn-App in the middle of EU digital COVID certificates as they can be scanned with the CovPass-App, the luca App & also foreign apps.

@Jo-Achim This is a QR-Code for an event (Check-in) please try to scan it with the QR-Code scanner on the "Check-in" tab.

Oh, sorry, sorry, sorry, my mistake!
The "Check-In" answer is: "CWA Event QR-Code mit Logo".

@Jo-Achim No problem!
Nice, that's how I named the event (:
So you can confirm that this is working 👍

Actually, on iPhones it is toally fine to just scan the QR code with the camera app. It will recognize the URL schema and propose to open the CWA.

@moabits Yes, you can also do this with luca QR codes, still it's a nice and easy to achieve advertisement & also makes the whole process more user friendly. They are instantly able to see what the QR code is for and don't have to scan it first.

As the CWA project went into ramp-down mode, I don't expect this feature to be implemented anymore. I'm therefore closing this issue.


Documentation: Unlock writing in Markdown, using Sphinx/MyST. Add Sphinx extensions "copybutton" and "opengraph".

About
We would like to contribute more documentation, but would like to author it in Markdown format instead of reStructuredText, thus modernizing tech writing a bit, based on excellent work of others.
What's Inside

Unlock writing in Markdown, using Sphinx/MyST
Add Sphinx extensions "copybutton" and "opengraph"

Preview
This page is now written in Markdown, stored in markdown.md.
https://responder-testdrive.readthedocs.io/en/latest/sandbox.html
That the preview is rendering means it also works well on RTD.
References

Technical advancements in Sphinx
MyST - Markedly Structured Text - Parser
sphinx{design}
sphinx-design-elements

love this!!

i think coderabbit is a lot better /cc @coderabbit

Please remove @llamareview again.

of course, i can't figure out how to do that now lol


Fix npot(not power of two) dds texture loading bug

Fix npot(not power of two) dds texture loading bug
Use squish::DecompressImage to decompress BC1/BC2/BC3 image
Adds squish to all non-tools build
merged from https://github.com/godotengine/godot/pull/4015

Assigning to @reduz for review. Note that this PR adds squish as a dependency for non-tools builds.

Ping @reduz, is this still needed after the Image refactoring? https://godotengine.org/article/change-image

@reduz confirmed on IRC that he thinks he fixed that already, so closing. Thanks for the work though!


json data structure for websocket

Dear Jeppe, I like your waterfall implementation very much and have connected it to an FFT stream from the LimeSDR. I am struggling with the json structure required by the script, could you share that ?
thanks a lot in advance
brgds
Bernhard

The JSON structure is quite simple as shown here : https://github.com/jledet/waterfall/blob/885cb7bfd56ac1969e7c2a219819609a6ee8d0e6/script.js#L17
The spectrum data is sent in this format, with number of data points corresponding to the FFT bin count:
{"s":[-44,-46,-47,-49,-53,-51,-46,-46,-46,.................,-49,-44]}

Tuning parameters like "center" Frequency and "span" are sent independently during websock init or can be called when dynamically changing the frequency.
https://github.com/jledet/waterfall/blob/885cb7bfd56ac1969e7c2a219819609a6ee8d0e6/server.py#L38
For dynamic changing of parameters from keyboard and PlutoSDR support, you can check out my fork

Thanks a lot!


game leave leads to turn change even if not active player

note: might be since we send inactive request

CAN'T REPRO


Live Agent - app.py says there is no model.pkl

Questions on live agent - after running this command python3 app.py  generates error there is no

model.pkl file

?
plz guide how to solve it .
As i try to run the realtime-evolution-stratgegy.py so to save model.pkl  and then app.py but doesn't work the either way .
@plz guide.

If you follow agent.ipynb, at the end of it,
import pickle

with open('agent.pkl', 'wb') as fopen:
    pickle.dump(agent, fopen)

It will save the model as pickle and reload it inside app.py.
I will push my pickled later, but it is not perfect. It is better if you train it again.

it saves as agent.pkl not model.pkl . the function ask as model.pkl.

How the systems exactly works :
I need to train my model with agent.py then dump model with pickle to agent.pkl / model.pkl then load that model with app.py and connect to websocket live data for real time prices and trade details ? Right .
Then whats the use of realtime-strategy.ipynb file ? I found it can trade between multiple stiock options ? Right ?
Can you guide me more websocket integration on  live trading :)

in app.py the pickle function is like below 👍
with open('model.pkl', 'rb') as fopen:     model = pickle.load(fopen)
in realtime strategy.ipynb the pickle function is like below 👍 👍
`#%%
import copy
import pickle
copy_model = copy.deepcopy(agent.model)
pickle.dump(copy_model, 'model.pkl', 'rb')`
if you change the model.pkl with agent.pkl in app.py it generates error on

model.get_rewrds function ?

so it is better to ask the creator
:)

@huseinzol05  the agent.py file dump agent.pkl and realtime strategy dump model.pkl

@huseinzol05 got success in saving model.pkl . plz answer in app.py after importing model.pkl as we don'tneed flask server i have removed the false code. which function should we initiative to start the buy and sell . is  it def buy agent.buy() or  def trade agent.trade(data) ? As  i have tried with both the but, the app.py file docent started ?

@huseinzol05 i understand that we can connect the web sockets using request.ipynb flow live data to the app.py . then why there is line 347 app.py we have :

df = pd.read_csv('TWTR.csv') real_trend = df['Close'].tolist() parameters = [df['Close'].tolist(), df['Volume'].tolist()] minmax = MinMaxScaler(feature_range = (100, 200)).fit(np.array(parameters).T) scaled_parameters = minmax.transform(np.array(parameters).T).T.tolist() initial_money = np.max(parameters[0]) * 2

why we need to feed again this data in app.py ?

@huseinzol05
@huseinzol05 i understand that we can connect the web sockets using request.ipynb flow live data to the app.py . then why there is line 347 app.py we have :

df = pd.read_csv('TWTR.csv') real_trend = df['Close'].tolist() parameters = [df['Close'].tolist(), df['Volume'].tolist()] minmax = MinMaxScaler(feature_range = (100, 200)).fit(np.array(parameters).T) scaled_parameters = minmax.transform(np.array(parameters).T).T.tolist() initial_money = np.max(parameters[0]) * 2

why we need to feed again this data in app.py ?

If you follow agent.ipynb, at the end of it,
import pickle

with open('agent.pkl', 'wb') as fopen:
    pickle.dump(agent, fopen)

It will save the model as pickle and reload it inside app.py.
I will push my pickled later, but it is not perfect. It is better if you train it again.

@huseinzol05
@huseinzol05 i understand that we can connect the web sockets using request.ipynb flow live data to the app.py . then why there is line 347 app.py we have :
df = pd.read_csv('TWTR.csv') real_trend = df['Close'].tolist() parameters = [df['Close'].tolist(), df['Volume'].tolist()] minmax = MinMaxScaler(feature_range = (100, 200)).fit(np.array(parameters).T) scaled_parameters = minmax.transform(np.array(parameters).T).T.tolist() initial_money = np.max(parameters[0]) * 2
why we need to feed again this data in app.py ?

Because that are parameters needed by the model. I think you can try to improve the code and send a pull request, my code seems sucks.

How to accelerate training with big data and more epochs ? will you add GPU  support, as official Scikit says no GPU support. can you add some code to accelerate training with big data or some code version with pytorch ? or rapid library or cython.@huseinzol05

@huseinzol05 can we use Rapids.ai to accelerate the  training

Fixed, added model.pkl


revert an old commit to fix generating illegal tf.json

What type of PR is this?

/kind bug
What this PR does / why we need it:
Fix generating illegal tf.json
When a resource is deleted in Spec but exists in PriorState, this node should be regarded as a deleted node, and rn.state stores the PriorState. So we should set the planedState as nil
Fixs: #287

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

5 of 6 (83.33%)  changed or added relevant lines in 2 files are covered.
15 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.1%) to 72.094%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/engine/runtime/terraform/terraform_runtime.go
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

pkg/cmd/apply/options.go
7
71.2%

pkg/engine/operation/graph/resource_node.go
8
60.64%

Totals

Change from base Build<PHONE_NUMBER>:
-0.1%

Covered Lines:
4676

Relevant Lines:
6486

💛  - Coveralls


[NIFI-3075] remove fixed width from combo options and add max-width c…

Thank you for submitting a contribution to Apache NiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[ ] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[ ] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[ ] Has your PR been rebased against the latest commit within the target branch (typically master)?

[ ] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
…ss style to display ellipsis when options text is too long

Reviewing...

Looks great @scottyaslan! This has been merged to master.


Unable to find an entry point named 'LossMetric_anet_type_create' in DLL 'DlibDotNetNativeDnn'

Hi do you have any pointers installed Cuda 10 and 10.1 with the dlls

@QuintinSmith334
It means that you app can find DlibDotNetNativeDnn but not find necessary function from it.
But it is weird.
Could you tell me the following points?

Which packges do you use?

FaceRecognitionDotNet, FaceRecognitionDotNet.MKL or FaceRecognitionDotNet.CUDAXXX?

Version of FaceRecognitionDotNet
Version of DlibDotNet (Check from dll file property in your application directory)

Face Detection examples are broken, Dlib NativeMethods
Repo:
https://github.com/takuya-takeuchi/DlibDotNet  e91da42  on Jun 25, 2020
Version
DlibDotNet <IP_ADDRESS>10228
Startup  Example App:
FaceDetection.csproj
Error:
Dlib.cs 189 - DllNotFoundException: Unable to load DLL 'DlibDotNetNativeDnn
Works in version 19.17.x

Works in version 19.17.x

19.17 is last version support legacy cpu.
https://github.com/takuya-takeuchi/DlibDotNet/issues/172
If you can run 19.18, it may be reason of issue.

Thanks for the prompt reply.
I ported the app from .Net Framework 4.8 to .Net Core 5.0 and app now works with <IP_ADDRESS>10228 and Dlib NativeMethods.
Porting was as easy and fast, simply unloaded App Project, edited Project file by deleted all text and replacing with this
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net5.0-windows</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
  </PropertyGroup>
<Project Sdk>

Reload Project, added Dlib via nuget
PM> Install-Package DlibDotNet -Version <IP_ADDRESS>10228
I am willing to assist other developers by VS Live Share / Zoom to resolve issues.

@Camcoeng

Face Detection examples are broken, Dlib NativeMethods

I can not reproduce it on windows 10.
cd examples\FaceDetection
> dotnet remove reference ..\..\src\FaceRecognitionDotNet\FaceRecognitionDotNet.csproj
> dotnet add package FaceRecognitionDotNet
> dotnet run -c Release -- -c 1 -m cnn -d ..\..\src\DlibDotNet\src\dlib\examples\faces[D:\Works\OpenSource\FaceRecognitionDotNet\examples\FaceDetection\FaceDetection.csproj]
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_001009.jpg,204,211,283,132
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_001009.jpg,76,219,155,140
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_001322.jpg,164,435,243,356
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_001322.jpg,148,179,227,100
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_001322.jpg,204,299,283,220
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_002506.jpg,59,442,173,328
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_002506.jpg,100,307,179,228
..\..\src\DlibDotNet\src\dlib\examples\faces\2008_002506.jpg,51,215,146,120

Porting was as easy and fast, simply unloaded App Project, edited Project file by deleted all text and replacing with this

You tried to port console app to winforms, right?
But I can run WinForms app.
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net5.0-windows</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="FaceRecognitionDotNet" Version="<IP_ADDRESS>" />
  </ItemGroup>

</Project>

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using FaceRecognitionDotNet;

namespace FaceDetectionWinForms
{
    public partial class Form1 : Form
    {

        private FaceRecognition _FaceRecognition;

        public Form1()
        {
            InitializeComponent();
            this._FaceRecognition = FaceRecognition.Create("models");
        }

    }
}


datatable field added in client swagger resource (FINERACT-1363)

Description
Added new schema PostClientsDatatable which is used while creating the client. Earlier the the client creating model (PostClientsRequest) doesn't have a datatables field but a List of datable is required incase the entity is associated with any databale.
For more info see Apache Fineract JIRA ticket.
Checklist
Please make sure these boxes are checked before submitting your pull request - thanks!

[x] Write the commit message as per https://github.com/apache/fineract/#pull-requests

[x] Acknowledge that we will not review PRs that are not passing the build ("green") - it is your responsibility to get a proposed PR to pass the build, not primarily the project's maintainers.

[x] Create/update unit or integration tests for verifying the changes made.

[x] Follow coding conventions at https://cwiki.apache.org/confluence/display/FINERACT/Coding+Conventions.

[x] Add required Swagger annotation and update API documentation at fineract-provider/src/main/resources/static/api-docs/apiLive.htm with details of any API changes

[x] Submission is not a "code dump".  (Large changes can be made "in repository" via a branch.  Ask on the developer mailing list for guidance, if required.)

FYI our guidelines for code reviews are at https://cwiki.apache.org/confluence/display/FINERACT/Code+Review+Guide.

@Sanyam96 Are you able to review this PR?

@ptuomola , please take a look into this PR also, it is marked as stale by GitHub actions. Thanks


Cleanups and deadcode removal

All straight forward and invididually reviewable commits accumulated in this PR.
Only 1c862a61bc (Globals: remove unused property StartingRepsitorySubDir) introduces a slight
change in behaviour by removing an useless git rev-parse --show-prefix invocation.

I'll probably leave this open for a few days in case anyone wants to have a look, but will otherwise merge it.
It is best reviewed each commit invididually and the most "exciting" commits are a01ac04c174 (best viewed with ignore whitespace) and 1c862a61b as they are more than just removing unused property setters.

Force pushed to fix some spelling errors in the last commit updating the release notes.

Force pushed to rebase on master


fix Issue3623

fix #3623

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

Codecov Report

Merging #3738 (8cf049d) into master (14a95cc) will decrease coverage by 0.02%.
The diff coverage is 88.23%.

@@             Coverage Diff              @@
##             master    #3738      +/-   ##
============================================
- Coverage     80.30%   80.28%   -0.03%
+ Complexity     7519     7517       -2
============================================
  Files           157      157
  Lines         28096    28106      +10
  Branches       6790     6792       +2
============================================
+ Hits          22563    22564       +1
- Misses         3499     3504       +5
- Partials       2034     2038       +4

Impacted Files
Coverage Δ
Complexity Δ

...com/alibaba/fastjson/parser/DefaultJSONParser.java
87.27% <88.23%> (-0.08%)
327.00 <0.00> (+2.00)
:arrow_down:

...com/alibaba/fastjson/serializer/SerialContext.java
82.69% <0.00%> (-3.85%)
21.00% <0.00%> (-1.00%)

...main/java/com/alibaba/fastjson/util/FieldInfo.java
85.76% <0.00%> (-1.00%)
97.00% <0.00%> (-2.00%)

...n/java/com/alibaba/fastjson/util/JavaBeanInfo.java
86.89% <0.00%> (-0.17%)
215.00% <0.00%> (-1.00%)

...java/com/alibaba/fastjson/parser/ParserConfig.java
80.46% <0.00%> (-0.15%)
226.00% <0.00%> (ø%)

Continue to review full report at Codecov.

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


Add optional file encryption

A nice addition would be to add the ability to encrypt files (e.g. using AES256) to achieve a zero-knowledge cloud out of Telegram's cloud storage.

Would be nice, but where should you/the bot save the encryption key? It could not be other than the chat (as it happens now with filesystem) to avoid data go outside Telegram, but this doesn't end in a real zero-knowledge application.
Also, according to this FAQ, Telegram already keeps encrypted all your data from third parties.
Anyway @Arturro43, do you have an idea on how to achieve your suggestion? If yes, feel free to open a PR!

I don't have programming skills, but my friend told me, that "homomorphic encryption" which allows to perform an operation on encrypted data without decrypting them in such a way that the result is identical to that which would be obtained if the operation were performed on unencrypted data
So, for example, the sender sends an encrypted key to the bot, the bot performs a homomorphic operation on the key whose argument is a symmetric key and sends back.
The sender decrypts and compares what he has received with the input data and in this way they determine the symmetric key.
https://github.com/jonaschn/awesome-he

Maybe it could work, but the user would have the responsibility to safely store the key


Ledger and abstracted hw wallet integration

Keys held on device, txs (formed and?) signed on device

This is being worked on by a few community members. Pop into #mymonero if you want to get involved.

So the JS-land transport like stuff necessary for this has been shared by henrynguyen in his PR https://github.com/MyCryptoHQ/xmr-core/pull/20.
Our new integration with Monero core src includes hw device support, so all that should be necessary for this is bridging a set of hw device calls over the transport work in JS, or, if possible, simply keeping all of this in a Node.JS addon which can do the transport work in C/C++. We're not planning to introduce hw device support for the browser app at the present time, so this Node.JS addon C++ approach might end up working extremely well.

May support it for browser, time-allowing


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-k8s-29-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 4098

Questions ?
Please refer to the Backport tool documentation


Support update --precise for registry deps

Closes #1105

r? @huonw
(rust_highfive has picked a reviewer for you, use r? to override)

@bors: r+ 70ee

:hourglass: Testing commit 70eecd3 with merge fc77765...

:sunny: Test successful - cargo-linux-32, cargo-linux-64, cargo-mac-32, cargo-mac-64, cargo-win-32, cargo-win-64


renaming SketchGroup/ExtrudeGroup / consistent naming

The names SketchGroup and ExtrudeGroup were passed down from the original JS parser. I think they are confusing and they leak into the docs, etc externally. I think its confusing because to me a "group" implies more than one and ive seen others misstep on this as well. Idk where the "group" nomenclature comes from but these are singular things, and it gets weirder when you have a "vec" or extrude groups. It should be something singular. Also some things arent extruded like loft, revolve etc.
I propose we rename them, opening for ideas:
but what about just "Sketch" and "Solid3d" stealing the latter from the engine, I didn't think we should steal "Solid2d" from engine but I am open to it, just to me that implies it must be closed and I think "Sketch" resonates more with MEs.
Overall goals with naming should be:

understandable to MEs (highest priority)
consistency with the Engine API
consistency with the front end

the latter two I added because if we are all using the same terms everywhere we will be less confused and new folks starting will have a consistent set of names to talk about the same things.

How about just "sketch" and "solid" for the 2d and 3d shapes? I'm open to Solid3d as well I just think it's strange that there's no solid2d to match.

ya i like that!


Add a note about updating to IL2CPP

MRTK v2 currently requires IL2CPP, so let people know they need to make this change in their projects.
Also replace an html based link with a markdown based link.

OPS Build status updates of commit b0b839e:
:warning: Validation status: warnings

File
Status
Preview URL
Details

mixed-reality-docs/mrtk-porting-guide.md
:warning:Warning
View
Details

mixed-reality-docs/mrtk-porting-guide.md

[Warning] Author author:grbury cannot be recognized in GitHub.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Bug/dep vulnerabilities

Proposed Changes
Please use the Jira Key followed by the changes

JIRAKEY-1234

Some change
Another change

Checklist

[ ] I have added or updated unit tests
[ ] I have added or updated integration tests (if appropriate)
[ ] I have added or updated documentation / readme (if appropriate)
[ ] I have verified that my changes have not introduced new lint errors
[ ] I have added a GitHub labels to the PR for either patch, minor, or major

Testing Instructions

@ivanovSPvirtru @jrschumacher I think this PR will resolve most, if not all, of the critical vulnerabilities I am seeing in Nexus IQ. What is the ETA on getting this completed, merged in, and released? I added this repository to the Admin Console since react-components is deprecated, but my PR is blocked until the vulnerabilities are resolved.

One additional vulnerability to be resolved is node-fetch, which appears to be a dependency of @nivo/core

└─┬<EMAIL_ADDRESS><EMAIL_ADDRESS>  └─┬<EMAIL_ADDRESS>    └─┬<EMAIL_ADDRESS>      └─┬<EMAIL_ADDRESS>        └─┬<EMAIL_ADDRESS>          └──<EMAIL_ADDRESS>
A minimum of Node 2.6.1 is required to prevent a build failure in Nexus IQ.

npm issues were fixed in #164
Storybook V6 upgrade will be addressed in a forthcoming PR.


Develop update

add application: Basketball Action

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: macaihong:x: linrjingmacaihong seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


UTF-8 logs

When outputting my logs with cat some special characters are replaced with '?', for example characters with accents.
When I manually prepend the UTF-8 BOM to the log file, cat displays all characters properly.

Want to back this issue? Place a bounty on it! We accept bounties via Bountysource.

Fix your terminal.

I have the following environment variables set to
LANG=fr_FR.UTF-8
LC_CTYPE=fr_FR.UTF-8

The file utility reports a ISO-8859 text file type.
Not saying that my terminal doesn't need fixing and that the issue is with ZNC, trying to get a correct understanding of the issue.

I see this happening when I try to open logs written by ZNC in GUI text editor, but no issues with terminal ones or cat.

@Mikaela I reproduced it with vim until I forced the text encodings to UTF-8

cat only deals with bytes, it doesn't do any encoding, so LANG and LC_* are not relevant here - your terminal isn't parsing UTF-8 correctly without a BOM, maybe?

Which ZNC version? In 1.5/1.6b you can configure client and server encodings, and they will be applied on those borders, while internally it's UTF-8 everywhere.

Looks like it's ZNC 1.2
So that doesn't look like a real issue if up-to-date versions allow for encoding diddling.
Thank you for your answers !


Minor changes

MODE-1402 A recent commit removed the 'name' field on sequencers, extractors, and security providers definitions. This was problematic for the JBoss AS subsystem, so the name has been recovered and the 'description' field has been removed (since it is superfluous).
MODE-1378 Recent changes moved the sequencers to 'modeshape-sequencer' (unclear why this was done), and several of the POM files in modules that are not yet used were missing version elementson test dependencies.
MODE-1404 The MimeTypeUtil class might exhibit an NPE if the current thread's context class loader is null. This change corrects the code to prevent an NPE.

Merged into the '3.x' branch.


Remove references to Language Translation

Acceptance Criteria

[ ] Should not mention Language Translation unless is a deprecation notice
[ ] Should not have code that sends requests to language-translation

The code has already been migrated to translator, albeit with min code change by using
from watson_developer_cloud import LanguageTranslatorV2 as LanguageTranslation

This is not about the code not working. We can't use the word LanguageTranslation You need to remove things like LanguageTranslationUtils or LanguageTranslationService

I will comply, but product names I understand, filenames at a stretch, but variable names!!!


VPN sidecar containers: Disable autoscaling and reduce resource requests

How to categorize this PR?

/area auto-scaling networking
/kind bug
What this PR does / why we need it:

Disable autoscaling for the VPN sidecar containers: In the light of https://github.com/gardener/gardener/issues/9866, we decided to directly disable the autoscaling for the VPN sidecar containers instead of preserving the container resource requests.

The resource usage of the VPN sidecar containers is looks stable.
The below tables are from a landscape from the last 7days.
cpu
| component           | usage max | usage min | usage avg | requests | limits |
|---------------------|-----------|-----------|-----------|----------|--------|
| vpn-client-0        | 316m      | 0.4m      | 2.61m     | 100m     | -      |
| vpn-client-1        | 7.48m     | 0m        | 0m        | 100m     | -      |
| vpn-path-controller | 13.1m     | 2.91m     | 4.33m     | 10m      | -      |

memory
| component           | usage max | usage min | usage avg | requests | limits |
|---------------------|-----------|-----------|-----------|----------|--------|
| vpn-client-0        | 5.87MiB   | 1.94MiB   | 2.13MiB   | 100Mi    | 100Mi  |
| vpn-client-1        | 5.05MiB   | 1.91MiB   | 2.1MiB    | 100Mi    | 100Mi  |
| vpn-path-controller | 4.86MiB   | 1.29MiB   | 1.37MiB   | 20Mi     | 50Mi   |

@MartinWeindel also shared that the sidecar containers should not be autoscaled as vpn-client-0 or vpn-client-1 work in active-passive mode and for example vpn-client-1 should not be down-scaled as this can potentially cause issues when vpn-client-1 takes over the active role.

Reduce resource requests for the VPN sidecar containers: Based on the data from the above tables, I decided to reduce the resource requests for the VPN sidecar containers as follows:

vpn-client-0 and vpn-client-1:
  resources:
    requests:
-      cpu: 100m
-      memory: 100Mi
+      cpu: 20m
+      memory: 10Mi
    limits:
      memory: 100Mi

vpn-path-controller:
  resources:
    requests:
      cpu: 10m
-      memory: 20Mi
+      memory: 10Mi
    limits:
      memory: 50Mi

Which issue(s) this PR fixes:
Fixes https://github.com/gardener/gardener/issues/9866
Special notes for your reviewer:
N/A, thanks to @ScheererJ @MartinWeindel and @voelzmo for the internal discussion
Release note:

gardenlet: An issue causing gardenlet to trigger unnecessary kube-apiserver rolling updates by reverting the VPN sidercar containers resource requests set by HVPA for HA Shoots is now fixed by disabling autoscaling for the VPN sidecar containers.

The resource requests of the `vpn-client-{0,1}` sidecar container are reduced from 100m and 100Mi to 20m and 10Mi. The resource requests of the `vpn-controller-path` sidecar container are reduced from 20Mi to 10Mi.

/cherry-pick release-v1.96


Service to get fuel price on custom postal code

Service that is called with args fuel type, country and postal code should give in return the cheapest fuel price and location.
Can be used to create an automation which compares the fuel cost of your current location with the fuel cost of your home location and notify you if (much) cheaper

created in v3.0.0, example service call and automation info added in readme


require fix

Won't work for injected scripts (Package.Require(other_package_name/.../*.lua or Package.RequirePackage scripts) because you don't want my source convention for them.
Also adds a string.split(str, sep) function in the string library.

Fixes issue https://github.com/nanos-world/issues/issues/929

Thanks for the PR, I'm going to close this as I'm going to give a global solution for this issue


setup page theme aware fix

Code changed in App.css, App.tsx, ModelList.tsx and ProgressBar.tsx
UI Design Changes.
Dark Mode UI Design Fixes

please rebase your commits (git rebase main; git push -f)


Heltec code generation and branch creation

@ianmuchyri Are we still working in this? If not close the issue with the appropriate comments.

The issue was closed as avionics we will not be using the heltec LoRa


#90

General
Closes #90
Added label Free and added selected user if only 1 account exists

Forwarded


Shutdown handling

I'm working on panic handling in my application, and this especially involves properly shutting down Gtk. During this, I noticed that currently woab only shuts down (= stop all the actors) when the application exits. This is no longer appropriate for my application, because I want to run code between Gtk shutdown and application exit.

What exactly do you want here? Once GTK shuts down, it will no longer send signals and no longer trigger the idle handler that cranks the Actix runtime. So the actors are still "up" but they are not going to get any more execution time.
Or do you need a way to shut down the Actix runtime? To invoke System.stop?

Or do you need a way to invoke System.stop on the Actix runtime WoAB is using?

Effectively, yes. Users have to run run_actix_inside_gtk_event_loop as a pre-GTK hook, so a post-GTK hook that does the appropriate shutdown would be good to have. Maybe we can have a shutdown hook on application, but not sure how reliable this would be.

Can do. I'm not going to automatically hook it up to application shutdown - that should be easy enough to do once I provide the function, and I see no benefit in WoAB doing that registration for you.

Okay, I found an issue that I didn't think of previously: There is no way to query whether the woab engine is running. An attempt to shut down a non-running engine will result in a panic.
This means that when I write this code in the panic hook, and my application panics before WoAB got started, I end up in a double panic abort.

woab::close_actix_runtime currently returns a Result<(), std::io::Error>, where the error is what actix::SystemRunner::run would return (I don't know in which cases - I guess it depends on stuff that happen inside the actors?)
I think it is justified to have nested Result here:
pub fn close_actix_runtime() -> Result<Result<(), std::io::Error>, StopError> {

Where:
#[derive(thiserror::Error, Debug)]
pub enum StopError {
    #[error("Cannot stop the WoAB runtime because it was not started")]
    RuntimeNotStarted,
    #[error("Cannot stop the WoAB runtime because it is currently in use. Try stopping it with `actix::System::current().stop();` instead")]
    RuntimeInUse,
}

Then you can match on the outer Result and decide to either not stop the WoAB runtime or stop it with actix::System::current().stop().
The reason I don't want to actix::System::current().stop(); inside woab::close_actix_runtime when the runtime is being in use is that I won't be able to wait for it to finish. This will have to be done externally somehow. I'm not sure you even can - if you are doing it in a panic handler, then maybe the runtime got into an illegal state and cannot finish?

I thought about doing a nested Result, but using an Other(io::Error) variant would be fine for me too. Regardless, I think we should still provide a method to query WoAB's running state because somebody is going to need it sooner or later for some reason or another.

I'm not sure you even can - if you are doing it in a panic handler, then maybe the runtime got into an illegal state and cannot finish?

Apart from the fact that panics may happen on other threads (btw I should check what happens in that case due to Gtk thread safety), it has worked surprisingly well so far.


⚠ SceneTime has degraded performance

In dc51795, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 4123 ms

Resolved: SceneTime performance has improved in 2cd74cd after 6 minutes.


Clarity

1 Opaque

Can you add more details ? Because of the translation ?

translation in french

Lower the baseline knowledge needed to play the game

Maybe with images

Solved in this PR: https://github.com/mdbesten/what-could-go-wrong-llm/pull/66


[1] Club Card Component

Do all work for this task in a branch called issue-13.
Edit the make card function in the Profiles.jsx file to make the card like the mockup card design, reference project page for design
Should include button to allow users to favorite/bookmark clubs
Should redirect user to the more info page when clicked.

I worked on styling the Card Component to match the design theme


POST Mutipart: Use charset "UTF-8" instead of "ASCII" as default char…

…set to support internationalization
Solves: https://github.com/dakrone/clj-http/issues/394

Thanks @frericksm!


[bug] cfg explore clear button produces error

when clearing the config explorer view, it produces a error.  this breaks the flow of a user being able to clear and explore different ns configs without reloading the entire window/extension

fixed in v1.0.0


Can't get example to work

I'm on ubuntu 14.04 with the latest version of browserify.
I can't get the simple example to work
git clone git@github.com:substack/factor-bundle.git
cd factor-bundle/example/files
mkdir bundle
browserify x.js y.js > bundle.js
browser-unpack < bundle.js | factor-bundle   x.js -o bundle/x.js   y.js -o bundle/y.js   > bundle/common.js

This results in the creation of bundle/common.js but no x.js or y.js

It seems without adding --full-paths to browserify, the indexes are numeric and thus there's no way (save from providing an rmap) or matching the input files to the modules.
I have submitted a pull request to fix the documentation (https://github.com/substack/factor-bundle/pull/56)

factor-bundle is supposed to work with indexes, as it creates a mapping as the files pass through, passing --full-paths shouldn't be needed.
I'll look when I get a chance.

I don't see anything like that being created. It's not in the bundle.js after I do this:
cd test/deps
browserify x.js y.js > bundle.js

If I do browser-unpack < bundle.js there is no mention of x.js or y.js...they've become 2 and 3.
Interestingly enough, when I call it as a plugin of browserify: browserify x.js y.js -p [ ../../ -o bundle/x.js -o bundle/y.js ]   -o bundle/common.js it does work correctly.
This is great, but it doesn't fit my workflow (I don't know all the js ahead of time, and I'm calling browserify with a glob.


multiple synchronized monolingual slidesm using multiplex?

I have a presentation with interpretation into hegemonic languages. I would like to have the slides on my main screen in my minority and marginalized language, in which I am going to give the presentation, and provide the few audience members who understan hegemonic languages with the URL where they can simultaneously view the translated slides.
It would seem possible that with revelajs + multiplex, my_slides+translation_1+translation_2 can be presented simultaneously, each through its own URL.
It seems to me that it is not implemented, so if you consider it interesting I ask you to evaluate the possibility of implementing such a solution, for multiple simultaneous outputs.
Thank you very much for the work that you are doing.

Hi,
this does not need anything special to be supported.
I made a simple set of files, e.g. index-master.html, index-en.html, index-pt.html.
Both index-en.html and index.pt.html point to the same multiplex server, with secret null and same socket id.
You have to have equal number of slides and slides in the same order and that is it. There is no special intelligence, it only transmits event to change a slide.
First slide of the presentation could contain qr codes for the languages available, so that your audience can scan it on their phones.

This is very good news.
The urgency has passed me by and I'm now half drowned with other urgencies, but I hope that from now on we will hear echoes of this possibility in our minority language communities.
Thank you very much for your explanation


Coverage when using mocha --watch

nyc works as expected unless I add --watch flag to mocha, in which case no coverage is generated at all, nor is the .nyc_output folder populated with anything. Is this something that would be expected to work?
NODE_ENV=test ./node_modules/.bin/nyc --require babel-core/register --reporter=lcov mocha "test/**/*spec.js" --require ./test/helper.js --watch

Is this something that would be expected to work?

No. nyc only generates coverage when all child processes exit, which is not the case in --watch mode. You'll have to generate coverage separately I'm afraid.

Is it possible that this behavior could be changed? I'd really like to be able to update the coverage as I'm adding to my tests. It's very helpful to be able to see quickly what changes improve coverage. I'd even be willing to help with a PR if given a little guidance. I just spent a little time browsing through the code and I understand parts of it now. Thanks

I am facing the same issue. I understand that as per current workflow it might be difficult to generate the coverage report after every execution of all the suites.
I have a mocha-based setup. And one thing you can do pretty easily in mocha is to create custom reporter. I recently used this technique to combine multiple reporters. You may also refer to this tutorial: https://mochajs.org/api/tutorial-custom-reporter.html
I think a viable solution might be to create different packages for different test frameworks to add event handlers accordingly. For example, I tried the following (although without 100% success), to tap into mocha's events
runner.on(mocha.Runner.constants.EVENT_RUN_END, () => {
  const nycReport = spawn('nyc', ['report', '--nycrc-path', './tests/nyc.config.js'], { shell: true });
  nycReport.stdout.on('data', (data) => {
      console.log(data.toString());
  });
  nycReport.on('close', () => {
      kill(nycReport.pid);
  });
});

I am not sure whether this is the way to go. Just wanted to throw this idea here, as this is quite a common requirement, and the argument "covering the watch mode is useless" does not hold.


[FEAT] Add secp-192r1 support as Russia passport uses it for Chip Authentication

Describe the feature
secp-192r1 support is required as Russia uses it for Chip Authentication.
Describe alternatives you've considered
n/a
Additional context
Russia passport using it for Chip Auth.

Added secp-192r1 support.
Will leave this ticket open until the change has been verified on a real passport (e.g. RU) and unit-tests have been included.


Support eth staking BLS keys per eip-2334

https://eips.ethereum.org/EIPS/eip-2334

https://github.com/paulmillr/bls12-381-keygen#bls12-381-keygen

i've made it esm-only - lmk if you'll need to bring back common.js


Fixed diag related issue for data collection.

Log files were not getting generated if there are white spaces in the path.
This PR fixes the issue.

@harshjain2,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Question: How do I handle the state from child to parent component?

I have come across this issue multiple times when the state isn't managed correctly when we make changes in state in child component or file but those changes in the state are not been reflected back to the parent component or file. It looks like it is not reachable but using a global variable instead of useState fix the issue. How and Why?

Hello, I'm not sure I understand you very well. But do you want to manage your state globally? You can check out libraries like Redux and Context API. With Redux you can keep your state in one place, in the store, and access from any component. Context API provides a way to share values between components without having to explicitly pass a prop through every level of the tree. In both approaches you will be able to access the same state in different components.

I have used Redux but there are some states that don't require to be stored globally on redux. It is used just once sometimes and limited to that particular page only. Like a state that stores temporary data.

Support requests filed as GitHub issues often go unanswered. We want you to find the answer you're looking for, so we suggest the following alternatives:
Coding Questions
If you have a coding question related to React and React DOM, it might be better suited for Stack Overflow. It's a great place to browse through frequent questions about using React, as well as ask for help with specific questions.
https://stackoverflow.com/questions/tagged/react
Talk to other React developers
There are many online forums which are a great place for discussion about best practices and application architecture as well as the future of React.
https://reactjs.org/community/support.html


Store in user profile their selected (primary) language

I propose that the user's selected language be stored in their profile? This would allow the the language selector to sets to their preferred language. There could be other benefits to having their primary language available.
I can help make the changes, when I get the time, but I am curious what everyone's opinion of this is. It is a good idea or not?

Welcome to submit PR


Try Other State of the Art TTS Models

https://github.com/SWivid/F5-TTS F5-TTS: A Fairytaler that Fakes Fluent and Faithful Speech with Flow Matching
https://github.com/kyutai-labs/moshi a speech-text foundation model for real time dialogue
https://github.com/2noise/ChatTTS A generative speech model for daily dialogue.
https://github.com/fishaudio/fish-speech Brand new TTS solution
https://www.microsoft.com/en-us/research/project/e2-tts/

Just a +1 for f5tts if possible,.
there is an api for it now and the repo is very active with contributions not to mention it sounds great.
Thanks in advance.

Could you add https://huggingface.co/parler-tts/parler-tts-large-v1? The demos are pretty impressive!

Would also love to see some of these newer models added


DynamicResource fails to update some Controls

repro branch:
https://github.com/AvaloniaUI/Avalonia/tree/repro/dynamic-resource-bug
this repro simply switched theme every 5 seconds, see MainWindows.xaml.cs (ControlCatalog)
 public MainWindow()
        {
            this.InitializeComponent();
            this.AttachDevTools();
            //Renderer.DrawFps = true;
            //Renderer.DrawDirtyRects = Renderer.DrawFps = true;

            var timer = new DispatcherTimer();

            LoadTheme(ColorTheme.VisualStudioLight);

            timer.Interval = TimeSpan.FromSeconds(5);
            timer.Tick += (sender, e) =>
            {
                if (set)
                {
                    LoadTheme(ColorTheme.VisualStudioLight);
                }
                else
                {
                    LoadTheme(ColorTheme.VisualStudioDark);
                }

                set = !set;
            };

            timer.Start();
        }

        public void LoadTheme(ColorTheme theme)
        {
            Resources["ThemeBackgroundBrush"] = theme.Background;
            Resources["ThemeControlDarkBrush"] = theme.ControlDark;
            Resources["ThemeControlMidBrush"] = theme.ControlMid;
            Resources["ThemeForegroundBrush"] = theme.Foreground;
            Resources["ThemeBorderDarkBrush"] = theme.BorderDark;
        }

if you move to a branch where there is a scrollbar... you will see all controls are changing colours, but the scrollbars don't change, even though their templates do use DynamicResource.

it basically seems to choose the theme that is loaded when the view is created, but after that wont change, you can see that because if you change page when on one theme, scrollbars keep the colours for the theme you where on when you changed the page.

Also affects context menu, if you goto the context menu page, and open the context menu when it is on dark theme, then it will still be white, ContextMenu doesn't get added to LogicalChildren.


Cannot send message

I have check deployment center, restart 3 functions and app service.

Function sync failed :

How to resolve the issue of being stuck in the "Sending" stage when sending a message?

Hi @mavistangtpl ,
Thanks for raising the query.

Please check the set-up authentication part whether it has been configured correctly or not.
In the overview section of Graph app, Supported account type for graph app should be My Organization

There might be chance of secrets incorrectly configured. Please cross-verify.

Go to app registration-->open author app registration-->click certificate and secrets-->Grab secret value(not id)

Go to azure portal-->Go to resource group(Where the deployment has been done)-->Select keyvault  from list of resources

Go to Access Policy--> Click on Create

Select Key, secret and certificate management

Give the Id through which one can view the secrets

3rd step is optional

Go for Review+Create

Then go to Secrets. You will be able to view the secrets. Compare each app secret from keyvault with app registration secret.

Thanks @gsv022
I've already compared each secret according to your steps, but the situation remains the same. The sync of the "Function App" still fails.

@mavistangtpl , Please disconnect and give some time then connect function app in the deployment center. This would make function app successful.

@gsv022, Sorry for the confusion. I'd like to clarify which function app is being disconnected: data-function, prep-function, or function? Also, approximately how long does it take to reconnect?

@mavistangtpl , As quoted by you- The sync of the "Function App" still fails.
Perform disconnect, give some 10 minutes of time. Then connect it to the official repository. This would take around 10-15minutes.

@mavistangtpl , As quoted by you- The sync of the "Function App" still fails. Perform disconnect, give some 10 minutes of time. Then connect it to the official repository. This would take around 10-15minutes.

@gsv022 , I've already tried your method, but the result is still a failure.

@mavistangtpl ,Please share your id so that we can discuss the issue internally


RTL not working when apply theme bootstrap 4

When enable bootstrap 4 theme on latest version of select 2 with rtl direction it return to ltr and when disable theme it working great again.

I would recommend posting this bug report on the tracker for select2-bootstrap4-theme: https://github.com/ttskch/select2-bootstrap4-theme

This appears to be an issue that is not directly related to Select2, but instead is related to an integration or downstream project that is not officially supported by Select2.  It is recommended that you create a ticket at the downstream repository or send a message to the mailing list for help.


Allow download destination to only respond to #write

According to the documentation the destination IO only needs to respond to #write. However, the downloader breaks this by calling #flush. It so happens that I wanted to use a download destination which responds only to #write.
This PR fixes this by calling #flush on the destination IO only if it responds to it. We also add a test to enforce that the destination IO only needs to respond to #write.

Coverage remained the same at 96.081% when pulling<PHONE_NUMBER>a361a462b9474a89030e5a64b4ea02 on janko-m:allow-download-destinations-to-only-respond-to-write into 33497b6dd819bb292d82757e4fe5be3baf24eef4 on google:master.

Coverage remained the same at 96.081% when pulling<PHONE_NUMBER>a361a462b9474a89030e5a64b4ea02 on janko-m:allow-download-destinations-to-only-respond-to-write into 33497b6dd819bb292d82757e4fe5be3baf24eef4 on google:master.


Add GetBlock to External Services

Can you, please, let me know, when the pull request can go through?

Can you, please, update me here?

This is now approved. I made a few fixes and reordered this list. Merging now.

This is now approved. I made a few fixes and reordered this list. Merging now.
Thank you for adding this!

Thank you so much!

This is now approved. I made a few fixes and reordered this list. Merging now.
Thank you for adding this!

Hello!
Just found out that the links are not correct, they work only for the dedicated nodes, but not for our shared nodes.
The correct links for the shared nodes:
ETH_URL=wss://eth.getblock.io/rinkeby/?api_key=YOUR_API_KEY
ETH_URL=wss://eth.getblock.io/kovan/?api_key=YOUR_API_KEY
ETH_URL=wss://eth.getblock.io/ropsten/?api_key=YOUR_API_KEY
ETH_URL=wss://eth.getblock.io/goerli/?api_key=YOUR_API_KEY
ETH_URL=wss://eth.getblock.io/sepolia/?api_key=YOUR_API_KEY
ETH_URL=wss://eth.getblock.io/mainnet/?api_key=YOUR_API_KEY

This is now approved. I made a few fixes and reordered this list. Merging now.
Thank you for adding this!

Hello! Just found out that the links are not correct, they work only for the dedicated nodes, but not for our shared nodes.
The correct links for the shared nodes:
ETH_URL=wss://eth.getblock.io/rinkeby/?api_key=YOUR_API_KEY ETH_URL=wss://eth.getblock.io/kovan/?api_key=YOUR_API_KEY ETH_URL=wss://eth.getblock.io/ropsten/?api_key=YOUR_API_KEY ETH_URL=wss://eth.getblock.io/goerli/?api_key=YOUR_API_KEY ETH_URL=wss://eth.getblock.io/sepolia/?api_key=YOUR_API_KEY ETH_URL=wss://eth.getblock.io/mainnet/?api_key=YOUR_API_KEY

I made a PR with a fix here: https://github.com/smartcontractkit/documentation/pull/649
Thank you for the followup!

#649

Great! Thank you so much!


False detection of 'PROBLEMS'

Issue Type: Bug
The issue occur occasionally when writing code, so I could not provide exact steps to reproduce it.
Visual Studio Code showing False detection of errors at 'PROBLEMS' in panel( the panel where Problems, Output, Debug Console and Terminal Sections are present ). It is showing errors based previous typed characters because it  occasionally freeze updating the 'problems section in panel' while writing code. The issue will get resolved only when I restart VSCode. I am having this issue while using WSL2, so not sure whether it will happen when not using WSL2.
VS Code version: Code 1.58.2 (c3f126316369cd610563c75b1b1725e0679adfb3, 2021-07-14T22:10:15.214Z)
OS version: Windows_NT x64 10.0.19043
Restricted Mode: No
Remote OS version: Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

System Info

Item
Value

CPUs
11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz (8 x 1382)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.73GB (10.54GB free)

Process Argv
--crash-reporter-id d78d9355-a45d-4e31-8ebf-f056601abaf7

Screen Reader
no

VM
0%

Item
Value

Remote
WSL: Ubuntu-20.04

OS
Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

CPUs
11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz (2 x 1382)

Memory (System)
3.84GB (3.40GB free)

VM
0%

Extensions (12)

Extension
Author (truncated)
Version

bracket-pair-colorizer-2
Coe
0.2.1

remote-wsl
ms-
0.58.2

debugger-for-chrome
msj
4.12.12

material-icon-theme
PKi
4.8.0

open-in-browser
tec
2.0.0

highlight-matching-tag
vin
0.10.1

material-theme
zhu
3.11.1

competitive-programming-helper
Div
5.8.5

prettier-vscode
esb
8.1.0

code-runner
for
0.11.5

cpptools
ms-
1.5.1

vscodeintellicode
Vis
1.2.14

Please file the issue against the extension that is generating these problems.


Add CONTRIBUTING.md

Describe how one can contribute to this repository
https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution
https://github.com/emdupre/me-ica/blob/py3/CONTRIBUTING.md
We need to add extra lines about the wiki

I noticed that in the BIDS repo contributors are recognized in the BIDS spec (https://docs.google.com/document/d/1HFUkAEE-pB-angVcYe6pf_-fVf4sCpOHKesUvfb8Grc/edit#heading=h.hds2i7ii7hjo). @chrisfilo do you have a good suggestion of where to recognize bids-starter-kit contributors?

I would recommend it goes into the same place. This will ensure highest
visibility for all contributors.
Best,
Chris
On Oct 30, 2017 1:51 PM, "dorahermes"<EMAIL_ADDRESS>wrote:

I noticed that in the BIDS repo contributors are recognized in the BIDS
spec (https://docs.google.com/document/d/1HFUkAEE-pB-angVcYe6pf_-
fVf4sCpOHKesUvfb8Grc/edit#heading=h.hds2i7ii7hjo). @chrisfilo
https://github.com/chrisfilo do you have a good suggestion of where to
recognize bids-starter-kit contributors?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/INCF/bids-starter-kit/issues/2#issuecomment-340580282,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAOkp9Y8kG5tUMzNCdbGDVR5fxH3wfQcks5sxja3gaJpZM4P56Bf
.

+1 to piggy-backing on pre-existing material. We don't wanna fracture too much!

Done (and I added @choldgraf and me as contributors in the BIDS spec ;)

yay!
On Mon, Oct 30, 2017 at 2:07 PM dorahermes<EMAIL_ADDRESS>wrote:

Done (and I added @choldgraf https://github.com/choldgraf and me as
contributors in the BIDS spec ;)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/INCF/bids-starter-kit/issues/2#issuecomment-340584797,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABwSHbD8ntiiDa4RjoglwigfZrFvOsSeks5sxjqdgaJpZM4P56Bf
.


iCub "falling" in Gazebo

Hi,
I am migrating from iCub_SIM to Gazebo, but the iCub appears to "fall" whenever I send a command to the Cartesian controller in Gazebo.
I am using the command goToPose(xd, od) to set the right end-effector to:
xd = -0.4 : 0.1 : 0.2
od = -0 : 0.707107 : -0.707107

It works very well with the iCub_SIM, but not with Gazebo (see enclosed screen-shots)
I tried to start the wholeBodyDynamics or/and the gravityCompensator with the "robot" variable set to  icubGazeboSim, but it still does the same thing (i.e. falling down).
Any idea why this is happening?
Best,
Jimmy Baraglia

I think that the problem is that in Gazebo simulation, the velocity control is not properly tested/tuned (see https://github.com/robotology/gazebo-yarp-plugins/issues/240).
This is happening because simCartesianControl is using velocity control by default, you can try to make it use the POSITION_DIRECT mode by setting the PositionControl option of the simCartesianControl to on.

I changed the option PositionControl to "on" in simCartesianRightArm.ini and simCartesianLeftArm.ini.
It worked perfectly, thank you.
Cheers,
Jimmy

I still have the falling problem even though I change PositionControl to on in both simCartesianRightArm.ini and simCartesianLeftArm.ini. I am running tutorial_cartesian_interface from icub-tutorials. After two second running the code iCub falls backwards.

By default no balancing controller is running on icub when simulated on Gazebo. To simulate the robot
as if it was fixed on a fixed base, can you try to launch  the iCub (fixed) model?
If that model is without hands we need to updated it, it is not a big problem.

Thank you very much @traversaro, with iCub (fixed) it is working now. I wonder why same code causes falling in Gazebo but not in default simulator? From your point is some kind of balancing controller running when we run iCub_SIM  ?

@tkelestemur there's no balancing in iCub_SIM, and be also careful because fixed_hip is on by default in iCub_SIM; that's why usually you don't see any fall of the iCub therein.
That being said, it would be normal any how to get different results with different simulators.


Switch to purescript-nonempty

Not ready to merge yet. Waiting on paf31/purescript-nonempty#1 (or some other equivalent solution to be merged).

Ok, this is good to go now.


"Oh, no" error on chrome using the camera

Hi,
The "Oh, no" chrome error appears when the application is executing during a few minutes without read any code.
Have you ever come across with that problem?
Thanks in advance!
fjgc

Hello,
I have this problem only when i'm using my app on android devices. In other issue you can found what variables you should decrease to improve the library performance.
PDT: If you find a way to select the second camera automaticly i will be happy jajaj
Good Look.

Hello
The new Chrome versions freezing sometimes for me (on all pages). :(
Examples for camera selection:
/* Select environment camera if available /
decoder.buildSelectMenu('#camera-select', 'environment|back').init(args);
/ Select user camera if available /
decoder.buildSelectMenu('#camera-select', 'user|front').init(args);
/ Select camera by name /
decoder.buildSelectMenu('#camera-select', 'facecam').init(args);
/ Select first camera /
decoder.buildSelectMenu('#camera-select', 0).init(args);
/ Select environment camera if available, without visible select menu*/
decoder.buildSelectMenu(document.createElement('select'), 'environment|back').init().play();

For optimal working, this plugin requires strong hardware.
To reduce the processor usage, set  lower rate for decoding and displaying.


Add tests and sage to bn254

Add tests and sage

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

Comparison is base (b04f7c3) 94.40% compared to head (fd30b39) 94.41%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #792   +/-   ##
=======================================
  Coverage   94.40%   94.41%
=======================================
  Files         148      148
  Lines       34118    34150   +32
=======================================
+ Hits        32210    32242   +32
  Misses       1908     1908

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


[TransitioningContentControl] Don't reomve old content from LogicalTree unitl the out animation is over

What does the pull request do?

[ContentControl] Make ContentChanged method protected virtual, so that a method inheriting can override it and do nothing.
[TransitioningContentControl] override ContentChanged method and do nothing until the out animation over.
Add unit test.

Checklist

[x] Added unit tests (if possible)?
[x] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/Documentation with user documentation

Breaking changes
No.
Fixed issues
Fixes #9802

You can test this PR using the following package version. 11.0.999-cibuild0027927-beta. (feed url: https://pkgs.dev.azure.com/AvaloniaUI/AvaloniaUI/_packaging/avalonia-all/nuget/v3/index.json) [PRBUILDID]


How to change video decoder from SW to HW or HW to SW ?

Want to add SW and HW Decoder feature to existing Just video player. how to do it?

Just Player uses ExoPlayer which already manages and selects the best suitable device decoder. If you want to modify that, I suggest you looking at https://github.com/google/ExoPlayer.


Feature/docker-and-caching-refactor

Hey,
Cool little tool, i had the same wants when i stumbled across your project today, just wanted to also rerun this off a cron in my server to automate things further
This pr does a few things so feel free to just deny and i can just run off my fork otherwise lmk if anything seems off.

Adds a dockerfile and workflow to build and publish this dockerfile to ghcr (should just run each merge to main)
Refactor the code a bit to make it a little easier to understand organization wise
Refactored config related code into its own spot, made a few of the user inputs configurable aswell as the download folder

All of these changes should be NO OP changes (hopefully)

added a new feature of cacheFile, this just saves the downloaded file's ids so that extra runs will simply skip (similar to the logic around checking by filenames just more strict as ids shouldnt change (i think?))
added logic to customize the titles of the videos, defaulting to the current logic of date_title

As for you testing, you should be able to just run it as always and all the defaults should make it work as it did before LMK if you notice anything otherwise
if you want to try the image simply just run docker run -v config.json:/app/config.json  -v downloads:/downloads ghcr.io/phyzical/medal.tv-bulk-downloader:latest
The only thing i couldn't work out as im not a huge python user is to avoid throwing the config around to all the funcs and just import on use,(ran into issues due to cyclic dependencies (if you can think of a better way to pull this off it'll make the code a bit cleaner))
Thanks!

Thank you for your contribution! I've reviewed your changes and made a few additional improvements:

Updated the load_cache function in src/helpers.py to fix a TypeError that occurred with empty or non-existent cache files.
Improved the README for better readability.
Verified that the Docker setup works correctly.

Everything looks great now. I'm approving this PR and will merge it shortly. Thanks again for your valuable work on enhancing the project 😆!