SSD-MobileNet processes 4885 images

When analyzing the LoadGen output from running SSD-MobileNet on 5,000 images in the Offline mode, we've noticed that only 4,885 image ids appear in the results:
$ ipython

In [1]: import json

In [2]: with open('TestScenario.Offline.json') as f: j = json.load(f)

In [3]: len(j)
Out[3]: 21981

In [4]: len(set([ v['image_id'] for v in j ]))
Out[4]: 4885

The same for SingleStream.
/cc @me2x

I can confirm this happens also in the Server and MultiStream scenarios.

A couple questions:

Is the performance sample count 5000?
Does the situation improve as you increase the min_duration or min_queries in TestSettings?

The samples are chosen randomly (distributed uniformly and with replacement), so the expected number of queries we'd need before all samples are visited will be very high (I think on the order of 5000^2).
Maybe we could change the rules for 0.6 so that we don't sample uniformly and used some kind of stratisfied sampling, but I don't think we'd change it for 0.5 at this point.

@briandersn Are you saying this behaviour is expected? The accuracy mode works as (we) expected for image classification, i.e. prints the Top1 accuracy over the ImageNet validation set.
$ ck install package --tags=dataset,coco,2017,val
$ export DATA_DIR=`ck locate env --tags=dataset,coco,2017,val`

$ ck install package --tags=mlperf,object-detection,model,tf,ssd-mobilenet,non-quantized
$ export MODEL_DIR=`ck locate env --tags=mlperf,object-detection,model,tf,ssd-mobilenet,non-quantized`

$ export EXTRA_OPS="--accuracy --count 5000 --scenario Offline"
$ ./run_and_time.sh tf ssd-mobilenet cpu
...
STARTING RUN AT 2019-08-15 10:03:39 AM
INFO:main:Namespace(accuracy=True, backend='tensorflow', cache=0, count=5000, data_format=None, dataset='coco-300', dataset_list=None, dataset_path='/home/anton/CK_TOOLS/dataset-coco-2017-val', inputs=['image_tensor:0'], max_batchsize=32, max_latency=[0.01], model='/home/anton/CK_TOOLS/model-tf-mlperf-ssd-mobilenet/ssd_mobilenet_v1_coco_2018_01_28.pb', output='/output/results.json', outputs=['num_detections:0', 'detection_boxes:0', 'detection_scores:0', 'detection_classes:0'], profile='ssd-mobilenet-tf', qps=10, queries_multi=24576, queries_offline=24576, queries_single=1024, scenario=[TestScenario.Offline], threads=8, time=None)
WARNING: Logging before flag parsing goes to stderr.
I0815 10:03:42.282268<PHONE_NUMBER>46784 coco.py:96] loaded 5000 images, cache=0, took=0.9sec
W0815 10:03:43.189779<PHONE_NUMBER>46784 deprecation_wrapper.py:119] From /mlperf/python/backend_tf.py:41: The name tf.Session is deprecated. Please use tf.compat.v1.Session instead.

2019-08-15 10:03:43.191289: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-08-15 10:03:43.218427: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-08-15 10:03:43.218904: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x55f1655abf50 executing computations on platform Host. Devices:
2019-08-15 10:03:43.218926: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): <undefined>, <undefined>
2019-08-15 10:03:45.778459: W tensorflow/compiler/jit/mark_for_compilation_pass.cc:1412] (One-time warning): Not using XLA:CPU for cluster because envvar TF_XLA_FLAGS=--tf_xla_cpu_global_jit was not set.
 If you want XLA:CPU, either set that envvar, or use experimental_jit_scope to enable XLA:CPU.  To confirm that XLA is active, pass --vmodule=xla_compilation_cache=1 (as a proper command-line flag, not via TF_XLA_FLAGS) or set the envvar XLA_FLAGS=--xla_hlo_profile.
I0815 10:03:46.133154<PHONE_NUMBER>46784 main.py:527] starting TestScenario.Offline
loading annotations into memory...
Done (t=0.69s)
creating index...
index created!
Loading and preparing results...
Converting ndarray to lists...
(21981, 7)
0/21981
DONE (t=0.10s)
creating index...
index created!
Running per image evaluation...
Evaluate annotation type *bbox*
DONE (t=18.24s).
Accumulating evaluation results...
DONE (t=2.90s).
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.235
 Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets=100 ] = 0.355
 Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets=100 ] = 0.258
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.018
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.171
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.534
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=  1 ] = 0.212
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets= 10 ] = 0.267
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.267
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.022
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.196
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.610
TestScenario.Offline qps=3.26, mean=16.6867, time=49.094, acc=93.312%, mAP=0.235%, queries=160, tiles=50.0:16.9979,80.0:25.4770,90.0:26.4886,95.0:27.9844,99.0:32.4735,99.9:32.4885
ENDING RUN AT 2019-08-15 10:06:28 AM

Here's the generated file (ignore the 1h timestamp difference)
$ ls -la output/ssd-mobilenet-tf-cpu/
total 7496
drwxr-xr-x 2 anton anton    4096 Aug 15 11:06 .
drwxr-xr-x 3 anton anton    4096 Aug 15 11:02 ..
-rw-r--r-- 1 anton anton    3716 Aug 15 11:06 output.txt
-rw-r--r-- 1 root  root     1317 Aug 15 11:06 results.json
-rw-r--r-- 1 root  root  7659312 Aug 15 11:06 TestScenario.Offline.json

And here's the same result:
$ ipython
Python 3.6.9 (default, Jul  3 2019, 07:38:46)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import json

In [2]: with open('output/ssd-mobilenet-tf-cpu/TestScenario.Offline.json') as f: j = json.load(f)

In [3]: len(set([ v['image_id'] for v in j ]))
Out[3]: 4885

The Docker image was built from:
$ git log -1
commit 68e7e9aa1152dee2504f266c373c1fb9c331b64c (HEAD -> master, upstream/master, origin/master, origin/HEAD)
Author: Aaron Zhong<EMAIL_ADDRESS>Date:   Wed Aug 14 10:03:23 2019 +0800

    LoadGen: fix some issues of c api interface
    1. need to include QuerySamplesComplete in c api for SUT to report result
    2. need to include the whole test_settings.h for detailed struct and enum defini

And yes, 5,000 images get loaded, but only 4,885 processed. This affects the mAP score: 0.235 gets calculated but it should be around 0.231. (Ignore % after 0.235 - this is fixed in https://github.com/mlperf/inference/pull/342.)

On 50 images, I get 49 images processed (and 51 loaded):
ipython
Python 3.6.9 (default, Jul  3 2019, 07:38:46)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import json

In [2]: with open('output/ssd-mobilenet-tf-cpu/TestScenario.Offline.json') as f: j = json.load(f)

In [3]: len(set([ v['image_id'] for v in j ]))
Out[3]: 49

A couple questions:
1. Is the performance sample count 5000?

2. Does the situation improve as you increase the min_duration or min_queries in TestSettings?

I tried to change the following parameters:
--time (from 60 to 120)
--max_latency (from 0.1 to 1)
--queries-offline (from default=24576, to 49152)
and nothing changed.
Did you mean one of these or some other parameter?
btw I also noticed that even if I increase the count (let's say at 10k), with accuracy it stops at 5k.

It is expected that performance mode will not necessarily visit every loaded sample.
The mAP score in performance mode will not be used to evaluate whether a SUT meets the accuracy targets. Only the mAP score in the accuracy mode will. Also note that accuracy mode may visit the same sample twice in some cases - the accuracy scripts fo each model should ignore duplicates.

I thought that running as follows:
$ export EXTRA_OPS="--accuracy --count 5000 --scenario Offline"
$ ./run_and_time.sh tf ssd-mobilenet cpu

should launch the accuracy mode and traverse all the samples?

Can you attach the detail loadgen log? It logs every sample loaded and what mode it thinks it's in.

mlperf_log_*
mlperf_log_detail.txt
mlperf_log_summary.txt
mlperf_log_trace.json
mlperf_log_accuracy.json
output/ssd-mobilenet-tf-cpu/*
TestScenario.Offline.json
results.json
output.txt

For the ONNX SSD-ResNet model, I see only 44 images being processed:
$ export MODEL_DIR=`ck locate env --tags=model,onnx,mlperf,ssd-resnet`
$ export DATA_DIR=`ck locate env --tags=dataset,coco,2017,val`
$ export EXTRA_OPS="--accuracy --count 50 --scenario SingleStream"
$ ./run_and_time.sh onnxruntime ssd-resnet34 cpu
...
TestScenario.SingleStream qps=0.35, mean=2.8108, time=144.507, acc=69.531%, mAP=5.249%, queries=51, tiles=50.0:3.0323,80.0:3.1321,90.0:3.1538,95.0:3.1933,99.0:3.3024,99.9:3.3315

$ ipython
Python 3.6.9 (default, Jul  3 2019, 07:38:46)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import json

In [2]: with open('output/ssd-resnet34-onnxruntime-cpu/TestScenario.SingleStream.json') as f: j = json.load(f)

In [3]: len(set([ v['image_id'] for v in j ]))
Out[3]: 44

How weird!

I've a recent Docker image built from:
$ git log -1
commit 2a4cbf75d886ed0880ee317ef90c86ea568c5497 (HEAD -> master, upstream/master, origin/master, origin/HEAD)
Merge: ffe78dc cfb3706
Author: Brian C. Anderson<EMAIL_ADDRESS>Date:   Fri Aug 23 00:27:52 2019 -0700

    Merge pull request #349 from kstreee-furiosa/binary-search

    Implements binary search for MultiStream & MultiStreamFree & Server scenarios.

and gives the same result for SSD-MobileNet as before (i.e. processes 49 images).

I strongly suggest we label this issue as "urgent". Otherwise, we can't reliably calculate accuracy for object detection.

I don't seen anything wrong with the loadgen - though we should figure out how the loadgen is given more samples than exist. Details below.

mlperf_log_*
mlperf_log_detail.txt
mlperf_log_summary.txt
mlperf_log_trace.json
mlperf_log_accuracy.json
output/ssd-mobilenet-tf-cpu/*
TestScenario.Offline.json
results.json
output.txt

I took a look at these files.
mlperf_log_detail.txt indicates the QSL told the loadgen there were 51 total samples.
mlperf_log_accuracy.json has exactly 51 unique responses recorded for samples [0,50].
Were there cases where mlperf_log_accuracy.json didn't have all the responses recorded? You should be able to run this file through the model's accuracy script to get a valid accuracy value.
In one of @psyhtest 's posts, he indicates TestScenario.Offline.json doesn't have all the samples. It's not in a format that I recognize. Is this a file recorded by the reference implementation in the performance run?

@briandersn Do you mean this TestScenario.Offline.json? Yes, it was recorded by the reference implementation with params:
$ export EXTRA_OPS="--accuracy --count 5000 --scenario Offline"
$ ./run_and_time.sh tf ssd-mobilenet cpu

mlperf_log_accuracy.json is the official file to use for accuracy.
The one attached in a comment to this issue has all the samples included. Do you have a version that does not?
TestScenario.Offline.json for accuracy is not supported.

So TestScenario.Offline.json was some debug thing that I used together with tools/coco-analyze.py when we had issues with accuracy. It wasn't really meant to be used for something else but it does have the info people would want.
The official command for accuracy is:
python tools/accuracy-coco.py  --coco-dir /data/NN/coco --mlperf-accuracy-file output/ssd-mobilenet-tf-gpu/mlperf_log_accuracy.json

which reports for --count 500
found and ignored 0 dupes
501 seen, 501 results

Basically, looks good (ok, I should fix the +1 error).
tools/accuracy-coco.py does have a --output-file option that generates the same format as TestScenario.Offline.json. The funny thing is that file has the same issue as Anton reports.
But I now understand why: that format is as a flat array of all results. I has no empty {} in case there are no results for a query and sure enough in mlperf_accuracy_log.json I find entries like:
{ "seq_id" : 25, "qsl_idx" : 317, "data" : "" }

aka the image[317] does not have results. The full list (added a print into accuracy-coco):
29 has no results
317 has no results
284 has no results
273 has no results
393 has no results
138 has no results
373 has no results
235 has no results
449 has no results
278 has no results
25 has no results
403 has no results

I'll take a look at those images to make sure but I think there is no issue here.

Anton, does that makes sense ?

@guschmue I would not be that concerned about having no detections for some images (some images may have no detectable objects, while some models may fail to detect any objects) if it were not for the higher than expected accuracy figures. For example, for the non-quantized SSD-MobileNet model we have previously measured 23.11% via CK, while we are measuring 23.46% via the official app.
I feel uneasy about discarding images having no detections when calculating the accuracy. I believe @me2x has a an idea how to fix that.

So, the issue is that when creating the detection list to use with cocoEval library, only the images that have a detection are inserted in the list of images to evaluate. and the reason is that the empty images ids are not inserted into the ones to evaluate.

So, the issue is that when creating the detection list to use with cocoEval library, only the images that have a detection are inserted in the list of images to evaluate. and the reason is that the empty images ids are not inserted into the ones to evaluate.
This can be easily find if you add the following two lines at the end of accuracy-coco.py
        print("processed {} images".format(len(results) ))
        print("found {} different images".format(len(image_ids) ))

the problem is that when creating the cocoEval object, the ids of the images to evaluate are the one in the image_ids list:
cocoDt = cocoGt.loadRes(detections)
    cocoEval = COCOeval(cocoGt, cocoDt, iouType='bbox')
    cocoEval.params.imgIds = list(image_ids)
    cocoEval.evaluate()
    cocoEval.accumulate()
    cocoEval.summarize()

As for the solution, my idea is to somehow add a "dummy detection" whenever no detection are done by the model, in order to save the image id (that is lost in the entries like { "seq_id" : 25, "qsl_idx" : 317, "data" : "" } and be able to insert it in the image_ids list. However, I don't have anything working at the moment (and I don't know if the solution could be acceptable).
Is there a way to find the image id (as per id in the coco dataset) starting from the qsl_idx? I think that would be a cleaner solution.

If COCOeval if going to look at empty entries ... it its easy enough to add those. Let me check pycoco if it would handle those.

Ok, I have a fix for tools/accuracy-coco.py to deal with no results. Still need to deal with the mAP for the reference app. Because I can not reflect the empty images in the json generated by the reference app I was thinking to remove that so people are using the loadgen log.
The diff in mAP is:
with the fix:
mAP=23.173%
found 5000 results
found 5000 images
found 115 images with no results
ignored 0 dupes

without the fix:
mAP=23.461%
found 5000 results
found 4885 images
found 115 images with no results
ignored 0 dupes

Ok, sent a PR, mAP is now slightly lower at 23.173% for all images.

Does anybody know how does this change affect SSD-R34?

not yet.

@guschmue  is there a bug? I see the following 2 code snippts. Is the tf/resnet accuracy almost 0?
--> this looks ok.
with the fix:
mAP=23.173%
found 5000 results
found 5000 images
found 115 images with no results
ignored 0 dupes
--> this does not look OK
with fix mAP=0.021%
without fix mAP=0.021%
found 4952 results
found 4952 images
found 0 images with no results
ignored 0 dupes

I think I might have copied this down wrong. Can run it again to make sure.

For tensorflow/ssd-resnet34 I can get to the desired accuracy with by setting use_label_map to False.
Basically this line seems wrong:
https://github.com/mlperf/inference/blob/master/v0.5/classification_and_detection/python/main.py#L60
But I'm still looking at it.

@guschmue  all fixed. Please re-open if needed.


changing download/cite buttons

changing buttons for download and cite as: removing "down arrows"
partially addressing #865

I looked more into this "bloop" issue, and I'm starting to think that this issue isn't actually an issue at all, but rather is in line with Vuetify's intended look/behavior. When implementing a standard dropdown with a v-menu there is a "bloop" upon clicking the button to open the dropdown in this example from the Vuetify docs, just like our Download and Cite buttons.
So I'm thinking we should leave the buttons as they are, down arrows included.
On a separate note, I think it'd be good to apply the slide-y-transition Vuetify prop to make the menu behave more like a dropdown.
@djarecka @waxlamp what do you think?

I looked more into this "bloop" issue, and I'm starting to think that this issue isn't actually an issue at all, but rather is in line with Vuetify's intended look/behavior. When implementing a standard dropdown with a v-menu there is a "bloop" upon clicking the button to open the dropdown in this example from the Vuetify docs, just like our Download and Cite buttons.
So I'm thinking we should leave the buttons as they are, down arrows included.
On a separate note, I think it'd be good to apply the slide-y-transition Vuetify prop to make the menu behave more like a dropdown.
@djarecka @waxlamp what do you think?

I think you're right Mike, and I am just tired of the material design era. I really don't like the artificial delay built in to v-menu, but since that's standard we should just roll with it.
@djarecka, if you agree, I would revert the arrow change, add the slide-y-transition prop instead, and we can review that atlernate change instead.

@mvandenburgh - I've been trying to add transition="slide-y-transition" or <v-slide-y-transition> in various place, but I'm failing to change the behavior. Any suggestion where this should be added?

If you look at the doc page Mike linked, you'll see some examples of how to use the prop in real code (click on the < > button on any example to see the code).

yes, I saw the examples, and I even tried to add <v-menu>, but the button disappeared.

Closing this as not a needed change. Thanks for your effort on this wild goose chase, @djarecka.


__eq__ of str subclasses does not have precedence when comparing with strings

The following test case fails:
class test(str):
    def __eq__(self, other):
        return True

assert "a" == test("b")

May be related to https://github.com/IronLanguages/ironpython2/issues/34

We currently don't handle the exception below (from https://docs.python.org/release/2.7.15/reference/datamodel.html#coercion-rules)
For objects x and y, first x.__op__(y) is tried. If this is not implemented or returns NotImplemented, y.__rop__(x) is tried. If this is also not implemented or returns NotImplemented, a TypeError exception is raised. But see the following exception:

Exception to the previous item: if the left operand is an instance of a built-in type or a
new-style class, and the right operand is an instance of a proper subclass of that type
 or class and overrides the base’s __rop__() method, the right operand’s __rop__()
method is tried before the left operand’s __op__() method.

I think this is a duplicate of #34 because OrderedDict is considered a new-style class.

Relevant: https://github.com/IronLanguages/main/pull/1174


Make invalid-param exception a warning in email-tracking response

@dlondero please review

@mariansollmann fyi

@njam lgtm!


[BUG] Strange error when using the action on ubuntu-latest

Description
At the moment of using the action, GitHub reports some strange errors about a signed key or something similar.
It appears the issue is related to this action, though. It fails on Windows, MacOS, and Ubuntu.
You can see the logs here: https://github.com/Panquesito7/texto/actions/runs/5292715059/jobs/9579922335

Thanks for the comment! That's really strange. I have never faced that problem, but doing some googling 12 it seems that some keys are missng in the github runner image.
Maybe running the commands suggested in the links, e.g. apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 605C66F00D6C9793 with the key ids will help?

It might help, I'd have to try again, though. Thanks. 🙂

I encountered the same error as you @Panquesito7, but I was able to successfully build OpenCV by setting install-deps to false.
If you're still dealing with this problem, try giving it a shot.

Cool, thanks! 👍


failed to lookup address

Seems like it tries to lookup 'rammb-slider.cira.colostate.edu:443' instead of 'rammb-slider.cira.colostate.edu':
satpaper --version
satpaper 0.5.0
...
Sep  5 09:42:07 Shiva satpaper[309932]: Error: An error occurred in the wallpaper updating loop
Sep  5 09:42:07 Shiva satpaper[309932]: Caused by:
Sep  5 09:42:07 Shiva satpaper[309932]:     0: https://rammb-slider.cira.colostate.edu/data/imagery/2023/09/05/goes-16--- full_disk/geocolor/20230905062020/04/004_003.png: Dns Failed: resolve dns name 'rammb-slider.cira.colostate.edu:443': failed to lookup address information: Try again
Sep  5 09:42:07 Shiva satpaper[309932]:     1: failed to lookup address information: Try again
...
host rammb-slider.cira.colostate.edu
rammb-slider.cira.colostate.edu is an alias for rammb-slider6.cira.colostate.edu.
rammb-slider6.cira.colostate.edu has address <IP_ADDRESS>

Hmm, interesting - no DNS issues on my end, and the code doesn't mention the port. It's all just ureq::get with rustls, so there shouldn't even be platform-specific weirdness going on...
Have you tried an alternate DNS like <IP_ADDRESS>?

I'm already using <IP_ADDRESS> - the last string 'host rammb-slider.cira.colostate.edu' is manually entered command that resolves the host perfectly. My platform is Ubuntu 22.x

You could also try something like echo "<IP_ADDRESS> rammb-slider.cira.colostate.edu" >> /etc/hosts

This will not work - the code trying to resolve 'rammb-slider.cira.colostate.edu:443' instead of 'rammb-slider.cira.colostate.edu'

App did not managed to download anything - it is failed just at start. Okay, deleting the app

You're completely misunderstanding how it works, but okay, it's your loss.
@yendefrr - I assume you're also having this issue? Try the /etc/hosts fix I mentioned above.

@Colonial-Dev Not OP, but for what it's worth, I also get this on macos. If I add the hosts file entry, I stop getting the dns error (I wonder if the way rust's dns stuff works doesn't cache well, or something else along those lines)
But... After that, it still won't run on macos due to: Too many open files (os error 24)

@Colonial-Dev
I fixed the too many open files error by closing the 6 open VSCode projects I had. XD
That said... now I get timeouts on download... and it kills the whole process. I'm happy to post debug logs if that's helpful.

I wonder if the way rust's dns stuff works doesn't cache well, or something else along those lines

I think it's purely an issue with network configuration. Trawling Github for failed to lookup address information: Try again turns up a handful of issues from other projects, but they all seem to end in "not our fault, something's borked on your end."

But... After that, it still won't run on macos due to: Too many open files (os error 24)

This I can pretty confidently diagnose. When scraping, Satpaper spawns up to 256 threads (the exact number depends on which satellite) - one thread for each tile of the image.
That's (at minimum) 256 sockets/file descriptors being opened - I guess that plus your VSCode projects were too much.

That said... now I get timeouts on download... and it kills the whole process. I'm happy to post debug logs if that's helpful.

Yeah, definitely post them. I'd open a new issue though.


Updates the run method documention by listing not supported arguments.

The --pythonpath, --argumentfile, --help, --version and --escape
arguments are not supported from the run method. Updated method
documentation to declare the exceptions.

On a closer look the docs of the execution entry points could be enhanced also otherwise. I'll merge this in first and will do additional enhancements to docs afterwards. Don't think these enhancements require a separate issue but I'll update #2496 accordingly.


async stream body to file

I've asked in rust discord and googled for the last day to figure out how to stream from a hyper::body::Body to a file using tokio::io::AsyncWriteExt or tokio::io::{AsyncRead,AsyncWrite}, but no one can seem to provide an answer because code snippets like this prevent converting from a std::io::Error to a hyper::error::Error in 0.13.5:
req.into_body().try_fold(file, |file, chunk| async move {
    file.write_all(chunk.as_ref()).await.map(|_| file)
});

I also couldn't find any examples in the documentation. Is there a simple way to async stream a hyper::body::Body to a file?

You can create combined error type, e.g.:
use tokio::{io::AsyncWriteExt, stream::StreamExt};

enum Error {
  FileError(std::io::Error),
  NetError(hyper::Error),
}

async fn body_to_file(mut body: hyper::Body, mut file: tokio::fs::File) -> Result<(), Error> {
  while let Some(chunk) = body.next().await {
    let chunk = chunk.map_err(Error::NetError)?;
    file.write_all(&chunk).await.map_err(Error::FileError)?;
  }
  Ok(())
}

Also you can derive std::error::Error trait for Error type by using e.g. thiserror crate.

awesome thanks!


[SPARK-14739][PYTHON][ML]

What changes were proposed in this pull request?
Fix parsing empty dense and sparse vectors, correct dead parsing tests.
How was this patch tested?
Fixed parsing tests, added tests specific to SPARK-14739

Test build #56297 has started for PR 12511 at commit be9809a.

Test build #56297 has finished for PR 12511 at commit be9809a.

This patch fails Python style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/56297/
Test FAILed.

Test build #56301 has started for PR 12511 at commit fb8e615.

Test build #56301 has finished for PR 12511 at commit fb8e615.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/56301/
Test PASSed.

Merged build finished. Test PASSed.


Update v1beta to v1.

@mbookman PTAL added a link to the BigQuery codelab
even though we are planning some javascript changes, I think this PR is okay to merge as-is

LGTM


custom rules fails to decode base64 encoded string

Hi,
The detection https://github.com/Bert-JanP/Hunting-Queries-Detection-Rules/blob/main/Threat Hunting Cases/Suspicious Encoded Powershell.md  is working however when tested with Red the base64_decode_tostring function fails to decode the base64 encoded string every time:

Here's the base64 string:
VwByAGkAdABlAC0ASABvAHMAdAAgACIASABlAHkALAAgAEEAdABvAG0AaQBjACEAIgA=
As you can see decoding with base64 -d works just fine

Thanks !

Further more the string that you encode has null values, therefore the base64_decode_tostring() works as expected.
Without null values the encoded string would look like: V3JpdGUtSG9zdCAiSGV5LCBBdG9taWMhIg== instead of "VwByAGkAdABlAC0ASABvAHMAdAAgACIASABlAHkALAAgAEEAdABvAG0AaQBjACEAIgA="

Thanks for looking into this. But what’s unusual in an encoded PowerShell command if there are spaces ? Isn’t then a problem with the KQL function?


Fan control

Dear all,
I recently bought a Nobis stove and am trying to improve my heating system with HomeAssistant: thank you to all who have created this integration tool!
I have the stove with a front fan and two other fans to bring hot air to other rooms. I would like to know if it is possible to manage each fan independently with this automation. For example, I would like to switch on the fan in the bedroom only in the morning. Is this possible?
Thanks in advance for any reply.

Hi @giuliovialetto, this integration does support multiple individual fan controls. If it works for your exact stove and situation you would need to test. You can always open an issue when things are not working as expected and I can take a look.

Hi @giuliovialetto, this integration does support multiple individual fan controls. If it works for your exact stove and situation you would need to test. You can always open an issue when things are not working as expected and I can take a look.

Thank you vincent for the quick reply. I will test it in October during heating season!


output of small jsx portions is quite uneditable (transferred from vim-rescript)

As a standard react javascript developer, I did expect the output of RescriptFormat to moreless be the same of prettier. In my subjective opinion whenever I format this:
@react.component
let make = () => {

 {React.string("hello world")}

    <input />

}

I don't expect to be formated like this:
@react.component
let make = () => {

 {React.string("hello world")}

 <input />

}

I've seen that once the component includes more and more html the output can be more readable:
@react.component
let make = () => {

 {React.string("hello world")}

 {React.string("hello world")}

    <input />

}

However, whenever I add another p tag it just adds it in the same line:
@react.component
let make = () => {

 {React.string("hello world")}

 {React.string("hello world")}

 {React.string("hello world")}

    <input />

}

Maybe it's just me, but adding more jsx inside the second div is not really comfortable.
As I understand, the rescript rebranding and the new syntax were made partly to appeal to more javascript programmers. Knowing that prettier is somewhat of a standard, I believe that more js programmers will agree with me that the previous component would be easily editable with less tag inlining, like this form example:
@react.component
let make = () => {

 {React.string("hello world")}

 {React.string("hello world")}

 {React.string("hello world")}

    <input />

}

I guess that it comes from refmt or bsrefmt, I have no clue. Is it possible to customize it in bsconfig.json?
Btw, thanks for creating this plugin!

So naively, this is the result of having a wider line width, which like @ryyppy said, we likely won't be exposing (though we're down to reconsider the width number itself).
However, it's not rare to break line always when it comes to certain pieces of code, and JSX might be such. What's a conformable heuristics? Always line break on tag? Only break in certain cases?

@chenglou IMO, seeing the huge popularity of a tool like Prettier, I'd just copy their JSX formatting style. Not because I think it is the best of the world, but rather because it's what every front end programmer is used to. In my eyes, after countless hours looking at prettied react code, the output I showed looked quite ugly.


[WIP] Fix #1960: correctly handle overlapping memory on slice assignment

The workaround is to copy the source array when a possible overlap is detected.

[Current coverage][cc-pull] is 87.20%

No coverage report found for master at aac985e.

Powered by Codecov. Last updated by [aac985e...e99a9b5][cc-compare]
[cc-base-branch]: https://codecov.io/gh/numba/numba/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/numba/numba/compare/aac985eaef480781a6ad300d2736a6847bc951fe...e99a9b5bc7bab42c3cda7c851665afbe3deb4bbf
[cc-pull]: https://codecov.io/gh/numba/numba/pull/1965?src=pr

The commit at aac985eaef480781a6ad300d2736a6847bc951fe shows issues on codecov here
Could you rebuild the CI for that commit? https://travis-ci.org/numba/numba/jobs/141349190

Could you rebuild the CI for that commit? https://travis-ci.org/numba/numba/jobs/141349190

Done. It doesn't seem to have changed anything.

@sklam: Can you review this?


feat: Add Secure Storage module

:tada: This PR is included in version 0.10.0-next.1 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


feat(web)

feat(page): add sponsors page,
feat(page): add gallery on index,
bugfix(page): removed golden border from nth child

Removed the already fixed golden border issue


Preserve URL during Login

When clicking on a Webapp link while logged out, I get redirected to the login page. Upon logging in, instead of being redirected to the original URL, I always get redirected to the dashboard. I would then need to follow the URL again to access what I needed to.
I would like to be able to go to the URL directly after logging in.
Priority: Medium
Affected roles

Staff
Applicants
Reviewers
Partners

Ideal deadline
April 25th

@tarakiyee Can you post an example url that you try to access where this happens?
Redirect after login should already work but maybe some urls have a bug.

I see now that redirect works for normal logins but not for Google logins that staff uses. This is a bug and I have created a PR to fix it.


ballot class updates

Updates to ballot class for tutorial notebooks.

Add a  __str__ method for Ballot.
Allow users to input non-fractions as weights.
Change voters to voter_set.
Fix printing of PreferenceProfiles so that it does not round Fraction objects to integers.

Edits approved and viewed by Moon.


Update adb extension - add new command and simplify others

Description

Add toggle layout bounds command, disabled by default
Simplify wifi, airplane, dark mode commands to toggle instead of taking arguments to enable/disable.

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

@pernielsentikaer sorry about the double PR today on the same extension, I just thought of these changes now :/

All good @quentin23soleil 🔥


MongoDB Capped Collections equivalent

MongoDB has capped collections, namely fixed-size collections with circular writes:
http://architects.dzone.com/articles/mongodb-pubsub-capped
It's very easy to implement some interesting feature of Capped Collection on top of OrientDB. This could be useful for queues or logging.

@lvca is there any update ?

We were too busy with other issues this wasn't in the roadmap, sorry. We could think of an implementation for 3.1/3.2.

I see that this feature is not implemented yet. Could you please provide some workaround that helps to implement ring buffer functionality (similar to capped collections) with minimal overhead?

Why closed? Is it implemented?

Hi @sakno , we are not going to implement it in foreseen future. We can return back to this feature after some time. But that will be the subject of additional disucussion.


cannot pub get the plugin with my up to date files

i am getting this code every time i install agora plugin
No implementation found for method create on channel agora_rtc_engine
if i am not wrong i think agora does not use the latest version of the following .. some of my versions

my flutter doctor
[√] Flutter (Channel stable, 2.10.5, on Microsoft Windows [Version 8.1.1415.168], )
[√] Android toolchain - develop for Android devices (Android SDK version 30.1.0-rc1)
[x] Chrome - develop for the web
[√] Visual Studio - develop for Windows (Visual Studio Community 202216.1.2)
[√] Android Studio (version 2021.1)
[√] Connected device (1 available)
• One issues found!
i tried with these agora versions but no luck
5.1.0
50.1
5.0.0
4.2.2
No implementation found for method create on channel agora_rtc_engine
i am not sure if it versions issue . but i have everything up to date . thanks

Duplicated https://github.com/AgoraIO/Agora-Flutter-SDK/issues/659


Kotlin | Print actual cost of the run

Now that Flank Kotlin supports multiple devices & platforms, the cost estimation is in need of updating. Using information from the device catalog we can accurately calculate the cost per run. Physical devices are billed at $5/hr and virtual devices are billed at $1/hr.

Determine how many minutes is used per device type

iOS is always physical

Calculate aggregate cost

2 hours on physical devices + 1 hour of virtual devices would be $11.

It would also be great if we had the option to suppress this info so that it doesn't show. Not all teams want to have their devs thinking about cost :)

That's great feedback, I agree a config option makes sense. If false then we'd skip printing the costs.


Please add support for LocalizedStringKey

Sorry, but you've not included enough information for this to be an actionable issue.


Question on format of how data is exported

Why not export one device and multiple entities for each attribute so that they can be used individually on dashboards and used on the new HA water usage tracking?

At the moment, it seems that the config flows only apply on 1 device, so you can add multiple devices just by setting another integration. I agree that it's not the cleanest but it works.
I just created a PR that generates multiple entities: https://github.com/barleybobs/homeassistant-ecowater-softener/pull/27
Here's a sneak peak :


Help page Updated Successfully

Description
Help page Updated Successfully
Fixes  #925
Replace issue_no with the issue number which is fixed in this PR
Screenshots
Checklist

[x] Tests have been added or updated to cover the changes
[x] Documentation has been updated to reflect the changes
[x] Code follows the established coding style guidelines
[x] All tests are passing

Don't use gif animation
You can try to copy from career page

@thestarsahil yup i use those and add some more too. Kindly Review the PR.

@thestarsahil  Kindly add the gssoc label too. The points has not been added.

@thestarsahil  Kindly add the gssoc label too. The points has not been added.


New slate docs site - old favicon is displayed

The slate docs still display the old Kill Bill favicon:

Fixed in the latest docs - closing this issue.


Bug in editor

From 3.9 WP_Editor no longer accept [] in id string, for now I just added a preg_match for searching eventually [] for example when you use an id like this italystrap[editor] in the id.
I tryed to follow this fix https://stackoverflow.com/questions/25176149/wordpress-wp-editor-bracket-bug-workaround but it save only if you submit 2 times, I don't know yet why.

See #4


[FEATURE REQUEST] add authorizations files that already exist

Is your feature request related to a problem? Please describe.

There is the option to gen key pair, use priv key for client or use pub key for server.
But there is no option to just place existing file directly to folder.
Describe the solution you'd like

I want to specify file as an option to be included
Describe alternatives you've considered

https://github.com/Whonix/anon-gw-anonymizer-config/blob/master/usr/bin/anon-server-to-client-install
https://www.whonix.org/wiki/Onion_Services#Onion_Service_Authentication_Client_Setup

Additional context

This can be done on auth-server and auth-client.

Having two files with different names and same contents saved results in tor failing to parse the configuration.
[warn] Duplicate authorization for the same hidden service address [scrubbed].
[warn] Failed to parse/validate config: Failed to configure client authorization for hidden services. See logs for details.
[err] Reading config failed--see warnings above.

improvements made:

avoid files with the same contents
avoid invalid files as much as possible, check lower case, upper case, numbering, protocol, semicolon delimiter etc.

I inserted a wrong configuration file to ClientOnionAuthrDir missing the onion address at the beginning:
:descriptor:x25519:<priv-key-base32>

The tor parser does not inform this is the problem:
[err] tor_assertion_failed_(): Bug: ../src/app/config/config.c:920: get_options_mutable: Assertion global_options failed; aborting. (on Tor <IP_ADDRESS> )
[err] Bug: Tor <IP_ADDRESS>: Assertion global_options failed in get_options_mutable at ../src/app/config/config.c:920: . Stack trace: (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(log_backtrace_impl+0x57) [0x5afccea3cf07] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(tor_assertion_failed_+0x148) [0x5afccea47f88] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(escaped_safe_str+0xa2) [0x5afcceaccc92] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(hs_parse_address+0x5c) [0x5afcceb46b0c] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(hs_config_client_authorization+0x120) [0x5afcceb44310] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(hs_config_client_auth_all+0x19) [0x5afcceb49899] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(+0x17cc1a) [0x5afccead4c1a] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(+0xca7ef) [0x5afccea227ef] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(config_validate+0x115) [0x5afccea246c5] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(+0x17a0f2) [0x5afccead20f2] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(options_init_from_string+0x133) [0x5afccead2383] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(options_init_from_torrc+0x47c) [0x5afccead2a9c] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(tor_init+0x217) [0x5afcce9bf3f7] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(tor_run_main+0x91) [0x5afcce9bfd31] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(tor_main+0x49) [0x5afcce9bc2d9] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(main+0x19) [0x5afcce9bbeb9] (on Tor <IP_ADDRESS> )
[err] Bug:     /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x7f82404a9d0a] (on Tor <IP_ADDRESS> )
[err] Bug:     /usr/bin/tor(_start+0x2a) [0x5afcce9bbf0a] (on Tor <IP_ADDRESS> )

This is why it is important to first validate as much as possible the config before saving to be parsed by tor, and when possible, remove the file that was just inserted.
The --verify-config option did not caught the problem because it is using -f /usr/loca/etc/torrc.d/40_onionjuggler.conf, not /etc/tor/torrc.
This should be corrected on another issue, but anyway, auth option to remove file if tor fails to parse is still missing.

from the above commits.

auth-client is almost ready, need to include options to manual page
auth-server is being prepared to be able to import files, then late also add opts to man pages

Usage: onionjuggler-cli-auth-client [--option <ARGUMENT>]
Description: client side onion authorization
Complete options:
  --on [--client-priv-file <FILE>] [--replace-file]
                            import '.auth_private' file to ClientOnionAuthDir
  --on [--client <CLIENT>] [--onion <ONION>] [--client-priv-key <CLIENT_PRIV_KEY>] [--replace-file]
                            generate keys for client authorization, optionally add define client's private key

-auth-client is missing a complete configuration option for experts or for people that haven't saved the config to a file and don't want to separate then into --onion and --client-priv-key.
Option missing is --client-priv-config

keeping this open until more tests are done

actually, this can't be closed until the man pages are updated with the new options

[ ] update onionjuggler-tui accordingly


"running at: http://localhost:8000" makes it seem like it's bound to localhost

Could you make it either not say that or actually bind to <IP_ADDRESS>?

Fixed


Distinguish missing and undefined object properties.

Starts the ball rolling on #13195.
A couple of things to highlight:
I looked into distinguishing optional function arguments too, but I got buried under a mountain of errors in checker.ts. I limited this change to just object properties, which I think is far more useful.
There is some interesting behaviour with index access type now, because they type property access. For example:
type A = { a?: number }
type B = Pick<A, keyof A>; // { a?: number | undefined }
declare const a: A;
const b: B = a;
const c: A = b; // error

So now B is not assignable to A, when it was before.

So a couple of observations after playing whack-a-mole with undefined.
I think this change should come paired with some utility package to transform all existing properties:
{ foo?: Type } ~~~> { foo?: Type | undefined } // if undefined not in Type

In theory this should be semantics preserving and allow people to just 'upgrade' without deciding to spend a Saturday doing it manually like some idiots.
I don't think this will catch many existing correctness bugs. In most cases the old behaviour was conservative and prevented anything bad happening. The existing mechanisms that can actually distinguish missing or undefined properties seem rarely used. This comes with a big caveat: I'm not someone that uses in or hasOwnProperty a lot (if at all), so I might be being naïve here.
Where I think this change does shine is in preventing/understanding performance bugs that arise by messing up your object layouts. Assuming legacy properties have been transformed so that they look like:
interface Foo {
    x?: number | undefined;
}

it is now a one character change to track down the places where you don't initialise x explicitly and produce a different shape. If you only have a single location where x is missing then it seems better to change that and produce a consistent shape, than have x be optional, IMO.

Do you plan to add a missing keyword to allow use in conditional types as https://github.com/Microsoft/TypeScript/issues/13195#issuecomment-395691886

@leighman As it stands, no I don't plan to. My reason is that conditional types only relate types but missing is not really the type of a value, but an attribute of a type. When you access a missing property you really do just get back undefined, not some distinguished missing value.
I don't claim ownership of this feature or PR, so don't take this as a statement of this is how the feature is going to be. This is just me saying: please don't wait for me to add this.

@leighman The missing type you’re looking for already exists in the form of never.

@ExE-Boss I'm pretty sure never doesn't help at all here. For example
interface X { field: never; }
const x: X = {};

doesn't work. A missing type or keyword would be useful, for example, in a type where a group of fields are optional, but if one is given, all of them must be given. With missing, this could be implemented as
type AllFieldsMissing<T> = {
    missing [P in keyof T];
    // or
    //[P in keyof T]: missing;
};

type AllFieldsOrNone<T> = T | AllFieldsMissing<T>;

type MyType = MyBaseType & AllFieldsOrNone<ExtraFieldGroup>;

interface MyBaseType {
    a: number;
    b: string;
}

interface ExtraFieldGroup {
    c: string;
    d: 'some thing' | 'other thing';
    e: number;
}

I'm pretty sure this can't be implemented yet.


Create base from UI

Starting to build the UI step by step. This is the first step contains basic setup discussions about the libraries to use, and building the code as part of the martin build and serving it from the binariy :

js library - React with TS: Both kepler.gl and Maputnik are written in react. Which can make bringing them in some way to this UI easier.
bundler - vite.
styling - styled-components my personal favourite (and used by kepler.gl so we will be able to easily learn from what they have done)

@tomeronen i merged in the changes from the main branch. Let me know if you need any help with this

FYI, Maputnik has been moved to maplibre, and so is the maplibre-gl-inspect, with lots of work being done on them.  Any updates on this PR?

@tomeronen @nyurik I'd be happy to help out on this if you'd like!

@tomeronen @nyurik I'd be happy to help out on this if you'd like!

Any help is welcome! Thx 😊

I made some changes and submitted them here #1395

(sorry to bother: given that @paigewilliams' PR https://github.com/maplibre/martin/pull/1395 is merged, I think this PR should is redundant ^^)

I'll check shortly, ie if it has any extra code that might still be useful?

All changes from these PRs were done in #1395. Thx for all the hard work that lead to adding static hosting!


Builds timeout: request for increased time limit

Details

Project URL: https://readthedocs.org/projects/pygsti/
Build URL (if applicable): https://readthedocs.org/projects/pygsti/builds/6830583/
Read the Docs username (if applicable): enielse

The builds are timing out after 15 minutes.  By the end of 15 minutes the HTML build completes successfully, but the json (and local-media) build does not finish in time (see referenced build url).  This is due to the project having a lot of documentation that needs to be built.
It also seems somewhat due to the speed of the computers performing the build - what takes about 15 minutes on readthedocs takes < 3 minutes on my several-year-old laptop.
If the build timeout could be increased to 30 or 45 minutes the builds should be successful.  Also, or alternatively, if the json and local-media builds are not needed (I'm not sure what these are used for), disabling them would speed up the build.
Expected Result
A successful build.
Actual Result
Builds timeout.

Update: I've been able to trim down the docs to get them to build within the 15-minute window, so some of the builds more recent than the one I referenced above pass.  I would still like the time limit to be extended, though, since this would let me build the "unabridged" version of my docs.

Hi! We were having some performance issues yesterday and we are trying to recover from them. So, probably your build will take less time today or tomorrow (just a guessing, though)
Please, wait some time and let us know again if this is still an issue for you.

json and local-media builds are not needed

JSON is used for the search, and there is an issue to track the idea of disabling local-media at #3220

Ok, thanks.  I'll try to full docs again some in a few days or so.

It seems that your latest build are building properly. I'm closing here.
Anyway, those builds are five minutes away from the time limit. So, I just increased the time with 5 minutes more which should be enought for now. Feel free to request more time if it's needed, though.
Let us know in any case. Thanks!


Support reverse lookup of bit offset

It would be nice to have a per-register function that returns the corresponding field name given a bit offset. This will be useful for generating debugging/error messages.
For example, for each VMCS control field there is a [1] corresponding MSR that contains the constraint (i.e, features supported by the processor) on the value that can be set in said control. In our hypervisor we perform the checks on the values ourselves, and Bit 28 (Load CET state) of "VM-exit controls" must be 0 would look much nicer than Bit 28 of "VM-exit controls" must be 0.
This requires a bit more changes to the code generation infrastructure, so I'm opening an issue first for some feedback on how this should be done.
[1] Sometimes two

If we go down the path of generating a function that returns a field's name given the field's bit position, I foresee the following complexities:

Some fields are 1 bit, some fields are a range of bits
Registers have a name (sort of a like a weak "id") and a long name (a more human-readable version, if defined)
Some registers have more than one fieldset. In other words, you must decide how to interpret the register's contents based on external factors (e.g. this CPUID leaf)

This sounds possible, but I'm wondering if there is another more general approach to tackle the immediate problem you face: printing a human-friendly message when a semantic constraint is violated about a CPU's usage. What do you think about the idea outlined in Discussion #82?


JavaScript Capstone Project

A project to display information about SpaceX Rockets and Capsules. The user has the option to like and comment on each item. Information about the items is fetched from SpaceX API

Fetched information from SpaceX API
Saved the information to session storage
Used the data to display item cards on the UI
Used itemCounter to count the number of elements in each item set
Used interaction API to GET and POST likes
comment button calls popup and passes an object to popup, filtered by ID
PopUp displays the data available on each item received from the SpaceX API
Comments are displayed in a new session
Post comment form is added at the end of the pop
pure functions used for counting comments and number of items received from API
Tests are written to test both counters
Sanitize function used to prevent code injection from input
SASS and Bootstrap used for styling

Live Link

Hello BrianSammit, thanks for sharing your comments. I have some questions about your recommendations. We created specific functions and their respective tests:
ItemsCounter:
https://github.com/eapenzacharias/Startrek/blob/9ee2c3e13712ded9d371f7956162ed595b137f1f/src/scripts/spaceData.js#L25
TestCounter:
https://github.com/eapenzacharias/Startrek/blob/9ee2c3e13712ded9d371f7956162ed595b137f1f/src/tests/spaceData.test.js#L3-L20
Comments counter:
https://github.com/eapenzacharias/Startrek/blob/9ee2c3e13712ded9d371f7956162ed595b137f1f/src/scripts/popUp.js#L34
Comments counter:
https://github.com/eapenzacharias/Startrek/blob/9ee2c3e13712ded9d371f7956162ed595b137f1f/src/tests/popUp.test.js#L3-L20
Result:

Please could you give us a hint to get the point of your recommendation?
Thanks again, Sir.


Support for allOf when describing polymorphic types

I believe this could be done right now, though a fairly simple change to SchemaRegistry could make the implementation a bit cleaner. I built a test implementation using a SchemaFilter and an attribute on child classes to specify which type Swashbuckle should use as the "parent". The filter sets up the "allOf" array on the child schema to contain a reference to the parent, then removes any properties defined by the parent from the child schema.
The only issue I've run into is that there doesn't seem to be an easy way to get the fully inflated Schema instance for a given type in a filter, as GetOrRegister only returns reference schemas. I'd need the full schema of the parent to figure out which properties of the child schema were actually defined in the parent. SchemaRegistry.Definitions contains the full schemas and is public, but the SchemaIdManager used to generate the indexes into it is private. I was thinking of adding a method to SchemaRegistry to fetch the fully inflated Schema from SchemaRegistry.Definitions, given a Type. Does that seem reasonable?
Could also include ability to set the "discriminator" property of the parent, but I didn't bother with that now as the tool support for discriminator seems very limited.
Attribute (place on child class, specifying parent):
    [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
    public class SwaggerSubtypeOfAttribute : Attribute
    {
        public Type Parent { get; set; }

        public SwaggerSubtypeOfAttribute(Type parent)
        {
            this.Parent = parent;
        }
    }

Filter:
    public class SwaggerSubtypeOfAttributeFilter : ISchemaFilter
    {
        public void Apply(Schema model, SchemaFilterContext context)
        {
            var subTypeAttrib = context
                .SystemType
                .GetTypeInfo()
                .GetCustomAttribute<SwaggerSubtypeOfAttribute>();

            if(subTypeAttrib != null)
            {
                if (model.AllOf == null)
                {
                    model.AllOf = new List<Schema>();
                }

                var schemaRef = context.SchemaRegistry.GetOrRegister(subTypeAttrib.Parent);
                model.AllOf.Add(schemaRef);

                //Replace with a better method of getting full schema given a type
                var actualSchema = context
                    .SchemaRegistry
                    .Definitions[schemaRef.Ref.Replace("#/definitions/","")];

                //Remove any properties defined by the parent from the child
                foreach (string propName in actualSchema.Properties.Keys)
                {
                    model.Properties.Remove(propName);
                }

                //Move the remaining properties to the "allOf" set
                model.AllOf.Add(new Schema()
                {
                    Properties = model.Properties
                });
                model.Properties = new Dictionary<string,Schema>();
            }
        }
    }

@kevbry wouldn't it be better using an existing attribute for that kind of stuff, such as [KnowType(typeof(ChildType))]?

this enhancement would be really useful, my vote for it

With OpenAPI v3 support now added (see #952), we're in a better position to improve the support for polymorphic types. So, I'll be looking at this as a priority. Stay tuned ...

Polymorphic schema support was added with #1041 (preview packages available on myget.org). It's opt-in via the following config method:

services.AddSwaggerGen(c =>
{
    ...

    c.GeneratePolymorphicSchemas();
}

When generating the schema for an abstract/base model, this will look for any subtypes in the same assembly and add a corresponding schema for each one  to the oneOf collection. This allows you to use abstract/base classes in your contract but also list the known subtypes in your documentation.
If neccessary, you can override the default sub type detection (i.e. assembly scoped) by passing a custom strategy to the above config method.
If you're using the Annotations package, you'll need to decorate the abstract/base class with one or more SwaggerSubType attributes for each subtype you'd like to include in the docs.


Error in /usr/local/sdm/sdm-cmdsubs when using --burn option

Received the following error:
% sdm will try to use systemd-nspawn on this 'x86-64' system
  If this does not work please post a GitHub issue
/usr/local/sdm/sdm-cmdsubs: line 215: [: !=: unary operator expected
> Disable unneeded RasPiOS firstboot service in cmdline.txt; both --expand-root and
  --regen-ssh-host-keys set

Took a quick look at line 215, and its just missing double quotes around the variable $bbootadd - presumably the variable was an empty string.
        [ $bbootadd != "" ] && bootadd="$bbootadd"

Probably should quote all variables in test commands. ;)

Yea, saw this while I was in there actually removing this line of code because of https://github.com/gitbls/sdm/discussions/98
The next version replaces several command line switches with plugins, and this exact line of code is one of those no longer needed.

This is fixed in V9.1.1. Please test, verify, and close this issue.

Closing issue since no further activity. Please re-open if you're still having a problem with this.


Merge develop branch to v2 branch

Codecov Report

Merging #2492 (e1ded38) into v2 (afa0154) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##               v2    #2492   +/-   ##
=======================================
  Coverage   97.33%   97.34%
=======================================
  Files          57       57
  Lines       11043    11043
=======================================
+ Hits        10749    10750    +1
+ Misses        294      293    -1

Impacted Files
Coverage Δ

botocore/credentials.py
98.65% <0.00%> (+0.10%)
:arrow_up:

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 afa0154...e1ded38. Read the comment docs.


Add cooked mode capture support

Add cooked mode capture support to capture API. In cooked mode capture, arbitrary data can be captured and then encapsulated into so called SLL packet format and then sent to outside system for a review. See the documentation in the PR for more details.

Is there a Wireshark plugin in the near future?

I was not planning that atm, as there is the net-capture.py scapy app in net-tools that has initial support for saving the data to pcap file which could then be viewed in wireshark. As of this writing, the net-capture.py does not yet remove the tunnel headers so slight modifications are needed in that front.

updated the net-tools manifest to get the updated net-capture.py script

No changes to commits, only updated to latest main


⚠ Bofrost.lu has degraded performance

In a041899, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1380 ms

Resolved: Bofrost.lu performance has improved in 7eb58d3 after 8 minutes.


[Question] How to debug custom operators?

Hi. I would like to debug custom operators, c++/cuda part of code.
What steps should I do to accomplish this?
What I've tried:

Built mxnet with debug symbols
gdb --args python ~ssd_debug.py
And unfortunately was not able to step into the actual code.

that's what I've got from GDB:
[New Thread 0x1403 of process 2958]
warning: unhandled dyld version (15)
[New Thread 0x1503 of process 2958]

Thread 3 received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x1503 of process 2958]
0x0000000100005000 in ?? ()

import mxnet as mx

class SimpleData(object):

    def __init__(self, data):
        self.data = data

data_shape = (1,3,5,5)

data_node = mx.sym.Variable('data')
anchors = mx.sym.MultiBoxPrior(data_node, sizes='(0.1)', ratios='(1)', clip=True, name='multibox_layers')

mod = mx.mod.Module(anchors)
mod.bind(data_shapes=[('data', data_shape)])
mod.init_params()

input_data = mx.nd.ones(data_shape)
mod.forward(data_batch=data.SimpleData([input_data]))
bbox_priors = mod.get_outputs()[0].asnumpy()
print(bbox_priors.shape)

Use export MXNET_ENGINE_TYPE=NaiveEngine to disable mutli-threading first.

Thanks for the suggestion. I've tried with MXNET_ENGINE_TYPE=NaiveEngine
MXNet starts as Naive Engine - as stated in logs.
still I can't stop on break point specified.
'''
(gdb) b MultiBoxPrior::Forward
Function "MultiBoxPrior::Forward" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (MultiBoxPrior::Forward) pending.
(gdb) run
Starting program: /usr/local/bin/python ssd_debug.py
[New Thread 0x1403 of process 45323]
warning: unhandled dyld version (15)
[New Thread 0x1503 of process 45323]
Thread 3 received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x1503 of process 45323]
0x0000000100005000 in ?? ()
(gdb) c
Continuing.
[14:37:34] src/engine/engine.cc:36: MXNet start using engine: NaiveEngine
[[[ 0.05        0.05        0.15000001  0.15000001]
[ 0.25        0.05        0.35000002  0.15000001]
[ 0.44999999  0.05        0.55000001  0.15000001]
[ 0.64999998  0.05        0.75        0.15000001]
[ 0.85000002  0.05        0.95000005  0.15000001]
[ 0.05        0.25        0.15000001  0.35000002]
[ 0.25        0.25        0.35000002  0.35000002]
[ 0.44999999  0.25        0.55000001  0.35000002]
[ 0.64999998  0.25        0.75        0.35000002]
[ 0.85000002  0.25        0.95000005  0.35000002]
[ 0.05        0.44999999  0.15000001  0.55000001]
[ 0.25        0.44999999  0.35000002  0.55000001]
[ 0.44999999  0.44999999  0.55000001  0.55000001]
[ 0.64999998  0.44999999  0.75        0.55000001]
[ 0.85000002  0.44999999  0.95000005  0.55000001]
[ 0.05        0.64999998  0.15000001  0.75      ]
[ 0.25        0.64999998  0.35000002  0.75      ]
[ 0.44999999  0.64999998  0.55000001  0.75      ]
[ 0.64999998  0.64999998  0.75        0.75      ]
[ 0.85000002  0.64999998  0.95000005  0.75      ]
[ 0.05        0.85000002  0.15000001  0.95000005]
[ 0.25        0.85000002  0.35000002  0.95000005]
[ 0.44999999  0.85000002  0.55000001  0.95000005]
[ 0.64999998  0.85000002  0.75        0.95000005]
[ 0.85000002  0.85000002  0.95000005  0.95000005]]]
[Inferior 1 (process 45323) exited normally]
'''

I guess due to the mxnet execute engine, you may not be able to stop anywhere you want. And I would like to know a elegant way to debug as well.
For me, the current solution is to insert code blocks in operator, and manually debug the status.


fix(addon-mobile): restrict choosing unavailable value

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows Conventional Commits
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Refactoring
[ ] Code style update
[ ] Build or CI related changes
[ ] Documentation content changes

Does this PR introduce a breaking change?

[ ] Yes
[x] No

Codecov Report

Merging #1369 (70b4fc2) into main (7d8a57c) will increase coverage by 1.75%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1369      +/-   ##
==========================================
+ Coverage   64.61%   66.36%   +1.75%
==========================================
  Files         766      654     -112
  Lines        8752     7644    -1108
  Branches     1742     1542     -200
==========================================
- Hits         5655     5073     -582
+ Misses       2679     2189     -490
+ Partials      418      382      -36

Flag
Coverage Δ

addon-charts
?

addon-doc
?

addon-editor
46.05% <ø> (ø)

addon-mobile
?

addon-table
?

addon-tablebars
?

cdk
82.33% <ø> (ø)

core
68.93% <ø> (ø)

kit
63.53% <ø> (ø)

summary
66.36% <ø> (+1.75%)
:arrow_up:

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

Impacted Files
Coverage Δ

...erce/components/input-card/input-card.component.ts

projects/addon-doc/src/utils/coerce-value.ts

projects/addon-commerce/pipes/currency.pipe.ts

...jects/addon-commerce/constants/card-holder-mask.ts

...onents/table-pagination/table-pagination.module.ts

...nts/resizable-column/resizable-column.directive.ts

.../addon-charts/components/bar-set/bar-set.module.ts

...on-charts/components/pie-chart/pie-chart.module.ts

...tion/documentation-property-connector.directive.ts

...ts/addon-doc/src/components/page/page.component.ts

... and 102 more

Continue to review full report at Codecov.

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

@waterplea @vladimirpotekhin @nsbarsukov hello)) ready for review)


Missing space?

In the section on OleDb it reads 'Note that the UserID and Password keywords are optional if the database is unsecured (the default).'
Shouldn't there be a space between 'User' and 'ID' given that the example uses 'User ID'?

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

ID: 1b43aee8-d88f-ea0d-5f19-e8ea155d1b7a
Version Independent ID: 1fcc3a93-690c-cdf1-5ff9-70406bf06e33
Content: Connection String Syntax
Content Source: docs/framework/data/adonet/connection-string-syntax.md
Service: unspecified
GitHub Login: @douglaslMS
Microsoft Alias: douglasl

@monty241 Thank you for catching this inconsistency. I've made the change and will let you know when the correction is published.

Hi Douglas, thanks, u r welcome. Rgds Guido


[SDP-1390] Polish flow when creating a disbursement that targets wallet addresses

What

Update wording used for registration types by starting with Wallet Address....
Gray out the whole Customize invite box if the user selects an option with wallet address.
Only display WALLET_ADDRESS registration options when the user-managed wallet is enabled.
When a user selects a WALLET_ADDRESS registration type, the wallet provider dropdown gets grayed out with User Managed Wallet pre-filled.
When a user selects a WALLET_ADDRESS registration type, the verification type dropdown gets grayed out with None pre-filled.
Polish how verificationType and wallet name are rendered in the disbursement detail and confirmation pages

Why
Address https://stellarorg.atlassian.net/browse/SDP-1390

stellar-disbursement-platform-frontend-preview is available here:http://sdp-frontend-pr186.previews.kube001.services.stellar-ops.com/

stellar-disbursement-platform-frontend-preview is available here:http://sdp-frontend-pr186.previews.kube001.services.stellar-ops.com/

stellar-disbursement-platform-frontend-preview is available here:http://sdp-frontend-pr186.previews.kube001.services.stellar-ops.com/


Add url arg to the CLI

Issue #635
@jonatanklosko
We've added a :notebook clause to opts_to_config/2 to handle the :notebook switch. This returns opts with {:open, true} added so that open_from_options/2 is called. We're modifying the root_path to point to the notebook specified by the user. Please let me know if any edits to be made.
@ryg-git  thank you for working on this with me :)

 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.

Hey @aar2dee2 and @ryg-git, thanks for working on this! Just left a comment, let me know if anything is not clear :)

@jonatanklosko
does this edit do as intended?

@aar2dee2 yup that's the right direction, just a few tiny comments :)

:green_heart: :blue_heart: :purple_heart: :yellow_heart: :heart:

enjoyed working on this. thanks a lot for guiding me :)

💚 💙 💜 💛 ❤

@aar2dee2 thank you for doing all of the work, I am sorry I couldn't be of much help as I was busy in some personal work, thanks.

@aar2dee2 thank you for doing all of the work, I am sorry I couldn't be of much help as I was busy in some personal work, thanks.

@ryg-git no worries. hope to work with you again :)


Out There: Ω Edition works

https://steamcommunity.com/app/334420/discussions/0/611702631213430123/

This is confirmed game number 1000.


auto PR check

to eliminate embarrassment like https://github.com/dbry/WavPack/pull/87, I propose the following additions that will automatically check the build for each PR.
sorry again.

good day.
please let me know if you don't need this PR.
I'll close it (

are you not interested in this PR?

The repo already uses Travis for CI, and that includes running the library test (wvtest). The only reason that other change made it through was because I didn't receive the notification from Travis (but that's fixed now). I appreciate you creating this and if you don't mind we can leave this here as a reminder (I very busy with other projects now).


spelunker changes the current working directory

Hi @GalagaBits,
Here's an issue I think needs to be resolved. When spelunker does it magic, it seems it stays forever stuck on the spelunker_outputs folder, and never goes back to the working directory on which analyses were started. This is a bit problematic for usages in notebooks, because the folder changes dynamically as you use spelunker.
An easy fix I belive is to either:

Don't change directories, simply output products into that directory without jumping to it.
Come back to the original directory every time we jump into the spelunker_outputs folder.

Hope this makes sense. Thanks!
N.

Closing as this was fixed in #15, and version 1.0.2.


Add wget for cryoutilities compatibility

Cryouilities makes use of wget during the install process.

Does it even work if installed though? Do we want users to be using it?

Does it even work if installed though? Do we want users to be using it?

It did work in v40, it seems to no longer work. It's a very useful utility for those that need it or want it (seems to be a lot because of the Steam Deck). If we can figure out how to get it working I think that would be a good thing.


UNrevert merging develop for bionic/stretch fixes

this merges berkeley into develop.
it also reverts the revert of merging develop done by this PR: https://github.com/MinaProtocol/mina/pull/13212
By merging this to develop, we ensure develop stays properly ahead of berkeley and these reverted changes won't mysteriously disappear when merging berkeley -> develop

!ci-build-me

!ci-build-me

!ci-build-me


v3.0.0: extend or overwrite watch targets

Previously to v3.0.0, I could tell the live reload plugin to watch additional targets. It seems like this option is gone since 3.0.0 or not documented anymore.
I use Twig templates instead of raw PHP templates, so I want to watch them for changes.

You can pass custom watch paths in vite-plugin-kirby I'll add a note in the readme!


Implement API Backend update feature when making changes

When making changes to an API Backend, make sure API Umbrella also accepts the changes.

Closing as duplicate of #713


Cherrypick #8925 to 2.5.2

Overview
Cherrypick #8925 to 2.5.2
Small fixes for Unity 2020.1

/azp run


Selecting menu item View -> Toggle Tray Icon crashes app when turning toggling tray icon off

My Setup

Operating System: macOS 10.13.6
App Version: 2.12.1

[X] I have tested with the latest version
[x] I can simulate the issue easily

Description

Go to menu item View -> Toggle Tray Icon to turn tray icon off. (assuming it is on by default)
Go to menu item View -> Toggle Tray Icon to turn tray icon on again.
Go to menu item View -> Toggle Tray Icon to turn tray icon off again. This crashes reliably.

Current Behavior

After turning tray icon on, next instance of turning it off crashes the app.
Expected Behavior

No crash.
Here is the macOS generated crash report:
Rocket.Chat+_2018-08-20-170214_Kyles-MacBook-Pro.crash.zip

Looks like a bug in Electron, but maybe we can work around it.

Removing the tray icon's context menu hides the problem. It can be a memory leaking issue.

still not working
$ flatpak info chat.rocket.RocketChat

Rocket.Chat - Open Source Team Communication

          ID: chat.rocket.RocketChat
         Ref: app/chat.rocket.RocketChat/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: 3.7.8
     License: MIT
      Origin: flathub
  Collection: org.flathub.Stable
Installation: system
   Installed: 227.7 MB
     Runtime: org.freedesktop.Platform/x86_64/21.08
         Sdk: org.freedesktop.Sdk/x86_64/21.08

      Commit: c386b676ebfcf6f7e892b02fbfdd6f2117e90b57036cd33b0f1c8e5f7a1198d5
      Parent: e894fa7674c337c6cdc77273cd6888b8aa98341c4856e07d7b083a18ff7966a1
     Subject: Update to v3.7.8 (c22b3c02)
        Date: 2022-02-25 12:25:28 +0000


docs(auditTime): fix docs typo

🦅👁

Pull Request Test Coverage Report for Build 8079

0 of 0   changed or added relevant lines in 0 files are covered.
5 unchanged lines in 3 files lost coverage.
Overall coverage increased (+0.2%) to 96.962%

Files with Coverage Reduction
New Missed Lines
%

src/internal/observable/fromPromise.ts
1
87.5%

src/internal/observable/fromIterable.ts
2
95.24%

src/internal/observable/fromObservable.ts
2
83.33%

Totals

Change from base Build 8066:
0.2%

Covered Lines:
5777

Relevant Lines:
5958

💛  - Coveralls

You're providing valueseses, @tanem


KAFKA-4453 : Added code to separate controller connections and requests from the data plane

KIP-291 Implementation : Added code to separate controller connections and requests from the data plane.

Tested with local deployment that the controller request are handled by the control plane and other requests are handled by the data plane.
Also added unit tests in order to test the functionality.

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@junrao @jjkoshy would you mind taking a look?

@junrao Thanks a lot for the feedback. I have updated the PR with the changes and test to check that the controller is indeed using the control-plane if specified. Can you take another look? Thanks again.

@MayureshGharat To make reviews easier, please don't squash the changes to address feedback on the original commit. Add them as additional commits so that reviewers can more easily see what has changed since the last review. Thanks!

@ijuma my bad. I actually messed up my local git branch, so had to redo the patch locally. Will take care next time.

@junrao Thanks a lot for the feedback. I have updated the PR, addressing your comments. Can you take another look? Thanks again!


Could you please provide a baseline results on GNN?

Yes! RelBench is currently in beta version. We will provide baseline implementations in a few months. Stay tuned

Baseline results can be seen on our leaderboard (https://huggingface.co/spaces/relbench/leaderboard).


Finalizing v3.2 release

This PR merges the v3.2 release into master, see PR #225 for more.

[x] v3.2 is up on pypi, and installs correctly: https://pypi.org/project/urbansim/
[x] v3.2 is up on conda-forge, and installs correctly: https://anaconda.org/conda-forge/urbansim
[x] docs are rebuilt: https://udst.github.io/urbansim/

Release will be tagged in GitHub after this is merged.

Coverage decreased (-0.4%) to 93.945% when pulling 0db75668ada0005352b7c7e0a405265f78ccadd7 on dev into 79f815a6503e109f50be270cee92d0f4a34f49ef on master.


Shadow is not working, can someone help me?

`<ActionButton
buttonText={''+1}
shadowStyle={{shadowOpacity: 1,shadowRadius: 100, shadowColor: 'red',shadowOffset: {width:100,height:100}}}
hideShadow={false}
fixNativeFeedbackRadius={true}
/>

is just working on the IOS

@riqgod hi, have you found something regarding the shadow on Android?

try without shadowStyle.
<ActionButton       hideShadow={false}      fixNativeFeedbackRadius={true} />
it works for me on Android


Colorful Special Days

Hi @beeant thank you for this 💯
Can you please add this new prop to the readme when you have time?

You're welcome, and thank you for the merge!
I just pull requested the new prop add on readme.


⚠ Bofrost.at has degraded performance

In dcdd043, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2589 ms

Resolved: Bofrost.at performance has improved in c22d623 after 6 minutes.


Windows ISO Support !

Hello,
Please add a windows iso support for linux.
Cordialy

Duplicate of #210

Agree!
Just tried to burn Win 10 iso file on USB through Etcher, and it denied.


fix release configuration

the release builds fail with
go-semantic-release]: GoReleaser hook has failed: yaml: unmarshal errors:
  line 15: field replacements not found in type config.Archive

This seems to be a lost feature in goreleaser. We don't really care what the uploaded binaries are called.

go version is now too old. This probably hasn't worked in a while...


Adil<EMAIL_ADDRESS>Upload code examples of Action and Func delegates

Please review and do the needful


Typescript definition file

Hi,
Not a bug or issue, quite the contrary. I implemented this into my TypeScript electron project, and since you don't have a types file, I made one:
interface ElectronPushReceiver {
    START_NOTIFICATION_SERVICE: string;
    NOTIFICATION_SERVICE_STARTED: string;
    NOTIFICATION_SERVICE_ERROR: string;
    NOTIFICATION_RECEIVED: string;
    TOKEN_UPDATED: string;
    setup: (webContents: Electron.WebContents) => void;
}

declare const electronPushReceiver: ElectronPushReceiver;
export = electronPushReceiver;

Cheers.

@mweiczorek Can you make a PR to add  this types file ?

Yeah, I don't know how to do that for projects other than my own.

You need to fork this project.  After that, you'll see a message asking you if you want to create a pull request.

Fixed in #17.


update release note for SSDT for VS2017 15.9.2

update release note for SSDT for VS2017 15.9.2

@MSraye : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#hold-off
DO NOT MERGE YET

#sign-off

@jborsecnik - same here. please merge.


Using KestrelServerOptions with launchSettings.json

reopens https://github.com/aspnet/Hosting/issues/1441
I'm getting
[##:34:57 WRN] Overriding address(es) 'https://localhost:5001/, http://localhost:5000/'.
Binding to endpoints defined in UseKestrel() instead.

And my config looks like
launchSettings.json
{
  "profiles": {
    "Local": {
      "commandName": "Project",
      "launchBrowser": true,
      "launchUrl": "https://localhost:44399/",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
}

appSettings.json
{
  "Kestrel": {
    "Endpoints": {
      "Http": {
        "Url": "http://*:80"
      },
      "Https": {
        "Url": "https://*:443",
        "Protocols": "Http1AndHttp2",
        "Certificate": {
          "Path": "muhcert_pk.pfx",
          "Password": "muhcertpassword"
        }
      }
    }
  }

appSettings.Development.json
{
  "Kestrel": {
    "Endpoints": {
      "Http": {
        "Url": "http://*:8099"
      },
      "Https": {
        "Url": "https://*:44399"
      }
    }
  }
}

There's no usage of 5000 or 5001 in my entire solution (using N++ find in directory)
Also it seems that launch browser is not working / working consistently

@BillHiebert

With the above launch and appsettings configurations i've never gotten a launch browser window open to happen.

@dotnetchris Could you please share your repro project on GitHub to help us with debugging? Thanks.

@dotnetchris the confusion is around the name. It should have been called browserUrl or something. This field only applies to the URL VS launches the browser on. There is no assumption that this is also the URL the server needs to be configured with.

@BillHiebert  except it doesn't launch the browser.

I think what i'm ultimately concluding is i'm using launchUrl for what should be applicationUrl, and that i should be able to delete the port information from the Development override.
However it seems like I simultaneously located a bug in launchUrl, that it doesn't actually launch properly. What if i had used github.com? Why does launchsettings get to say 'i don't actually want to open github.com for him like he requested'?

You can specify https://github.com and it should be honored.

@BillHiebert it works like that, but why does launchUrl have some kind of dependency to applicationUrl?

Only as a convenience.  Quite often you want to launch with a specific sub-url of  your application, like for webapi applications, and in that case it is convenient to just specify a relative url. Also, in many cases you just want to run your site, so leaving it blank is also convenient.

@BillHiebert alot of what you said here should probably be added to https://docs.microsoft.com/en-us/aspnet/core/fundamentals/environments?view=aspnetcore-2.1

So i removed the kestrel explicit configuration in my development.json and have the launch settings like:
{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iis": {
      "applicationUrl": "http://localhost/MyHost",
      "sslPort": 0
    },
    "iisExpress": {
      "applicationUrl": "http://localhost:8075/",
      "sslPort": 44375
    }
  },
  "profiles": {
    "Local": {
      "commandName": "Project",
      "applicationUrl": "https://localhost:44375/;http://localhost:8075/",
      "launchBrowser": true,
      "launchUrl": "https://github.com/",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "launchUrl": "https://localhost:44375/",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "Staging": {
      "commandName": "docker",
      "launchBrowser": true,
      "launchUrl": "https://localhost:44375/",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Staging"
      }
    }
  }
}

However, now it launches with the default 5000 & 5001 ports and i get no browser launch regardless of whether I use github, https://localhost:44375, or leave out luanchBrowser entirely.

@dotnetchris - That launchsettings.json file works for me. I created a new empty asp.net core web projects, replaced the contents of launchsettings.json with the one you have above, an pressed F5. Kestrel launches on the correct ports and the browser is launched on the GitHub url.
Which version of Visual Studio are you using?
Hosting environment: Development
Content root path: C:\temp\WebApplication1\WebApplication1
Now listening on: https://localhost:44375
Now listening on: http://localhost:8075
Application started. Press Ctrl+C to shut down.


Setup david

https://david-dm.org/

Uh, that was easy. https://github.com/Jakehp/qkCryptoJS/commit/00bcfc63f238ff3703ab7b03ca96dc314bf8a11f


Decide what metrics to capture to ASV for merlin notebooks

We decided the metrics in https://github.com/NVIDIA-Merlin/Merlin/issues/235


Allow psr/container 1.1 again

This is a follow up from bd6978fb5cb7e858e26bdaf9c7a261e7087570f8.

cc @derrabus

We don't accept PRs on this repository. Please open a PR or issue on symfony/symfony.


[ENG-590] remove meetings submission list download count sorting

Purpose
Download count sorting will be removed from the back end, so need to remove it from the front end.
Summary of Changes

remove meetings submission list download count sorting
modify integration test to not check submission list download count sorting

Side Effects
None expected.
Feature Flags
ember_meetings_detail_page
QA Notes
Make sure sorting by download count is not available.
Ticket
https://openscience.atlassian.net/browse/ENG-578
Reviewer Checklist

[ ] meets requirements
[ ] easy to understand
[ ] DRY
[ ] testable and includes test(s)
[ ] changes described in CHANGELOG.md

Pull Request Test Coverage Report for Build 3032

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 72.501%

Totals

Change from base Build 3026:
0.0%

Covered Lines:
6298

Relevant Lines:
7842

💛  - Coveralls


Unable to install on Ubuntu 22.04

I tried to install cargo-bitbake on Ubuntu 22.04, with locked version and without the locked parameter (see the errors in the log files: the "not locked" version causes "error[E0283]: type annotations needed" and the locked version causes "error: failed to run custom build command for openssl-sys v0.9.54"). Note that libssl-dev and pkg-config are installed on the system. Is it a known issue?
packages.txt
cargo-bitbake-locked.txt
cargo-bitbake-not-locked.txt

I solved the issue by using another version of cargo:

The compilation with cargo version 1.24.3 from the snap package "rustup" of Ubuntu 22.04 is not working.
The compilation with cargo version 0.60.0 from the apt package "cargo" of Ubuntu 22.04 is not working
The compilation with cargo version 1.62.0 (downloaded with curl https://sh.rustup.rs -sSf | sh) is working.

This is caused by https://github.com/rust-lang/cargo/issues/10623


AMQPWSTunnel

First implementation of the bridge between AMQP and WebSockets for streaming remote application data.

As far as I can tell, the issue is not related to my AMQPWSTunnel module. It isn't built by maven (the module is entirely in Python), and the Travis CI build failure seems to be related to retrieving something from WSO2. Can we go ahead and merge this to get the module into Airavata?


Highlighting problem: hi  cleared does not exists

This line introduced a bug when cmd length is 2, because it generates the command "hi group cleared" instead of "hi group guibg=cleared"
https://github.com/nanozuki/tabby.nvim/commit/e85cf1d23b310e5431090b937e3a315d81b14583#diff-22a223a33734b1de7e9d3ba974c3c6182519e16b846a399e9e30c19a8a9dffadR49

Oh, my fault. I'll fix it right now


53 edit remaining holidays

changes since last PR:

added gem 'whenever' that fires every January 1st and updates remaining leave (remaining_leave_last_year = remaining_leave; remaining_leave = 28)
added warning label that exists from Jan 1st to March 31st and tells the user that remaining leave from last year will expire on April 1st
fixed Datepicker appearance
added translations

Der Merge soll in den Master gehen - ist das korrekt?

Hoppla. Nein, kann ich das ändern?

Wollte nicht in den Master mergen ... -> https://github.com/hpi-swt2/wimi-portal/pull/94


ingress-to-route destinationCACertificate not compatible with cert-manager generated secrets

The route.openshift.io/destination-ca-certificate-secret feature (#218) seems not usable with certificates generated by cert-manager:

tls.crt contains the whole certificate chain, rather than a single certificate.
ca.crt contains the root CA

So for every namespace we need to create another secret (renaming ca.crt into tls.crt) so that ingress-to-route can work.
Implementation ideas:

(optional) Look first for ca.crt if present. Though I don't know if ca.crt is a standard key for secret type: kubernetes.io/tls (it's not mentioned in https://kubernetes.io/docs/concepts/configuration/secret/#tls-secrets)
cf https://cert-manager.io/docs/concepts/certificate/
Additionally, if the Certificate Authority is known, the corresponding CA certificate will be stored in the secret with key ca.crt

In tls.crt, parse -----BEGIN CERTIFICATE----- and -----END CERTIFICATE----- sections, and use the last (or the first) certificate as destinationCACertificate.
The last certificate in tls.crt is not actually the root CA (cf https://cert-manager.io/docs/concepts/certificate/, root certificates should not be part of the public key chain exchanged during tls handshake), but it seems to not matter as long as the router tls client can exit the certificate chain with a known certificate.

I guess this ensures tls.crt contains only 1 certificate!
As we also have inter-cluster pod-to-pod connections that involve containers with Java clients, it's easier for us to use root CAs that can be present in the JVM default truststore. Runtime self-signed would require re-generating a Java truststore via an init-container...
And if we start having 2 different certificates (one for the ingress/route self-signed, one for the service with rootCA) then you need SNI during the TLS handshake, which is not supported by all servers/clients, so it's another can of worms.

/remove-lifecycle stale

/remove-lifecycle stale


Unit tests on byte extraction might have a wrong expected result

Reading the code at https://github.com/mandiant/capa/blob/master/tests/fixtures.py#L646-L649, I am wondering why the unit test would be expecting to extract those utf16-le strings as bytes sequence rather than strings? Because this comment says we should NOT extract obvious strings as bytes:
https://github.com/mandiant/capa/blob/master/capa/features/extractors/ida/insn.py#L175-L176
Yet, these are clearly "obvious" utf16-le strings:

I feel like:

The unit test itself is problematic, and the expected test result should be False.
We can add a unit test for string extraction, and then the expected result should be True.
The current unit test passes for IDA extractor because there is a bug in the way extract_insn_bytes_features is written, see this issue.
I am not sure why the viv extractor would behave in the same way, there might be a problem with isProbablyString, but I have not checked its doc or implementation.

I am filing this because the binja extractor is failing on these tests, but I think its behavior is correct.

Good catch. I did not update the tests as part of the change in #1298.

Yes
Yes
Good find
I'll take a look

If you want, would be great if you can submit the respective fixes (at least for 1-3).

Sure, I will submit a PR soon.
However, it will be rejected by the CI until vivisect is fixed as well. I guess you can work on top of my upcoming PR.

Thanks! I'm looking into it now.

I force pushed moments ago (to fix my fat finger). You will wish to pull it
again to sync.
On Wed, Mar 1, 2023 at 17:54 Moritz @.***> wrote:

Thanks! I'm looking into it now.
—
Reply to this email directly, view it on GitHub
https://github.com/mandiant/capa/issues/1336#issuecomment-1449736577,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWRACE2O7Y3GEUJHGVYCD6LWZ4MDZANCNFSM6AAAAAAVLY5BTI
.
You are receiving this because you authored the thread.Message ID:
@.***>


Implement the "second form" OSADL matrix check and document it

~@fviernau @mnonnenmacher @tsteenbe please have another look. Things I'd like to do in a follow-up PR:~

Implement the second form of check.
Add dedicated docs for this new feature.

Originally posted by @sschuberth in https://github.com/oss-review-toolkit/ort/issues/4977#issuecomment-1288628265

Hi, is this ready to try?
CC @franco0700

Hi, is this ready to try?

No. That's why the issue is still open.


Expose MAC address in advertisement packet

I could be missing something but isn't msg.peripheralUuid the MAC address already?  In my experience so far with this node they've matched one for one on every device I've read.

I could be missing something but isn't msg.peripheralUuid the MAC address already? In my experience so far with this node they've matched one for one on every device I've read.

Nope not missing anything, you are correct - it was a complete oversight at the time because the docs explain that the MAC address can be found at peripheral.address.
I forgot to close this PR, thanks for the nudge :)


Request for ExpectedConditions.attributeContains and ExpectedConditions.attributeToBe

Hi,
First of all, I tried to find any issue already opened with the same request or similar one. Could not find it so I'm adding this one. Link and close this one if it's already opened.
For my Selenium projects I love to use the ExpectedConditions.attributeContains and/or ExpectedConditions.attributeToBe but in Protractor these are not implemented and in my opinion these are a must have.
In Angular a lot of element changes happen just by only changing the class attribute, in my case I have an element that when clicked has the '.active' class if we click the next element this class disappears from the first one and moves to the second element. In the automation that I'm doing is critical as
I check if the element is already active, if not give him a click to make it active, wait for the class to be present and then I do the actions that I want, but I hate to redefine the element just for the wait and I hate more to use sleeps in my code.
There is already in place the ExpectedConditions.textToBePresentInElementValue so what I'm proposing is just to do something similar but instead of checking only the attribute value, checks any element attribute passed by as argument:
attributeContains(elementFinder: ElementFinder, attribute: string, text: string): Function {     let hasText = () => {       return elementFinder.getAttribute(attribute).then((actualText: string): boolean => {         return actualText.indexOf(text) > -1;       }, falseIfMissing);     };     return this.and(this.presenceOf(elementFinder), hasText);   }
and
attributeIs(elementFinder: ElementFinder, attribute: string, text: string): Function {     let hasText = () => {       return elementFinder.getAttribute(attribute).then((actualText: string): boolean => {         return actualText === text;       }, falseIfMissing);     };     return this.and(this.presenceOf(elementFinder), hasText);   }
There's no big impact just by adding these two methods. If you implement these two, also redefine textToBePresentInElementValue to use attributeContains and pass 'value' as argument. They do the same.
Hope you take this request in consideration for the next release.
Thanks,
Marco

If accepted I can add this feature.
Thanks.

Send a PR! Thanks :)

Was this ever done or is there an available alternative?  I need to wait for an attribute to equal a certain string, but haven't found the way to do this.

this awaits

https://github.com/angular/protractor/pull/4993


chore(deps): update @dialpad/conventional-changelog-angular package

update @dialpad/conventional-changelog-angular package

:hammer_and_wrench: Type Of Change

[ ] Fix
[ ] Feature
[ ] Refactoring
[ ] Documentation

:book: Description
This version includes refactor and docs commit types in the release notes.
Example:

:bulb: Context

:pencil: Checklist

[x] I have reviewed my changes
[ ] I have added tests
[ ] I have added all relevant documentation
[ ] I have validated components with a screen reader
[ ] I have validated components keyboard navigation
[ ] I have considered the performance impact of my change
[ ] I have checked that my change did not significantly increase bundle size
[ ] I am exporting any new components or constants in the index.js in the component directory
[ ] I am exporting any new components or constants in the index.js in the root

:crystal_ball: Next Steps

:camera: Screenshots / GIFs

:link: Sources

Remember to add the 'no-visual-test' tag if the PR doesn't need visual testing.


Include Tekton Results as part of test-infra

Would be awesome to have tekton/results included within test-infra to make it easier to set up alerting / monitoring / tracking of runs failing.

@AverageMarcus this one is a little older, could you check if this is still valid and wouldn't these now be better in team tenet?


The run destination iPad 2 is not valid for Running the scheme

Trying out snapshot for the first time. Did snapshot init and am simply trying to run snapshot with the default config.
Devices:
devices([
  "iPhone 6",
  "iPhone 6 Plus",
  "iPhone 5",
  "iPhone 4s",
  "iPad Air"
])

When I run snapshot, I get this error:
  xcodebuild clean sling
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Failed to build workspace sling with scheme sling.
 	Reason: The run destination iPad 2 is not valid for Running the scheme 'sling'.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Any idea what this could be? It is an iOS 8 only app, is it trying to use the iOS 7 simulator or something?

I had the same problem - meaning that when I used iphoneos the build was successful, but i couldn't launch it in the simulator. When i used iphonesimulator i got the error with the iPad 2 destination. As in @kevinrenskers case, the iPad 2 7.1 simulator showed up as the first element in my project in XCode (which was not the case in the snapshot example project, which is the reason why it worked there without problems). Long story short - i solved the problem in XCode by going into Window > Devices in XCode and removing the iOS 7.1 simulator devices.

I have a related problem that don't have to do with snapshot, but maybe help you debug it.
When I try to build with xcodebuild and there is a device connected to the usb port, this same error occurs.
¯_(ツ)_/¯

I've got the same issue, but I was able to fix it really quickly. I set the deployment target of the project to 7.1 but my target pointed to 8.0. I deleted the deployment target of my target and set it to 8.0 in my project.
PROJECT
  MyProject
    Deployment Target: 8.0
TARGETS
  MyProjectTarget
    Deployment Target: (not set)

I just released snapshot 1.0, please follow the migration guide.
Since the underlying snapshot was completely rewritten, I'm closing this issue now. Feel free to submit a new issue if you're experiencing an issue :+1: