graphql:Client should include graphql errors as the cause of data binding error

This is especially useful for the scenario where the data field is either null or not available.

As for the current implementation, if the data field is either null or not available we return the graphql errors as ServerError and we do not perform data binding. In a partial response case, user can get the data as json from the returned ServerError.

@shafreenAnfar Looks like this already works as expected. Do we have anything else to improve this?

Had a chat on this issue. The executeWithType() API handles the error as mentioned above, but this need to be handled for the execute() API.
2 cases need to be considered in the execute() API
Case 1: The server returns a response with no data field but returns an error field
This case could happen on GraphQL validation.
Currently, we are catching this error as http:ApplicationResponseError and returning a graphql:RequestError and we are not performing any data binding here.
This case will be improved by setting the GraphQL response errors as errorDetails of graphql:RequestError
Case 2: The server returns a response with the data field set to null along with an error
This case will be improved by introducing a new PayloadBindingError in the graphql module. The graphql error response will be set as errorDetails of this newly introduced error


Add a limiter for pushing images

In environments where multiple registries exist for the purpose of security with scan and promotion pipelines, imgpkg presents an issue where intermediate pipelines become overloaded due to the inability to properly stage.
Right now, we have a team pushing 300+ images to a pipeline that can handle 50 images at a time.
As a base solution, the ability to add a delay per image push would help significantly, in order to stagger the full deployment. Example below:
imgpkg push $IMAGE -d 10
# -d = delay
# 10 = 10 seconds

Vote on this request
This is an invitation to the community to vote on issues, to help us prioritize our backlog. Use the "smiley face" up to the right of this comment to vote.
👍 "I would like to see this addressed as soon as possible"
👎 "There are other more important things to focus on right now"
We are also happy to receive and review Pull Requests if you want to help work on this issue.

@sa02 Apologies for missing this for so many days 😞
If I understand you issue correctly, imgpkg is being used concurrently to push 300+ images to the same registry and the registry can handle only 50 pushes at a time?


Docker lockup + docker-proxy zombies on master

As of 38186084b3ade82049d03f4f83640a0d47c3040c:
Steps to reproduce:

docker run -p 8080:8080 -itd busybox nc -l localhost:8080
nc localhost 8080

At this point:

docker ps will not respond
docker-proxy, when killed, will go zombie

@erikh is this still an issue, bleh userland proxy

cant reproduce closing


is it normal for a slow convergence?

I am trying to apply this method to detect other objects, however, even there is only one training sample without augmentation operation, this framework is hard to convergence? Is it normal? I follow the training method for people segmentation, and only train the 8-2 and lstm model.

I've noticed slow convergence as well. I've got about 2000 training images and when training for 100,000 iterations it's taking roughly 48 hours to get through only 60,000 iterations.

Not sure if this is your case, but as far as I have seen, convergence is significantly harder to achieve if the instances are very different among them (e.g. one experiment in the paper is on segmenting people, but segmenting simultaneously people and other objects becomes harder). In any case, starting training with a low number of iterations for the ConvLSTM (e.g. 2) and increasing it only when it achieves convergence, seems to help.
@isn4 do you mean that the time per iteration is too slow?


Finally clause won't be executed if throwing a future error inside a runZoned with onError handler

Dart SDK Version 1.24.3

For example,
import 'dart:async';

main() async {
  try {
    print('start');
    await doTest();
  } finally {
    print('end');
  }
}
doTest() async {
  return runZoned(() {
    return new Future.error(new Error());
  }, onError: (e) {
    print('onError');
    throw e; // if comment out this line, the future won't be completed
  });
}

If you run this code, you will see "start" and "onError", the message of "end" won't be shown.
Another issue is that, if we comment out throw e; inside the onError handler, the future error won't be completed forever, is that a bug?

dart version 2.0.0-dev.49.0 has the same issue.

@lrhn

This is a feature, not a bug. I believe @natebosch and @jakemac53 know it well.
Here is an example of the code necessary to always complete a runZoned:
Future<T> runZonedAlwaysComplete<T>(Future<T> Function() run) {
  final onDone = new Completer<T>();
  runZoned(
    run,
    onError: (e, s) {
      if (!onDone.isCompleted) {
        onDone.completeError(e, s);
      }
    },
  ).then((result) {
    if (!onDone.isCompleted) {
      onDone.complete(result);
    }
  });
  return onDone.future;
}

ok, if that's a feature, is there any document to mention such case that we should handle the complete code by ourself even if use the syntax sugar of async?
So the original issue of "Finally clause won't be executed" is a feature as well?

@matanlurey If it is spec, are you telling us the finally clause won't be guaranteed to run? Then, does it mean we shall never use try/finally with await?
try {
   await foo();
} finally {
  this_statement_may_or_may_not_run(); //spec!?
}

I know it is caused by a new error zone, but how do we know it? Dig in every library we ever use? Or, it is the library's job if it starts an error zone? If so, can compiler help to pick up the problem?

Yes, the finally block is not guaranteed to run.
The finally block will run when the future returned by foo() completes. That may never happen, and the program can end before it does.
It's an implementation detail whether your program hangs or it terminates at that point, when it knows that no further progress will ever be made. The VM terminates when no code is running, all event loops, timer queues, and other scheduled task queues are empty, and there are no open receive ports. That's the termination criterion it uses for all programs.
I've [#23797](previously argued) that such a dead-locked await should hang the program, only because it makes this particular case easier to understand for users debugging, not because it makes any other difference - the finally block won't run in either case.

Was about to add a new issue about the following situation, but then I found this ticket. I get the feeling I may be wading into a controversial topic, but would just like to add my 2 cents that it seems unintuitive that the following code exits without printing the result (this seems to be at the root of the confusion over the finally block not getting hit in this issue):
import 'dart:async';
main() async {
  final result = await runZoned(() {
    // throw 'ERROR'!; // prints result
    return Future.error('ERROR!'); // NEVER prints result
  }, onError: (err) {
    print('Caught error: $err');
  });
  print('result: $result');
}

Why is this a ~feature~"feature"? Why should a synchronous error return control to main by returning null, but an async one (and in particular, one that is awaited) not? There are probably good reasons, they're just not jumping out at me. It seems brittle to require the caller of some API to know so much about the internals of whatever is being called, particularly when your goal is usually just "make sure no errors leak out, and then continue." Maybe some form of runZonedAlwaysComplete should be offered at the SDK level as an alternative?

The behavior here is inevitable when we have error zones making futures never compete.
Closing this issue in favor of https://github.com/dart-lang/sdk/issues/39825.


Add test against pint master and pint pre

Copied from CI.yml but removing coveralls
The plan is to add their status to https://github.com/hgrecco/pint/blob/master/downstream_status.md

[ ] Closes #xxxx
[ ] Tests added
[ ] Passes pre-commit run --all-files
[ ] User visible changes (including notable bug fixes) are documented in whats-new.rst
[ ] New functions/methods are listed in api.rst

sorry for the very late reply, @hgrecco. Our test setup is pretty similar to MetPy's, so I'll submit a PR that adds the same checks to the "downstream status" page.
That means we don't verify that pint-xarray is compatible with the release candidates, but depending on your release process (i.e. whether you use a different branch for releases – which as far as I can tell you don't, so far) the only difference would be the version, which doesn't have to be checked that often.


Allow MessageBuilder, MessageHeader and ErrorHeader to be subclassed.

That's a mistake, looks like I was a bit greedy in my 'streamFactory'
string replacement and added that one by accident, I'll fix this.
On Mon, Aug 27, 2018 at 5:12 PM, Paul Adolph<EMAIL_ADDRESS>wrote:

@padolph commented on this pull request.
In core/src/main/java/com/netflix/msl/msg/MslControl.java
https://github.com/Netflix/msl/pull/281#discussion_r213152327:

  * or outgoing messages. The filters will be placed between the MSL message

  * and MSL control, meaning they will see the actual MSL message data as it
  * is being read from or written to the remote entity.
  *

* @param factory filter stream factory. May be null.

* @param factory filter message factory. May be null.
*/

public void setFilterFactory(final FilterStreamFactory factory) {

factory is type is FilterStreamFactory, but comment was changed to say
"filter message factory". Should you also rename the FilterStreamFactory
Type?
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/Netflix/msl/pull/281#pullrequestreview-149928140, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ATkww5oyFjpwgJpm6Du3-SOvBFBCJ4qmks5uVIr4gaJpZM4WOmJr
.


Properly update ColliderShapeAsset for #283

#283 Compile ColliderShapeAsset if refered model files updated.(Like ModelAsset)

(note: if it doesn't work out, I will merge it as is)

It works. Thanks!

Thanks!


Null grade data handling

Instead of throwing an error when API returns grade_distribution: null this puts "No grade data available" in the expandable search grid makes the grade distribution [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] so the graph leaves a gap where it would be.
Here is an example: https://utd-trends-4tiftwexw-utdnebula.vercel.app/dashboard?searchTerms=CS+1200%2CCS+3345.HON+Ivor+Page

In the case where only the course with no grade data is selected, does it make sense to show just the empty chart?

I'm not sure. Would the alternative be to remove the chart?

That is one alternative. I’d do something to indicate that data is not available so that it doesn’t look broken. It may be worth asking the design channel for input.
Besides removing the chart, you could show a message on top of it saying something like “Grade data unavailable for selected courses”

Got it. I went with a message on top of the graph.
I went ahead and cleaned up the graph components we have since we have no plans to use anything beyond a bar graph. We can always get them back from GitHub anyways.


Integrating music player (spotify) and HUE

Hello! New to this kind of things (homekit, Home Automation System...)
Is it possible to use this library to say one command to Siri like "Start beach ambient" and then load that ambient in my Philips lights and at the same time start a specific sound or playlist in my computer (a Mac) using spotify API?
Even more, could be possible to animate the lights at the same time (not necessarily using the music)?
I guess I should publish an accessory or service with actions, but not sure.
I understand that using hue and homekit alone this is not possible (because there is no server to 	orchestrate those different elements)
Thanks for suggestions.

After reading more about homebridge, I guess this could be a proposal to achieve what I want, can you confirm that please?
Create a plugin that connects directly to my HUE bridge using the REST interface about 10 times per second, sends a network request to the bridge changing color and intensity, simulating and animation. At the same time, the first time the user says this command, using applescript (or something similar) I start the appropriate playlist.
Is that approach right? Thanks.

All seems a little complicated. I would avoid the animation side of things, there are various apps that do a much better job of it.
Unless all you want to do is a colorloop, because that is built into the Hue Bridge.
You don't need to write your own plugin to do what you are trying to so. If you have the Hue working with the Hue Homebridge plugin or even the Philips one, then you use Homekit via an app (Eve) to setup the scene. In the app you give the scene a name ,then tell it what you want on and off etc.
So for the music thing I guess you would use AppleScript (there is a homebridge plugin for that) or another other means to tell your Mac to do something.
Have a look at Logitech Media Server and SqueezePlay, as these run on the Pi and also connected to Spotify. But be warned, it is a whole new can of worms to have to try and work out. But when you get it sorted, it is kinda cool. Check this guys repo https://github.com/ralph-irving and the forums http://forums.slimdevices.com/
Logitech don't make or support it anymore, but the opensource community is still very active.

Thanks for reply @digiltd
I already have a proof of concept working.
I created a plugin that when activated, it sends about 10 network requests per second (using node-hue-api) to modify lights values.
The reason to delegate the animation in a plugin (that is executed in a raspberry pi) rather than an existing app is that:
-I can use Siri to start my custom scene (animation with ambient music).
-No need to have an app in foreground or background.
-I could attach them to philips switches.
-The animations are more complex that a colorloop.
I also have spotify connected and I control it using the homebridge-applescript-file plugin. But I don't like this idea. It is not nice to say "Siri, activate romantic ambient" and then listen to an ad rather than music (I don't want the premium account)
Regarding the speakers, I bought it to activate or deactivate the background speakers
https://www.amazon.co.uk/Energenie-ENER002-2PI-control-Raspberry-controller/dp/B00LSS5UQC/ref=sr_1_2?ie=UTF8&qid=1464686897&sr=8-2&keywords=socket+raspberry+pi
(Because I will not use it all the day and I don't want to spend electricity)
I still have to buy speakers, but note it is only for background or ambient sound, I don't need something very expensive, but with a decent quality of sound.
I'm going to check your links because I have to decide about what media player to use and what speakers. Thanks for that.
Any suggestion for my project is welcome. Once I have everything, I will create a document and upload it with source code.

I have that Energenie Pi Control thing. I didn't get with it and took the plunge to get the RFXcom which can control loads of 433mhz devices (as I was hoping the Energenie could do with a little hacking)
You can probably get some ok sounding USB powered speakers. I use the EasyAcc Mini Portable Rechargeable Bluetooth Speaker plugged into my Pi for announcements and things. Occasionally for a bit of music or a podcast. They are surprisingly good for what they are, you get a nice amount of bass and volume.
If you want background music, there are loads of streams on https://www.shoutcast.com, then you can provide a mp3 stream for each mood.
Re the animation if you are on Mac then Ambify is very impressive at generating lightshows to music (when it works). There are lots of repos on Github as well that do audio visualization stuff and its worth a look. Though I am curious to see what your changing 10 times a second actually looks like, it sounds very..... well, the opposite of romantic or beach ambient :)
I'm waiting for Homekit to be opened up to devs or the Echo to come out in the uk, though the Google Home might beat them to it.

The 10 requests per second is like the 60 frames per second in a game, that doesn't mean the entire screen changes 60 times per second. I have different curves for different animations, some of them are fast, some others are very slow...
"There are lots of repos on Github as well that do audio visualization stuff"
Awesome, one of my ideas is just use the spectrum to change the colors accordingly.
As the ambients are preloaded, I don't mind saving the mp3 files inside the raspberry pi. But I will study the possibility to use that streaming service, thanks.
This one?
https://www.amazon.co.uk/EasyAcc-Portable-Rechargeable-Bluetooth-Microphone/dp/B00JK6MQEI
I have to check that, thanks a lot!


Fixing empty PipeCwd issue.

PipeCwd will be null if the provided PipeCwd is not absolute.

@gregg-miskelly

        }

I think you want to remove this too

Refers to: src/MICore/LaunchOptions.cs:91 in 40c92ab. [](commit_id = 40c92ab6a3a0c6b652d94b90cc3b9d47086c5be4, deletion_comment = False)

:shipit:

        }

yep! thanks

In reply to: 249264922 [](ancestors = 249264922)

Refers to: src/MICore/LaunchOptions.cs:91 in 40c92ab. [](commit_id = 40c92ab6a3a0c6b652d94b90cc3b9d47086c5be4, deletion_comment = False)


updates for 3.6.2

#39288 Change admin password not working
#39520 cloudctl catalog command keeps timing ou

/retest


DatasourceScanExec uses runtime sparksession

Very annoying feature of datasources where they would use sparksession from the time of creation. This should convert it to use the one that's active when executing. @pwoody @ash211 @mccheah
Will send upstream once we iron out the tests

@robert3005 can you explain why DataSources should use the SparkSession from time of execution instead of time of creation?  Independent of any changes we make internally I want to make sure this is the right design for Spark directly.

This lets you change settings at runtime instead of needing to create a new dataset. When you look around at the code you see they're using active session upon creation in most physical plans. I think for IO related work it makes sense since this interacts with hadoop and allows you to configure hadoop settings at runtime instead of creation/first exec time.
There's definitely a bug here where hadoopfsrelation is using spark session from logical plan which I haven't seen anywhere else and seems wrong.

Do we also need to modify the fsRelation.sparkSession calls in other places?
See FileSourceStrategy.scala, PruneFileSourcePartitions.scala, DataSourceStrategy, HadoopFsRelation and others

Yeah, will do.

See https://issues.apache.org/jira/browse/SPARK-19213

Will close in favour of upstream


IHostingEnvironment is obsoleted

More information about the changes can be found at this link on GitHub:
https://github.com/dotnet/aspnetcore/issues/7749

Thanks, looks good to me

Why the CI failed? Is there anything I can do from my end?

It's not on you, don't worry about it


List Bleeding Segmentation (laparoscopic images with segmented bleeding sources)

Rabbani, N., Seve, C., Bourdel, N., & Bartoli, A. (2022, December). Video-based computer-aided laparoscopic bleeding management: a space-time memory neural network with positional encoding and adversarial domain adaptation. In International Conference on Medical Imaging with Deep Learning (pp. 961-974). PMLR.
https://proceedings.mlr.press/v172/rabbani22a.html
Dataset:
http://igt.ip.uca.fr/~ab/code_and_datasets/datasets/bleeding_segmentation_v1p0.zip

Done.


Charts added and iOS left

TODO:
-> iOS part left
-> Chart Decoration
-> Recent searches decoration

pycache will be removed in next pull request

Resolve the conflicts

Ok bro. I'll update it .


[prim_ram*] Support for Parity/ECC in memory loaders

If we want to enable Parity or ECC on our main SRAM, we need support for that in our backdoor memory loading mechanisms.
This can be achieved in several ways, e.g. by either manipulating the binary before loading, or by directly incorporating that functionality into the backdoor interfaces themselves:
https://github.com/lowRISC/opentitan/blob/master/hw/dv/sv/mem_bkdr_if/mem_bkdr_if.sv
https://github.com/lowRISC/opentitan/blob/master/hw/ip/prim/rtl/prim_util_memload.sv
I tend towards the second approach, but would like ask whether there are other opinions / ideas.

One reason for the former is if we want to inject parity errors during the backdoor load, otherwise I recommend the latter. We could for that matter add a backdoor interface method that injects an error if we wanted to.

i think the last time i spoke to @imphil about this (when he was doing the 64b expansion), he seemed to prefer the approach of manipulating before loading.
@tomroberts-lowrisc also did some work here, so i'm adding him as well.

A couple of guiding questions I can think of:

Where do we have the information of what kind of transformation is needed? We currently don't have it in prim_ram_1p/prim_ram_2p, which is the where prim_util_memload.sv is used (the ECC/Parity information is only in the advanced wrapper, the underlying RAM is unaware of it).
How much "fancy transformation" do we want to do. If it's only ECC/parity or simple error injection, it should be easy to do so in SV. If we want to go for fancier ways to prepare the binary to inject errors, we might be better off with a pre-processing step before loading.

For now, I think I'd go with a rather simple approach: Add the memory loading functionality we have in the non-adv RAM primitives to the adv primitives as well, and let it handle the addition of ECC/parity. This avoids us having to duplicate the ECC/parity settings somewhere else and makes it easy to change the settings as needed.

Add a simulation-only shadow mem element, containing the unencoded memory contents.
Include prim_util_memload.sv in the adv wrapper.
Add simulation-only code to add ecc/parity, and copy over the mem contents to the actual memory. I'm not sure how fragile/tricky the "keeping the two memories in sync" part will be, this could make this approach a dead end.
Point the mem_bkdr_if and memory paths in our verilator simulation to the adv module. (There will be another loader available one level down in the non-adv RAMs if more control over the encoding is needed.)

Maybe another aspect to keep in mind when considering the cost of pre-processing VMEM files: do we want to have ECC/parity for ROM images as well? For those we most likely need to pre-process the VMEM file.

@udinator I know you have been working on this issue recently, can you update this issue with the current approach and/or close if all is done?

The current status is as follows:

the mem_bkdr_if currently fully supports memory parity as well as injecting parity errors - this can safely be used to backdoor initialize a memory with minimal work needed from the executing environment
#6441 is currently in flight and being reviewed/enhanced - this adds full ECC support to the mem_bkdr_if, including single and double bit error injections

#6441 should now be completely merged - so currently the mem_bkdr_if supports both parity and ECC memories, so can be used as a backdoor loading mechanism if desired.

yup, this issue has been addressed.


Track Total Bits Collected

Currently, when a player sells their data, all their bits simply disappear. Instead, there should be another piece of data stored: the total number of bits ever collected across the whole game. This could potentially be displayed somewhere within the Right Box.

One way to do this would be to store two things in the Game Data: the current number of bits, and the number of bits sold. Then, the sum of these two properties would represent the total number of bits ever collected.


[FIX] labels-order-named-options-order

This PR fixes the multilabel options order

We need this change to send the proper attribute to the argilla server, right?

Correct.


Update Currency Codes in xero_accounting.yaml

Description
Update to xero_accounting.yaml for additional Currency Codes
Screenshots (if appropriate):
Types of Changes

[ ] Bug fix (non-breaking change that fixes an issue)
[ ] New feature (non-breaking change that adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Hey @moyinoluwalogo
We are closing this PR for now as it has been in open state for more than a year now. Please take the latest changes from master and re-raise the PR if necessary.
Thank you


hmm

hmm

does not run.

Send me message on Discord with the issue like, if you have any errors, what happen when you run etc.

Check again I have updated most of the things

No response :( I closing this issue


Update uploader.js

This is the change I have made to get server response. You can pull it.

Already implemented in https://github.com/angular-ui/ui-utils/commit/25be316144593e00a7d897633d43be25c0f2b189


Add ability to change signature method and provide RSA signing key.

I needed the ability to sign with RSA-SHA1 for interacting with Jira, so I modified this to handle that signing method.

Awesome, thank you! Would be great to have it merged and in the .nuget package, too.

@jekstrom Thanks for taking the ownership here! The nuget package works mostly fine for me.
What bugs me is that the code in the nuget package is not the same as in your master branch (NotImplementedExceptions).
For the oauth_callback to work with JIRA, you have to completely omit(sic!) it in GetRequestTokenAsync and then append it to the url as you did in GetAuthorizationUrl.
As strings are a code smell I'd convert them to Uris where possible and use an enum for the signature method. I've used a slightly incorrect string way too many times:
    public enum SignatureMethod
    {
        HMAC_SHA1,
        RSA_SHA1,
        PLAINTEXT
    }

    public static class ExtensionMethods
    {
        public static string MapToString(this SignatureMethod signatureMethod)
        {
            switch (signatureMethod)
            {
                case SignatureMethod.HMAC_SHA1:
                    return "HMAC-SHA1";
                case SignatureMethod.RSA_SHA1:
                    return "RSA-SHA1";
                case SignatureMethod.PLAINTEXT:
                    return "PLAINTEXT";
                default:
                    throw new ArgumentException(nameof(signatureMethod));
            }
        }
    }


Update OrganizationMember update_or_create field due to Sentry updates

Sentry has changed their OrganizationModel's user field to user_id.  Commit: Link
This causes FieldError because user used to be an User object.

Is it a broken change that won't work with the older Sentry?

No, this is a very recent change(v23.6.0). This package will need to apply the changes in this PR for versions >= 23.6.0 only.

@bryanjuho As you said, I think it's a broken change because it can no longer work with the older Sentry.
In other words, we should bump a major version to 23.6.0 to indicate this plugin needs Sentry 23.6.0 and later. I thought it was not a good versioning policy but we are already on this way.
In totally,
Sentry < 21.9.0 should work with sentry-ldap-auth==2.9.0
Sentry >= 21.9.0 and Sentry < 23.6.0 should work with sentry-auth-ldap==21.9.11
Sentry >= 23.6.0 should work with sentry-auth-ldap==23.6.0 (which includes this PR)
Do you agree to the above?

@bryanjuho As you said, I think it's a broken change because it can no longer work with the older Sentry.
In other words, we should bump a major version to 23.6.0 to indicate this plugin needs Sentry 23.6.0 and later. I thought it was not a good versioning policy but we are already on this way.
In totally, Sentry < 21.9.0 should work with sentry-ldap-auth==2.9.0 Sentry >= 21.9.0 and Sentry < 23.6.0 should work with sentry-auth-ldap==21.9.11 Sentry >= 23.6.0 should work with sentry-auth-ldap==23.6.0 (which includes this PR)
Do you agree to the above?

Oh I get it.
Yes, Your summary is accurate.

Dear @PMExtra, could your please release the new version with this fix?
We can't use the Sentry after update without it.
Thank you!

@bryanjuho thank you for this update. I installed your branch with the following addition to sentry/enhance-image.sh and found that it works fine:
# TODO revert to sentry-auth-ldap proper with https://github.com/PMExtra/sentry-auth-ldap/pull/8
apt-get install --yes git
pip install -e git+https://github.com/bryanjuho/sentry-auth-ldap.git@master#egg=sentry-auth-ldap

@bryanjuho thank you for this update. I installed your branch with the following addition to sentry/enhance-image.sh and found that it works fine:
# TODO revert to sentry-auth-ldap proper with https://github.com/PMExtra/sentry-auth-ldap/pull/8
apt-get install --yes git
pip install -e git+https://github.com/bryanjuho/sentry-auth-ldap.git@master#egg=sentry-auth-ldap

Good to be of help.
Obviously as soon as this PR gets merged, I recommend you to revert enhance_image.sh to this repository because my fork was only for tests. Thanks!

Obviously as soon as this PR gets merged and pypi package is updated, I recommend you to revert enhance_image.sh to this repository because my fork was only for tests. Thanks!

Hence the TODO I also added 😉

sentry-auth-ldap=23.6.0 was released.
#9 should be resolved.


Support for new API

Given that the Wellbeeing app is going to be deprecated at some point, we'll probably need to move to the API used by the newest app. See #21.

I have created a pull request (#23) adding this functionality. The API calls were determined by MitMing the Android app.

Thanks! I merged the PR and added some tests. Also renamed to to v3, because i think this is easier and the API will probably break at some point anyway.


Board Review: Azure Mixed Reality Authentication client library

Thank you for starting the process for approval of the client library for your Azure service.  Thorough review of your client library ensures that your APIs are consistent with the guidelines and the consumers of your client library have a consistently good experience when using Azure.
** Before submitting, ensure you adjust the title of the issue appropriately **
To ensure consistency, all Tier-1 languages (C#, TypeScript, Java, Python) will generally be reviewed together.  In expansive libraries, we will pair dynamic languages (Python, TypeScript) together, and strongly typed languages (C#, Java) together in separate meetings.
The Basics

Service team responsible for the client library<EMAIL_ADDRESS>Link to documentation describing the service: https://github.com/craigktreasure/azure-sdk-for-net/tree/craig/mr-sts-sdk/sdk/mixedreality/Azure.MixedReality.Authentication#azure-mixed-reality-authentication-client-library-for-net
Contact email (if service team, provide PM and Dev Lead<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
About this client library
Mixed Reality services, like Azure Spatial Anchors, Azure Remote Rendering, and others, use the Mixed Reality security token service (STS) for authentication. This package supports exchanging Mixed Reality account credentials for an access token from the STS that can be used to access Mixed Reality services.

Name of the client library: Azure Mixed Reality Authentication
Languages for this review: .NET
Link to the service REST APIs: https://github.com/Azure/azure-rest-api-specs/blob/master/specification/mixedreality/data-plane/Microsoft.MixedReality/preview/2019-02-28-preview/mr-sts.json

Artifacts required (per language)
We use an API review tool (apiview) to support .NET and Java API reviews.  For Python and TypeScript, use the API extractor tool, then submit the output as a Draft PR to the relevant repository (azure-sdk-for-python or azure-sdk-for-js).
.NET

Upload DLL to apiview.  Link: https://apiview.dev/Assemblies/Review/35afdb6afa874f6ab4caa1cfaf7a15cd
Link to samples for champion scenarios: https://github.com/craigktreasure/azure-sdk-for-net/tree/craig/mr-sts-sdk/sdk/mixedreality/Azure.MixedReality.Authentication#examples

Java

Upload JAR to apiview.  Link:
Link to samples for champion scenarios:

Python

Upload the api as a Draft PR.  Link to PR:
Link to samples for champion scenarios:

TypeScript

Upload output of api-extractor as a Draft PR.  Link to PR:
Link to samples for champion scenarios:

Champion Scenarios
A champion scenario is a use case that the consumer of the client library is commonly expected to perform.  Champion scenarios are used to ensure the developer experience is exemplary for the common cases.  You need to show the entire code sample (including error handling, as an example) for the champion scenarios.

Champion Scenario 1:

Describe the champion scenario
Estimate the percentage of developers using the service who would use the champion scenario
Link to the code sample

_ Repeat for each champion scenario _
Examples of good scenarios are technology agnostic (i.e. the customer can do the same thing in multiple ways), and are expected to be used by > 20% of users:

Upload a file
Update firmware on the device
Recognize faces in an uploaded image

Examples of bad scenarios:

Create a client (it's part of a scenario, and we'll see it often enough in true champion scenarios)
Send a batch of events (again, part of the scenario)
Create a page blob (it's not used by enough of the user base)

Agenda for the review
A board review is generally split into two parts, with additional meetings as required
Part 1 - Introducing the board to the service:

Review of the service (no more than 10 minutes).
Review of the champion scenarios.
Get feedback on the API patterns used in the champion scenarios.

After part 1, you may schedule additional meetings with architects to refine the API and work on implementation.
Part 2 - the "GA" meeting

Scheduled at least one week after the APIs have been uploaded for review.
Will go over controversial feedback from the line-by-line API review.
Exit meeting with concrete changes necessary to meet quality bar.

Thank you for your submission

scheduled for 12/3 2-4PM PST

Recording[MS INTERNAL ONLY]


Optimize sponsors logo

This is the proposed fix for #364

Resizing some logos based on the max-height setting on the website: 150px for flagship/large and 120px for small sponsors. Please note that the logos are also used at https://qgis.org/funding/membership/members/ which are displayed based on max-height
Adding the loading="lazy" attribute

Is this deployed now @Xpirix ? I am still seeing large logos...e.g. https://qgis.org/funders/www.gaia-mbh.de.png

Not yet @timlinux , I will probably deploy the latest changes tomorrow.

@timlinux these changes have been deployed. However, the resize was based on a max-height rule (150px for flagship/large and 120px for small sponsors) so each small sponsor logo's height should not exceed 120px.


[Bug]: Address validation token is too easy.

What happened?

8.1.4. Address Validation Token Integrity
An address validation token MUST be difficult to guess. Including a random value with at least 128 bits of entropy in the token would be sufficient, but this depends on the server remembering the value it sends to clients.

Xquic use ip address + expire time as token.
Steps To Reproduce
Read the code.
Relevant log output
No response

Hello, i'm working on it


Getting Occational MassTransit.RequestFaultException while using Request Response using Amazon SQS SNS

I am using MassTransit to execute client side RPCs.This is my project structure
Master API--- Dotnet Core 3.1 based Web API that sends request to each client by Destination Queue name and Return response from them.
Masstransit Configuration as extension method:
`public static IServiceCollection AddSQS(this IServiceCollection services, IConfiguration configuration)
{
var sqsSettings = configuration.GetSection(nameof(SqsSettings)).Get();
        var messageDataRepository = new S3MessageDataRepository(sqsSettings);

        services.AddMassTransit(x =>
        {
            x.UsingAmazonSqs((context, cfg) =>
            {
                cfg.Host(sqsSettings.Host, h =>
                {
                    h.AccessKey(sqsSettings.AccessKey);
                    h.SecretKey(sqsSettings.SecretKey);
                });
                cfg.UseMessageData(messageDataRepository);
                cfg.PurgeOnStartup = true;
                cfg.OverrideDefaultBusEndpointQueueName("TunnelAPIBus");
                cfg.ConfigureEndpoints(context);
            });
        });

        services.AddMassTransitHostedService();
        return services;
    }`

RPC Invocation in controllers:
I get an instance of IBusControl form DI and use it as below:
`var requestClient = _busControl.CreateRequestClient(new Uri($"queue:{ClientQueueName}"));
var result = await _busControl.Request<RequestModel1, ResponseModel1>(new Uri($"queue:{ClientQueueName}"), new
{
Method = request.Method,
Content = request.Content
}, CancellationToken.None);
        return result.Message.Content;`

Clients-- Dotnet Core 3.1 based services that receives request from Master API and executes appropriate client side method and return response.
MassTransit Configuretion
` public static IBusControl Init(SqsSettings sqsSettings)
{
var messageDataRepository = new S3MessageDataRepository(sqsSettings);
        return Bus.Factory.CreateUsingAmazonSqs(cfg =>
         {
             cfg.Host(sqsSettings.Host, h =>
             {
                 h.AccessKey(sqsSettings.AccessKey);
                 h.SecretKey(sqsSettings.SecretKey);
             });

             cfg.UseMessageData(messageDataRepository);

             cfg.ReceiveEndpoint(sqsSettings.QueueName, e =>
             {
                 e.Consumer<RequestModel1Consumer>();
                 e.Batch<RequestModel2>(b =>
                 {
                     b.MessageLimit = 10;
                     b.ConcurrencyLimit = 10;
                     b.Consumer(() => new RequestModel2Consumer());
                 });
                 //e.QueueAttributes.Add(QueueAttributeName.MessageRetentionPeriod, (int)TimeSpan.FromMinutes(1).TotalSeconds);
                 e.PurgeOnStartup = true;
                 e.PrefetchCount = 10;
                 e.DiscardFaultedMessages();
                 e.DiscardSkippedMessages();
             });
         });
    }`

Issue Faced:
I am occationally receiving following exception
MassTransit.RequestFaultException: The RequestModel1 request faulted: No connection could be made because the target machine actively refused it.
at MassTransit.Clients.ResponseHandlerConnectHandle1.GetTask()    at MassTransit.RequestExtensions.Request[TRequest,TResponse](IBus bus, Uri destinationAddress, TRequest message, CancellationToken cancellationToken, RequestTimeout timeout, Action1 callback)
at MassTransit.RequestExtensions.Request[TRequest,TResponse](IBus bus, Uri destinationAddress, Object values, CancellationToken cancellationToken, RequestTimeout timeout, Action`1 callback)
4 out of 10 request may fail with above exception.

This seems like a network issue.

The above application in hosted in aws elastic beans and its only communication with sqs and sns within aws.Can you sugget me some option to get a detailed exception to know what exactly is happening

https://masstransit-project.com/usage/logging.html

I have enabled default logging to ILogger.if i set log level to debug i can see bus connected.
But what i am asking is getting a detailed log from sqs or sns library.If it is a network issue aws client lib should throw an exception.
Is there any means i can get it.

But what i am asking is getting a detailed log from sqs or sns library.If it is a network issue aws client lib should throw an exception.

I have no idea how to get logging details from those libraries.

@phatboyg ,you may close this issue as it was a mistake happened from my side. I was responding to the batch context instead of context of particular method. Sorry for wasting your time.


Upgrade archive dependency

Upgrade archive dependency to 3.1.2 because I use hive package that conflict with this package about archive package.

I'm sorry @chandrabezzo but I cannot upgrade to nullsafety-ready libraries until I migrate the whole project to nullsafety


GDS notification

Post request to the GDS endpoint with the values of the last deploy
To Do:
After checking the notification is successful,  we need to update in the code to make sure that the CF_SPACE variable is check to be different from development and update the branch from gds-notification to master

 [TARIFF16] Deployment scripts


Tweaks to makefile for easier setup

This PR adds a setup step to the default make target (in case bundle isn't installed, for example), and makes it possible to provide variables to switch AWS profiles and stack JSON publication bucket endpoints.
It also adds a target to update your stack.
I did remove the date stamping of stacks because it made updates difficult. We could cache the value locally or something... or make it a parameter?

Thanks, reviewing.
Might I suggest https://github.com/99designs/aws-vault for profile management? :)

Updated the branch in my fork with feedback. 😍

Looking good, I think with the new update changelist stuff in cloudformation updating the stack makes more sense.

Thank you @tobyjoe


Client Allocation Request for: 湖南星韵医疗美容有限公司

Client Allocation Questions
Core Information

Name: 湖南星韵医疗美容有限公司
Website / Social Media: https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=Mzg2MDYzNzA1Mw==&scene=124#wechat_redirect
Region: Greater China
DataCap Requested: 100TiB
Addresses to be Notarized: f3u3unadf654vezf62cd4jo6r7h6qpkx26g5amcdc3oe6rmpmk2nfosfd2kjkdhj4ndvr626gsm7fhpmt7gg2q
Notary Requested: MRJAVAZHAO

@dhg1906807876 Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

Please apply to other notary. All our datacap has been allocated.


Enhance : Updating logo image for dark mode

hey @param-code ,
I would like to add another image for this website which will be rendered when the user toggles to dark theme. The Intent of this enhancement is to make sure the correct color consistency of the whole application.
I will add required color to current image to blend it with dark theme as i am UI/UX designer and i consider this as important component to any web app.

Moreover, i can create another suitable logo for you if you want for both light and dark theme, you can let me know i wont disappoint.
please do assign me this issue with hacktoberfest-accepted and gssoc-ext  and i will be grateful to contribute to your project .
thank you

hey @param-code ,
I would like to add another image for this website which will be rendered when the user toggles to dark theme. The Intent of this enhancement is to make sure the correct color consistency of the whole application. I will add required color to current image to blend it with dark theme as i am UI/UX designer and i consider this as important component to any web app.

### Moreover, i can create another suitable logo for you if you want for both light and dark theme, you can let me know i wont disappoint.
#### please do assign me this issue with `hacktoberfest-accepted` and `gssoc-ext` and i will be grateful to contribute to your project .
**thank you**

Sure!!


Added cv_blend

With this added cv_blend, i think this is somehow similar with the current overlay function, so i think we can consolidate them into 1 file or 1 function with option to select different kinds of blending or overlay methods?

I think 1 function with multiple options is best, in case we have a reason to use the old feature/code. We can always remove it later.
Can you add some example code and a picture here? And also add the Markdown documentation?

I think 1 function with multiple options is best, in case we have a reason to use the old feature/code. We can always remove it later.

Alright, then this can be included in the overlay builder later.

Can you add some example code and a picture here? And also add the Markdown documentation?

The markdown doc should be already included here right?

Here's the snippet of code and output example:
    img_source = cv2.imread('best_copy.png')
    img_background = cv2.imread('img_34123.png')

    ysize, xsize = img_background.shape[:2]

    # blend to centroid of background
    center = [int(xsize/2), int(ysize/2)]

    img_blend = cv_blend(img_source, img_background, center=center, blend_type=cv2.MIXED_CLONE)

    plt.figure()
    plt.imshow(cv2.cvtColor(img_blend, cv2.COLOR_BGR2RGB))
    plt.title('Blended image')

    plt.figure()
    plt.imshow(cv2.cvtColor(img_source, cv2.COLOR_BGR2RGB))
    plt.title('Source')

    plt.figure()
    plt.imshow(cv2.cvtColor(img_background, cv2.COLOR_BGR2RGB))
    plt.title('Background')

Examples:

Can you run pre-commit run --all-files locally and then push again? There were some lines that Black and another pinter rewrote.

Can you run pre-commit run --all-files locally and then push again? There were some lines that Black and another pinter rewrote.

Yea, i did rerun it several times but i didn't facing any issue:

There's no changes for new commit too. Do you have any idea on the problem?

It fixed the array formatting; each dimension of the array indices should go on a separate line.
Add trailing commas......................................................Failed
- hook id: add-trailing-comma
- exit code: 1
- files were modified by this hook

Rewriting augraphy/augmentations/lib.py

black....................................................................Failed
- hook id: black
- files were modified by this hook

reformatted augraphy/augmentations/lib.py
All done! ✨ 🍰 ✨
1 file reformatted, 46 files left unchanged.

flake8...................................................................Passed
pre-commit hook(s) made changes.
If you are seeing this message in CI, reproduce locally with: `pre-commit run --all-files`.
To run `pre-commit` as part of git workflow, use `pre-commit install`.
All changes made by hooks:
diff --git a/augraphy/augmentations/lib.py b/augraphy/augmentations/lib.py
index d14702b..3d7f325 100644
--- a/augraphy/augmentations/lib.py
+++ b/augraphy/augmentations/lib.py
@@ -334,7 +334,8 @@

def cv_blend(img_source, img_background, center=None, blend_type=cv2.MIXED_CLONE
     # if source size is > background size, crop only the fitting size
     if center_y - ysize_half_source < 0 and center_y + ysize_half_source > ysize_background:
         img_source = img_source[
-            -(center_y - ysize_half_source) : ysize_source - (center_y + ysize_half_source - ysize_background), :
+            -(center_y - ysize_half_source) : ysize_source - (center_y + ysize_half_source - ysize_background),
+            :,
         ]
         # new size after cropping
         # source size

@@ -344,7 +345,8 @@

def cv_blend(img_source, img_background, center=None, blend_type=cv2.MIXED_CLONE

     if center_x - xsize_half_source < 0 and center_x + xsize_half_source > xsize_background:
         img_source = img_source[
-            :, -(center_x - xsize_half_source) : xsize_source - (center_x + xsize_half_source - xsize_background)
+            :,
+            -(center_x - xsize_half_source) : xsize_source - (center_x + xsize_half_source - xsize_background),
         ]
         # new size after cropping
         # source size

It fixed the array formatting; each dimension of the array indices should go on a separate line.

I see, it's weird that it didn't fix the issue when i run it, thanks for the help.

I was motivated by this thread to do some minor reading on blend modes and found these sources interesting:

https://github.com/flrs/blend_modes
https://docs.gimp.org/en/gimp-concepts-layer-modes.html
https://blend-modes.readthedocs.io/en/latest/visual_examples.html

The source code in that FLRS "Blend Modes" Python package implements various techniques.  That package does not seem to be maintained, but the number of lines is really small if we wanted to ~borrow~ steal some of their code (and include proper attribution).

I was motivated by this thread to do some minor reading on blend modes and found these sources interesting:
* https://github.com/flrs/blend_modes

* https://docs.gimp.org/en/gimp-concepts-layer-modes.html

* https://blend-modes.readthedocs.io/en/latest/visual_examples.html

The source code in that FLRS "Blend Modes" Python package implements various techniques. That package does not seem to be maintained, but the number of lines is really small if we wanted to ~borrow~ steal some of their code (and include proper attribution).

Thanks, this should be very helpful. I will need to test through them out first, since i don't think we need all of the blending methods there, some of them might not relevant in our use case.


TLS context serialization: can it be done?

Description

Type: Question
Priority: Minor

Question
mbedTLS v2.21.0 has support for TLS context serialization in the form of two functions: mbedtls_ssl_context_save() and mbedtls_ssl_context_load(). I'm trying to use these functions in another project (Graphene, an Intel SGX framework). Slightly oversimplifying, I want to establish a secure communication channel between two different Linux processes. I'd like to persist one of them and then re-spawn it again with the communication channel intact (so that there is no need for a new TLS handshake).
However, I notice that currently these functions support only DTLS 1.2, see e.g.: https://github.com/ARMmbed/mbedtls/blob/aaabe86ac1f47193f4fc499846a0b3abeae9207b/library/ssl_tls.c#L5954
But I want to use a normal TLS channel, in particular with a ciphersuite MBEDTLS_TLS_PSK_WITH_AES_128_GCM_SHA256.
I commented out the checks on DTLS in these functions just to see what will happen. As expected, both functions serialized and then deserialized the context, but when doing a write(ssl_ctx) in one (not-persisted) process  and a read(loaded_ssl_ctx) in another (re-spawned) process, I get an error in mbedtls_cipher_auth_decrypt(). Clearly, my deserialized context didn't restore some vital information on the TLS session, and this led to failure in decryption.
Thus, I have two questions:

Is there any version of this code that also works on TLS?
What are the additional internal objects that must be serialized for TLS (if it makes things easier, in my particular case with AES-GCM and a pre-shared key)? I looked at the code and tried to dump more fields in mbedtls_ssl_transform, but it didn't help much. If you'd provide me with some pointers, I could tinker more with mbedTLS code and hopefully make it work.

Hi @dimakuv . We've recently migrated Mbed TLS to TrustedFirmware.org. Could you direct this question to the new Mbed TLS mailing list instead? Thanks.

Thanks @danh-arm, done. Should I close this issue here on GitHub?

Should I close this issue here on GitHub?

Yes but don't worry, I've done it! Thanks

Just going to leave links to the ML thread here:

https://lists.trustedfirmware.org/pipermail/mbed-tls/2020-March/000004.html
https://lists.trustedfirmware.org/pipermail/mbed-tls/2020-April/000007.html

@DanielG The links do not work anymore.


(PUP-9448) fixed typo in MATCH_NOT_REGEXP

CLA signed by all contributors.

@ehom @hlindberg I think we got our wires crossed on this one. It'd be better to submit a single PR with multiple commits, where each commit fixes the same logical issue. Having multiple PRs takes up CI resources and makes it possible for PRs to target different branches, which makes it difficult to ensure the overall issue/ticket was resolved in a particular version.

@ehom @hlindberg I think we got our wires crossed on this one. It'd be better to submit a single PR with multiple commits, where each commit fixes the same logical issue. Having multiple PRs takes up CI resources and makes it possible for PRs to target different branches, which makes it difficult to ensure the overall issue/ticket was resolved in a particular version.

@joshcooper it was me who misunderstood. yes, it should be single PR with multiple commits. @hlindberg's instructions didn't mention single PR so I assumed muliple PRs.

This change is covered in https://github.com/puppetlabs/puppet/pull/7353/files#diff-47e255eb3575f40fd2a47565442cf2e7R268, so I'm going to close this PR


feat: Add isStore.

Related Issues or Discussions
Related to my useStore prototypes (https://github.com/pmndrs/valtio/discussions/662)
Summary
When working generically with a store, and wanting to handle it recursively, it's useful to ask "is this nested value itself a store?".
Currently this is not necessary for Valtio & proxy-compare, b/c createSnapshot pushes "this is special"-ness into proxy-compare's markToTrack, but 3rd party libraries/hooks like useStore don't have that blessed push-based mechanism, so need a pull-/probed-based mechanism to detect store-ness/special-ness.
Very open to alternative approaches/impls that accomplish the "is this a store?" goal.
Check List

[x] yarn run prettier for formatting code and docs

isStore should be implemented on your end. Something like this:
const isStore = (x) => getVersion(x) !== undefined;

There might be room for improvement in docs.
I think I did it in some of my valtio third-party libraries.
Closing.

There might be room for improvement in docs.

Yeah, we should add this isStore recipe in: https://github.com/pmndrs/valtio/blob/main/docs/api/hacks/getVersion.mdx
Another impl:
const isStore = (x) => typeof getVersion(x) !== 'number'`;

BTW, I prefer isProxy to isStore.

Yeah, we should add this isStore recipe in:

Wdyt about adding isProxy but based on your impl, i.e. a helper method that just calls getVersion?
Just thinking it's a more ergonomic/more discoverable to users than having to find it as a suggested recipe in the getVersion docs and then implement their own.

It is only for library authors. I'd prefer hiding it in the getVersion docs.

Sounds good. Fwiw just in terms of push-vs-pull, it might be neat if instead of markToTrack-ing every snapshot, Valtio just did like:
markToTrackFunction((obj) => isSnapshot(obj);

Which would let proxy-compare ask "should I proxy this object?" by just calling the function.
In theory it'd cut down on the overhead of pushing every snapshot into the mark to track set. :shrug:
Not a big deal, just mentioning as a potential micro-optimization.

Yeah, that would be another way.
For now, I avoided it because it's not predictable in terms of performance. People can register a heavy function, and multiple functions (which requires to iterate those functions).
But, let me keep that in mind for the future version of proxy-compare, which I want to simplify further (your suggestion of not supporting frozen object might be in.)

People can register a heavy function

Good point!


fix: added channel to handle concurrency bug

Description
This PR fixes a concurrency related bug in your codebase.
While triaging your project, our bug fixing tool generated the following message-

In file: loadTests.go, there is a function tryNewFramework which contains a send or a receive operation on a channel and there is no matching receive or send operation on that channel from another goroutine. The goroutine will be blocking on that channel operation. iCR identified the source of the possible blocking channel operation and suggested to avoid it.

In file loadTests.go, there's a method tryNewFramework that has a select statement that goes-
	select {
	case result := <-ch:
		ret = result
	case <-time.After(timeout):
		ret = nil
		err = fmt.Errorf("unable to create new framework for user %s within %v", username, timeout)
	}

In this select statement, there's a receive operation from channel ch along with a receive operation from a timeout channel. On the other hand, in the goroutine, there's a send operation to channel ch.  If no receive operation is performed on ch channel within the timeout, then a time-out will take place. It all seems correct except for a corner case.
The receive on channel ch and the timeout may take place at the same moment. In that case, the select will randomly choose one of those two receives. From documentation-

If one or more of the communications can proceed, a single one that can proceed is chosen via a uniform pseudo-random selection. Otherwise, if there is a default case, that case is chosen. If there is no default case, the "select" statement blocks until at least one of the communications can proceed.

If, select chooses the timeout, then the go-routine that performs the send on channel ch will remain halted since the receiving end isn't ready.
Solution
As a solution, we introduce another channel called quit. In the sending go-routine, we create a select statement that reads from quit channel and performs the send on ch. And in the receiving end, when we get a timeout, we simply close the quit channel. If the channel is closed, the other go-routine will notice a closed channel and will exit normally.
Issue ticket number and link
None
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
This hasn't been tested.
Checklist:

[x] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added meaningful description with JIRA/GitHub issue key(if applicable), for example HASSuiteDescribe("STONE-123456789 devfile source")
[x] I have updated labels (if needed)

Sponsorship and Support
This work is done by the security researchers from OpenRefactory and is supported by the Open Source Security Foundation (OpenSSF): Project Alpha-Omega. Alpha-Omega is a project partnering with open source software project maintainers to systematically find new, as-yet-undiscovered vulnerabilities in open source code - and get them fixed – to improve global software supply chain security.
The bug is found by running the Intelligent Code Repair (iCR) tool by OpenRefactory and then manually triaging the results.

Hello @fazledyn-or . Thank you for the report, nice catch! We have recently rewritten that code a lot (moved to tests/load-tests/loadtest.go), so if you agree, I would close this PR. But if your tool would be able to find some issues in new code, I would gladly review it. Does it sound good?

Current simplified code is here: https://github.com/konflux-ci/e2e-tests/blob/3bfd315846d32a2a72bfac290b6d0d37cf72a5c1/tests/load-tests/pkg/journey/handle_users.go#L15-L29

Hello @psturc. Although it was probably correct before the loadtest rewrite, change is not applicable to current code. I do not have a permission to close this - could you please close this?

Hi @jhutar . Thanks for the update. Sure, if the tool catches any new errors, I'll be sure to notify you.


Greenkeeper/mocha 6.2.2

Coverage remained the same at 100.0% when pulling 5d784f3239089db0faef28c1179e518dd32dc676 on greenkeeper/mocha-6.2.2 into 62205db193effe02ed0e56720b15afd234558edd on master.


Update storage-troubleshoot-file-connection-problems.md

Requested by Rena Shah

Hi @JarrettRenshaw, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Jarrett Renshaw). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

@JarrettRenshaw : Thanks for your contribution to the Azure documentation! The author, @genlin, has been notified to review your proposed change.

Looks good for me,
#sign-off

@genlin Hi Thomas Please work with the contributor to fix the merge conflict so that a merge is possible. Thanks.

#hold-off

@jomolnar, please close this PR.  I submitted a PR against the azure-doc-pr for the change.

@genlin Thanks, Thomas. You can add the #please-close comment if you encounter this situation for subsequent pull requests in this repository, and automation will close the pull request. Thanks.


Support loopback monitoring

README file needs updating to reflect new loopback probe

Only needs a doc update then this can be closed


Test and succeed existing asana task sync from issue body

Test syncing an asana tasks newly mentioned asana task in description to existing task.
#36700026060600
Asana Tasks:
#36700026060600
#36700026060602
#36700026060604
#36700026060606

added a second task

added third task

Closing this should close four asana tasks.

That worked. reopening should reopen those tasks.


Explain your ip address when visiting an appliation by trait

In the doc, users are asked to visit the application by the following command https://kubevela.io/zh/docs/next/quick-start#一个最简单的示例, while your ip address is not well documented.
$ curl -H "Host:testsvc.example.com" http://<your ip address>/
You can see the endpoint or address of your ingress. By getting it, you can direct users to visit the console of a cloud provider or by listing the ingress ojbect.
➜  kubevela.io git:(main) kubectl get ingress
NAME             CLASS    HOSTS                 ADDRESS         PORTS   AGE
express-server   <none>   testsvc.example.com   <IP_ADDRESS>   80      13m

If there is an Ingress backend, you can visit the webapp by the domain.
➜  demo-1015 vela status first-vela-app
I1015 12:15:30.127161   40740 request.go:665] Waited for 1.012574189s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:6443/apis/apiextensions.k8s.io/v1?timeout=32s
About:

  Name:      	first-vela-app
  Namespace: 	default
  Created at:	2021-10-15 11:58:13 +0800 CST

Services:

  - Name: express-server
    Type: webservice
    NOT DIAGNOSED
    Traits:
      - ✅ ingress-1-20: Visiting URL: poc.c8cf3e761a86746c9ad1f054282232604.cn-hongkong.alicontainer.com, IP: <IP_ADDRESS>
    Last Deployment:
      Created at: 2021-10-15 11:58:13 +0800 CST

➜  demo-1015 curl poc.c8cf3e761a86746c9ad1f054282232604.cn-hongkong.alicontainer.com
<pre>
Hello World

                                       ##         .
                                 ## ## ##        ==
                              ## ## ## ## ##    ===
                           /""""""""""""""""\___/ ===
                      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
                           \______ o          _,/
                            \      \       _,'
                             `'--.._\..--''
</pre>

People might not know what is your ip address. I was opening an issue as good first issue, intending someone to fix it.


KeyError: 'language'

Your OS (including version) where you are running AlexaPi:
Linux raspberrypi 4.9.24-v7+ #993 SMP Wed Apr 26 18:01:23 BST 2017 armv7l GNU/Linux
Your hardware platform and model you are running on:
Raspberry
Python release (python2 --version):
Python 2.7.9

Description of problem:
Alexa is not starting

Expected:

Problem-relevant config.yaml entries:

Steps to reproduce:

python /opt/AlexaPi/src/main.py -d
That's all

Traceback (if applicable):
Traceback (most recent call last):
  File "/opt/AlexaPi/src/main.py", line 646, in <module>
    triggers.setup()
  File "/opt/AlexaPi/src/alexapi/triggers/__init__.py", line 20, in setup
    trigger.setup()
  File "/opt/AlexaPi/src/alexapi/triggers/pocketsphinxtrigger.py", line 32, in setup
    ps_config.set_string('-hmm', os.path.join(get_model_path(), self._tconfig['language']))
KeyError: 'language'

Additional info:

Hello,
It seems to be a missing option,
can you copy your config file?
Try to reset it (you can find the default file here)
Emerick

pi@raspberrypi:~ $ sudo cat /opt/AlexaPi/src/config.template.yaml
# See https://github.com/alexa-pi/AlexaPi/wiki/Audio-setup-&-debugging
# to get a better idea of how to set things in here

# Level of log output
# default: INFO
# set to DEBUG for verbose logging
logging: INFO

sound:
  # Name of your ALSA microphone/soundcard in arecord -L
  input_device: "pulse"
  # This is here if none of the listed devices works for you and you need to use a value like "plughw:1"
  # This is an override that is normally not needed and is a last resort.
  allow_unlisted_input_device: false

  playback_handler: "vlc"

  # you can go here with alsa, pulse or others
  # keep blank for the best audio output selected by the underlying code
  output: "pulse"
  # output device for the audio output specified above,
  # currently supports ALSA only
  output_device: ""

  # if left empty, won't be passed to the underlying library / command if it supports it
  # if it doesn't 100% will be used
  default_volume: 80

  # Means the same as above, but is used for media (playing music for example)
  # Leave blank to use the same setting as for speech content
  media_output:
  media_output_device:
  media_default_volume:

  # Some devices clip off the beginning/end of audio files being played back. The
  # value is the number of seconds of silence to pad the beginning and end of the audio. Only
  # the sox handler supports this configuration option.
  playback_padding: 0

  # Google Assistant SDK Audio Adjustments
  # If Assistant audio is choppy, try adjusting the sound device's block size [...]:
  #   If using a USB speaker or dedicated soundcard, set block size to `0` to automatically adjust the buffer size.
  #   If using the line-out 3.5mm audio jack on the Raspberry Pi, set block size to a value larger than the `ConverseResponse` audio payload size.
  #   e.g. 3200
  # If Assistant audio is truncated, try adjusting the sound device's flush size [...]
  # --> see https://developers.google.com/assistant/sdk/prototype/getting-started-pi-python/troubleshooting
  # (licensed under the Creative Commons Attribution 3.0 License, code samples are licensed under the Apache 2.0 License)
  #
  # Test for your self and use the best block size value in the settings below:
  # /opt/alexaPi/env/bin/python -m googlesamples.assistant --audio-block-size=<test_value>
  assistant:
    block_size: ""
    flush_size: ""

# Amazon Alexa settings
alexa:
  Client_ID:
  Client_Secret:
  Device_Type_ID:
  Security_Profile_Description:
  Security_Profile_ID:
  refresh_token:

# See https://github.com/alexa-pi/AlexaPi/wiki/Triggers for the description of these options
triggers:
  platform:
    enabled: false
    voice_confirm: false

    # one of: oneshot-vad, continuous, continuous-vad
    event_type: "oneshot-vad"

    # only for "continuous" event_types
    long_press:
      # system command to run after pressing the button for _duration_ number of seconds
      # empty to disable
      command: ""

      # duration in seconds
      duration: 10

      # CURRENTLY DISABLED
      # optional audio file to play before executing the command
      # you might wanna use full path to make sure AlexaPi finds it
      # you can use {resources_path} for the path to the AlexaPi "resources" directory
      audio_file: ""

  pocketsphinx:
    enabled: true
    voice_confirm: true

    # add your Hotwords to ./keyphrase.list too (in lowercase)!
    ## 'phrase' string only
    phrase: "alexa"
    ## 'phrase_assistant' can be a string or string[] (lowercase)
    ## all howtwords here will trigger Assistant, everything else in your ./keyphrase.lst will trigger Alexa
    ## phrase_assistant = ["ok google", "hey google"]
    phrase_assistant: "google"
    threshold: 1e-10 # unused, change in ./keyphrase.list

    language: "en-us"
    dictionary: "cmudict-en-us.dict"

# Commands to run before and after an interaction begins. Leave empty to disable.
event_commands:

  # Example used to lower shairport-sync volume during interaction with alexa
  #     startup: "amixer set shairportvolume 100%"
  #     pre_interaction: "amixer set shairportvolume 10%-""
  #     post_interaction: "amixer set shairportvolume 10%+""
  # Note this assumes you have redirected shairport-syncs audio to a seperate softdevice
  # with control "shairportvolume". Example asound.conf avalible in the scripts folder

  # Command to run at the start of AlexaPi
  startup: ""

  # Command to run after a trigger is detected but before an interaction begins
  pre_interaction: ""

  # Command to run after the interaction has completed
  post_interaction: ""

  # Command to run during a clean shutdown of AlexaPi
  shutdown: ""

platform:
  # Name of your platform, e.g. raspberrypi, orangepi, desktop
  device: "raspberrypi"

platforms:
  # common config for all platforms (if they support the options)
  # can be overriden in the the respective platform sections
  common:

  chip:
    # GPIO Pin with button connected
    button: XIO-P1
    # GPIO Pin for the playback/activity light
    plb_light: XIO-P3
    # GPIO Pin for the recording light
    rec_light: XIO-P5

  raspberrypi:
    # GPIO Pin with button connected
    button: 18
    # GPIO Pin for the playback/activity light
    plb_light: 24
    # GPIO Pin for the recording light
    rec_light: 25

  orangepi:
    # GPIO Pin with button connected
    button: 20
    # GPIO Pin for the playback/activity light
    plb_light: 9
    # GPIO Pin for the recording light
    rec_light: 8

  desktop:
    min_seconds_to_record: 3

  dummy:

  magicmirror:
    # Magic Mirror - github.com/MichMich/MagicMirror
    # Integrates with MMM-AlexaPi module (github.com/dgonano/MMM-AlexaPi) to display listening, playback, etc status
    # Hostname of the AlexaPi HTTP server, leave empty for any name
    hostname: ""
    # Port the ALexaPi HTTTP server binds to
    port: 5055
    # Hostname of the Magic Mirror
    mm_hostname: "localhost"
    # Port of the Magic Mirror
    mm_port: "8080"
    # How ofter the Hearbeat fires in seconds
    hb_timer: 5

  hyperion:
    # Hostname of the Hyperion node's JSON server
    hyperion_json_host: "<IP_ADDRESS>"
    # Port of the Hyperion node's JSON server
    hyperion_json_port: 19444
    # Visual status as static 'color' or 'effect'
    # Overridden by 'hyperion_flash_state_xxx'
    hyperion_mode: "effect"
    # Running speed when visualizing as 'effect'
    hyperion_effect_speed: 1
    hyperion_priority: 1
    color_playback: [80, 213, 35]
    color_processing: [35,169,213]
    color_recording: [168, 35, 213]
    flash_duration: 500
    flash_frequency: 8
    # Use Strobe effect instead of default effect or static color
    flash_state_playback: true
    flash_state_processing: false
    flash_state_recording: false
    # Visualize playback state
    indicate_playback: true
    #Also print json request/response when in debug mode
    verbose: false

  serial:
    port: "/dev/ttyACM0"
    baudrate: 9600
    messages:
      trigger: ""
      playback_start: "g"
      playback_end: "x"
      recording_start: ""
      recording_end: ""
      processing_start: ""
      processing_end: ""
      failure: ""
      success: ""

I did replace config.template.yaml with what you've given me, same error.

Ha sorry I did not specify, the config is located in /etc/opt/AlexaPi/config.yaml in your Raspberry, config.template.yaml is just a template.

Yeah, tought about it, but I couldn't find the completed config.py :D
Here it is:
`pi@raspberrypi:/opt/AlexaPi/src/alexapi $ sudo cat /etc/opt/AlexaPi/config.yaml
See https://github.com/alexa-pi/AlexaPi/wiki/Audio-setup-&-debugging
to get a better idea of how to set things in here
Level of log output
default: INFO
set to DEBUG for verbose logging
logging: INFO
sound:
Name of your ALSA microphone/soundcard in arecord -L
#input_device: "plughw:CARD=Device,DEV=0"
input_device: "pulse"
This is here if none of the listed device: "raspberrypi"
This is an override that is normally not needed and is a last resort.
allow_unlisted_input_device: false
playback_handler: "vlc"
you can go here with alsa, pulse or others
keep blank for the best audio output selected by the underlying code
output: "pulse"
output device: "raspberrypi"
currently supports ALSA only
output_device: ""
if left empty, won't be passed to the underlying library / command if it supports it
if it doesn't 100% will be used
default_volume: 80
Means the same as above, but is used for media (playing music for example)
Leave blank to use the same setting as for speech content
media_output:
media_output_device:
media_default_volume:
Some device: "raspberrypi"
value is the number of seconds of silence to pad the beginning and end of the audio. Only
the sox handler supports this configuration option.
playback_padding: 0
Amazon Alexa settings
alexa:
Client_ID: "amzn1.application-oa2-client.29399085c36142e893d5b9a19d495bfa"
Client_Secret: "replaced_for_reasons"
Device_Type_ID: "raspi_mc"
Security_Profile_Description: "Raspi"
Security_Profile_ID: "amzn1.application.83ebaddc9a8b45cdbae939a0f72f87c9"
refresh_token: "replaced_for_reasons"
See https://github.com/alexa-pi/AlexaPi/wiki/Triggers for the description of these options
triggers:
platform:
enabled: true
voice_confirm: false
# one of: oneshot-vad, continuous, continuous-vad
event_type: "oneshot-vad"

# only for "continuous" event_types
long_press:
  # system command to run after pressing the button for _duration_ number of seconds
  # empty to disable
  command: ""

  # duration in seconds
  duration: 10

  # CURRENTLY DISABLED
  # optional audio file to play before executing the command
  # you might wanna use full path to make sure AlexaPi finds it
  # you can use {resources_path} for the path to the AlexaPi "resources" directory
  audio_file: ""

pocketsphinx:
enabled: true
voice_confirm: true
phrase: "alexa"
threshold: 1e-10

Commands to run before and after an interaction begins. Leave empty to disable.
event_commands:
Example used to lower shairport-sync volume during interaction with alexa
startup: "amixer set shairportvolume 100%"
pre_interaction: "amixer set shairportvolume 10%-""
post_interaction: "amixer set shairportvolume 10%+""
Note this assumes you have redirected shairport-syncs audio to a seperate softdevice
with control "shairportvolume". Example asound.conf avalible in the scripts folder
Command to run at the start of AlexaPi
startup: ""
Command to run after a trigger is detected but before an interaction begins
pre_interaction: ""
Command to run after the interaction has completed
post_interaction: ""
Command to run during a clean shutdown of AlexaPi
shutdown: ""
platform:
Name of your platform, e.g. raspberrypi, orangepi, desktop
device: "raspberrypi"
platforms:
common config for all platforms (if they support the options)
can be overriden in the the respective platform sections
common:
chip:
# GPIO Pin with button connected
button: XIO-P1
# GPIO Pin for the playback/activity light
plb_light: XIO-P3
# GPIO Pin for the recording light
rec_light: XIO-P5
raspberrypi:
# GPIO Pin with button connected
button: 18
# GPIO Pin for the playback/activity light
plb_light: 24
# GPIO Pin for the recording light
rec_light: 25
orangepi:
# GPIO Pin with button connected
button: 20
# GPIO Pin for the playback/activity light
plb_light: 9
# GPIO Pin for the recording light
rec_light: 8
desktop:
min_seconds_to_record: 3
dummy:
magicmirror:
# Magic Mirror - github.com/MichMich/MagicMirror
# Integrates with MMM-AlexaPi module (github.com/dgonano/MMM-AlexaPi) to display listening, playback, etc status
# Hostname of the AlexaPi HTTP server, leave empty for any name
hostname: ""
# Port the ALexaPi HTTTP server binds to
port: 5055
# Hostname of the Magic Mirror
mm_hostname: "localhost"
# Port of the Magic Mirror
mm_port: "8080"
# How ofter the Hearbeat fires in seconds
hb_timer: 5
hyperion:
# Hostname of the Hyperion node's JSON server
hyperion_json_host: "<IP_ADDRESS>"
# Port of the Hyperion node's JSON server
hyperion_json_port: 19444
# Visual status as static 'color' or 'effect'
# Overridden by 'hyperion_flash_state_xxx'
hyperion_mode: "effect"
# Running speed when visualizing as 'effect'
hyperion_effect_speed: 1
hyperion_priority: 1
color_playback: [80, 213, 35]
color_processing: [35,169,213]
color_recording: [168, 35, 213]
flash_duration: 500
flash_frequency: 8
# Use Strobe effect instead of default effect or static color
flash_state_playback: true
flash_state_processing: false
flash_state_recording: false
# Visualize playback state
indicate_playback: true
#Also print json request/response when in debug mode
verbose: false
serial:
port: "/dev/ttyACM0"
baudrate: 9600
messages:
trigger: ""
playback_start: "g"
playback_end: "x"
recording_start: ""
recording_end: ""
processing_start: ""
processing_end: ""
failure: ""
success: ""
`

Anyone? :(

If you look at your existing config.yaml and compare it with the template, you'll see that there's a "language" field missing.
Was this by any chance an upgrade, where you opted to keep your old config file?
Regardless, you can fix this particular issue by adding that line to your config.yaml.
I suspect that you may find further issues though, and would recommend copying the config template into its place and putting your particular license information and config settings into it.

I am looking at the template and I can't seem to find the field "language"
I tried to add language: "english" on the first indentation of the config yaml, but nothing.

Huh. Yeah, you're right.
So what did you post yesterday, before your actual config.yaml file? It looks like you've deleted the post.
I noticed the language line in that, listed as 'en_us' and figured that was it.
Sorry.

That was me copy pasting the config.template from my local directory :D

Oh. I added language: "en-US" under pocketsphinx and now it gives me the same error, but now with dictionary.

Yeah, something's not matching in your setup. That config template you ppsted had a "dict" line that would fix that. Is this an upgrade or something like that? Adjustments have been made to the structure over time.
That config template you originally posted has all this stuff in it.  Might compare the two to see what else is missing.

I added dictionary under pocketsphinx as
dictionary: "en-US"
Now it gives me this. I checked my template, I don't have either dict / dictionary / language.
Current configuration:
[NAME]                  [DEFLT]         [VALUE]
-agc                    none            none
-agcthresh              2.0             2.000000e+00
-allphone
-allphone_ci            no              no
-alpha                  0.97            9.700000e-01
-ascale                 20.0            2.000000e+01
-aw                     1               1
-backtrace              no              no
-beam                   1e-48           1.000000e-48
-bestpath               yes             yes
-bestpathlw             9.5             9.500000e+00
-ceplen                 13              13
-cmn                    live            live
-cmninit                40,3,-1         40,3,-1
-compallsen             no              no
-debug                                  0
-dict                                   /usr/local/lib/python2.7/dist-packages/pocketsphinx/model/en-US
-dictcase               no              no
-dither                 no              no
-doublebw               no              no
-ds                     1               1
-fdict
-feat                   1s_c_d_dd       1s_c_d_dd
-featparams
-fillprob               1e-8            1.000000e-08
-frate                  100             100
-fsg
-fsgusealtpron          yes             yes
-fsgusefiller           yes             yes
-fwdflat                yes             yes
-fwdflatbeam            1e-64           1.000000e-64
-fwdflatefwid           4               4
-fwdflatlw              8.5             8.500000e+00
-fwdflatsfwin           25              25
-fwdflatwbeam           7e-29           7.000000e-29
-fwdtree                yes             yes
-hmm                                    /usr/local/lib/python2.7/dist-packages/pocketsphinx/model/en-US
-input_endian           little          little
-jsgf
-keyphrase
-kws                                    /opt/AlexaPi/src/keyphrase.list
-kws_delay              10              10
-kws_plp                1e-1            1.000000e-01
-kws_threshold          1               1.000000e+00
-latsize                5000            5000
-lda
-ldadim                 0               0
-lifter                 0               0
-lm
-lmctl
-lmname
-logbase                1.0001          1.000100e+00
-logfn
-logspec                no              no
-lowerf                 133.33334       1.333333e+02
-lpbeam                 1e-40           1.000000e-40
-lponlybeam             7e-29           7.000000e-29
-lw                     6.5             6.500000e+00
-maxhmmpf               30000           30000
-maxwpf                 -1              -1
-mdef
-mean
-mfclogdir
-min_endfr              0               0
-mixw
-mixwfloor              0.0000001       1.000000e-07
-mllr
-mmap                   yes             yes
-ncep                   13              13
-nfft                   512             512
-nfilt                  40              40
-nwpen                  1.0             1.000000e+00
-pbeam                  1e-48           1.000000e-48
-pip                    1.0             1.000000e+00
-pl_beam                1e-10           1.000000e-10
-pl_pbeam               1e-10           1.000000e-10
-pl_pip                 1.0             1.000000e+00
-pl_weight              3.0             3.000000e+00
-pl_window              5               5
-rawlogdir
-remove_dc              no              no
-remove_noise           yes             yes
-remove_silence         yes             yes
-round_filters          yes             yes
-samprate               16000           1.600000e+04
-seed                   -1              -1
-sendump
-senlogdir
-senmgau
-silprob                0.005           5.000000e-03
-smoothspec             no              no
-svspec
-tmat
-tmatfloor              0.0001          1.000000e-04
-topn                   4               4
-topn_beam              0               0
-toprule
-transform              legacy          legacy
-unit_area              yes             yes
-upperf                 6855.4976       6.855498e+03
-uw                     1.0             1.000000e+00
-vad_postspeech         50              50
-vad_prespeech          20              20
-vad_startspeech        10              10
-vad_threshold          2.0             2.000000e+00
-var
-varfloor               0.0001          1.000000e-04
-varnorm                no              no
-verbose                no              no
-warp_params
-warp_type              inverse_linear  inverse_linear
-wbeam                  7e-29           7.000000e-29
-wip                    0.65            6.500000e-01
-wlen                   0.025625        2.562500e-02

INFO: feat.c(715): Initializing feature stream to type: '1s_c_d_dd', ceplen=13, CMN='live', VARNORM='no', AGC='none'
ERROR: "acmod.c", line 83: Folder '/usr/local/lib/python2.7/dist-packages/pocketsphinx/model/en-US' does not contain acoustic model definition 'mdef'
Traceback (most recent call last):
  File "/opt/AlexaPi/src/main.py", line 646, in <module>
    triggers.setup()
  File "/opt/AlexaPi/src/alexapi/triggers/__init__.py", line 20, in setup
    trigger.setup()
  File "/opt/AlexaPi/src/alexapi/triggers/pocketsphinxtrigger.py", line 49, in setup
    self._decoder = Decoder(ps_config)
  File "/usr/local/lib/python2.7/dist-packages/pocketsphinx/pocketsphinx.py", line 228, in __init__
    this = _pocketsphinx.new_Decoder(*args)
RuntimeError: new_Decoder returned -1

You were right.
There was a language in my config, and a dictionary.
https://github.com/xtools-at/AssistantPi/blob/master/src/config.template.yaml
Thank you for your help!


Handling NPE when schema registry details not required

getSchemaManager() requires schema registry class details which might not be required when autoCreateTables is set to false. Failing to provide schema details, NullPointerException is being thrown hence the connector becomes unusable with any format other than avro.

Ideally we shall have extended different class overriding base feature class and adding functionality for autoCreateTables with schemaManager. To unblock the connector for release added null check to handle issue.

	at com.wepay.kafka.connect.bigquery.config.BigQuerySinkConfig.getSchemaRetriever(BigQuerySinkConfig.java:555)
	at com.wepay.kafka.connect.bigquery.BigQuerySinkTask.getSchemaManager(BigQuerySinkTask.java:263)
	at com.wepay.kafka.connect.bigquery.BigQuerySinkTask.getGcsWriter(BigQuerySinkTask.java:309)
	at com.wepay.kafka.connect.bigquery.BigQuerySinkTask.start(BigQuerySinkTask.java:330)
	at org.apache.kafka.connect.runtime.WorkerSinkTask.initializeAndStart(WorkerSinkTask.java:300)
	at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:189)
	at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:177)
	at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:227)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
[2020-03-02 20:04:16,203] ERROR WorkerSinkTask{id=bigquery-connector-9} Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask:180)
[2020-03-02 20:04:16,203] WARN Could not stop task (org.apache.kafka.connect.runtime.WorkerSinkTask:160)
java.lang.NullPointerException
	at com.wepay.kafka.connect.bigquery.BigQuerySinkTask.stop(BigQuerySinkTask.java:366)
	at org.apache.kafka.connect.runtime.WorkerSinkTask.close(WorkerSinkTask.java:158)
	at org.apache.kafka.connect.runtime.WorkerTask.doClose(WorkerTask.java:156)
	at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:183)
	at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:227)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

@bingqinzhou @wicknicks @criccomini @whynick1 Please review, I do not have permissions to add reviewers.
https://github.com/wepay/kafka-connect-bigquery/pull/248/files#r386433746

Codecov Report

Merging #257 into master will not change coverage.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master     #257   +/-   ##
=========================================
  Coverage     70.94%   70.94%
- Complexity      289      290    +1
=========================================
  Files            32       32
  Lines          1504     1504
  Branches        156      157    +1
=========================================
  Hits           1067     1067
  Misses          383      383
  Partials         54       54

Impacted Files
Coverage Δ
Complexity Δ

...wepay/kafka/connect/bigquery/BigQuerySinkTask.java
60.31% <100%> (ø)
27 <0> (+1)
:arrow_up:

Codecov Report

Merging #257 into master will not change coverage by %.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #257   +/-   ##
=========================================
  Coverage     70.94%   70.94%
- Complexity      289      290    +1
=========================================
  Files            32       32
  Lines          1504     1504
  Branches        156      157    +1
=========================================
  Hits           1067     1067
  Misses          383      383
  Partials         54       54


Add go1.21

Issue #, if available:
Description of changes:
Add the go 1.21 prowjobs
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


Bug fix: Root template todo to use slug, required value given in the template

Fixes a bug where root template todo was not using the slug, required value given in the template

A! You can pull updates from main to make build stage pass.

Coverage remained the same at 92.548% when pulling dcae2d56f1235e58c5c61b4e9f9367a246a3b9f8 on checklist-required-indicator into a6f26c37a0f0cb73ed771296e1db4ab693a100ac on main.


Fix serial communication between Arduino and Raspi

Currently, the relevant files are in the serial_arduino_pi_test directory. One for Raspberry Pi and one for the Arduino, but when I run them, the Python script isn't properly getting the messages from the Arduino. It usually only gets part of the message, skips letters, and doesn't know where the boundary is between messages. It also eventually crashes.
I think if we can get this working properly we can eventually use it as the method for receiving buzzer inputs. Like I'm thinking the Arduino can have a radio module and process all the radio signals and then just output a string to the Raspberry Pi which the Pi can interpret as "Nobody pressing the button, Player 1 pressed the button, Player 3 pressed the button, Nobody pressing the button..."

Fixed this. Can't really remember the code I was using for the original problem, but this is a non-issue now. It's worth noting that you need to make sure the flask app isn't run in debug mode because that starts 2 instances (parent and child) who are both trying to access the serial port so things don't always work right. I'm pretty sure that wasn't the original issue, but either way, all good now.


force_calibration: tighten test tolerances

Why this PR?
Diffusion constant and power spectrum tests were ineffective at catching problems, since the default absolute tolerance set by numpy was high enough for pretty big relative deviations to slip by (diffusion constants in volts are tiny, in the order of 1e-12). This PR tightens these tolerances to make sure the tests fire when something changes inadvertently.
Note that nothing was broken.

Can you please add the story behind this in numpy and Python to the commit message? Would be nice to be able to read about this problem.

Good idea, thanks!
Added! :)


Tidal and apple music implementation broke

Tidal return status 403 and apple music spamming fetching new tokens

can you send me any logs or something so I can fix the error?


[AutoPR monitor/resource-manager] Update ScheduledQueryRule resource documentation to include LogToMetricAction

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3990

(message created by the CI based on PR content)

Codecov Report

Merging #3414 into restapi_auto_monitor/resource-manager will increase coverage by 16.39%.
The diff coverage is 68.96%.

@@                            Coverage Diff                             @@
##           restapi_auto_monitor/resource-manager    #3414       +/-   ##
==========================================================================
+ Coverage                                   39.6%      56%   +16.39%
==========================================================================
  Files                                      10238     7377     -2861
  Lines                                     308666   154529   -154137
==========================================================================
- Hits                                      122252    86543    -35709
+ Misses                                    186414    67986   -118428

Impacted Files
Coverage Δ

...re/mgmt/monitor/models/log_search_rule_resource.py
38.46% <ø> (ø)
:arrow_up:

...mt-monitor/azure/mgmt/monitor/models/action_py3.py
75% <ø> (+32.14%)
:arrow_up:

...e-mgmt-monitor/azure/mgmt/monitor/models/action.py
75% <ø> (ø)
:arrow_up:

...e-mgmt-monitor/azure/mgmt/monitor/models/source.py
50% <ø> (ø)
:arrow_up:

...mt-monitor/azure/mgmt/monitor/models/source_py3.py
50% <100%> (+20.58%)
:arrow_up:

...mgmt-monitor/azure/mgmt/monitor/models/__init__.py
100% <100%> (+0.46%)
:arrow_up:

...gmt/monitor/models/log_search_rule_resource_py3.py
38.46% <100%> (+20.6%)
:arrow_up:

...-monitor/azure/mgmt/monitor/models/criteria_py3.py
62.5% <62.5%> (ø)

...re/mgmt/monitor/models/log_to_metric_action_py3.py
62.5% <62.5%> (ø)

.../azure/mgmt/monitor/models/log_to_metric_action.py
62.5% <62.5%> (ø)

... and 6698 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 d143388...3c011eb. Read the comment docs.


Implement analytical n0 and n2 initialization

Use the Innocenzi formula

These changes are used in the notebook: https://github.com/radiasoft/rslaser_scratch/blob/main/notebooks/propagate/fenics_vs_innocenzi.ipynb


"Was tun bei einer roten Kachel?" Blog posting

Where to find the issue
https://www.coronawarn.app/de/blog/2021-12-15-cwa-red-tile-guidance/ "Was tun bei einer roten Kachel?"
https://www.coronawarn.app/en/blog/2021-12-15-cwa-red-tile-guidance/ "Was tun bei einer roten Kachel?"
Describe the issues

Covid-19 is written inconsistently as "Covid-19" and "COVID-19"

The link in "Mehr zu den Empfehlungen finden Sie auf der Website des Robert Koch-Instituts." includes a jsessionid.

The visible part of the links to

https://www.coronawarn.app/de/faq/#voluntary_self_quarantine
https://www.coronawarn.app/de/faq/#quarantine_measures

are literal and absolute.

In the following:

https://www.coronawarn.app/de/faq/#where_can_i_get_tested
https://www.coronawarn.app/de/faq/#red_card_how_to_test
https://www.coronawarn.app/de/science/2021-10-15-science-blog-4/#3-privacy-preserving-analytics

the visible part of the links are literal and both the visible part and the target are absolute references.

In "Antworten auf häufig gestellte Fragen rund um das Verhalten bei einer roten Kachel finden Sie auch in den FAQs auf der Website der CWA." the target is absolute not relative.

The English text is a complete copy of the German text which makes maintenance of the text twice the effort if all corrections have to be repeated.

Suggested change

Capitalize "COVID-19" everywhere in accordance with other posts, the FAQs and RKI's spelling on https://www.rki.de/DE/Content/InfAZ/N/Neuartiges_Coronavirus/nCoV.html

Remove jsessionid from the RKI link

Change absolute links to relative links

Integrate relative links into text instead of quoting absolute links

For the English posting use only the summary German text and add a link to the full German text to avoid having to maintain two copies of the same text

The actual text reads very well, so the above comments are more about the technical aspects of the posting.
Let me know if the Open Source Team wants to correct these points and if you need assistance. The PR https://github.com/corona-warn-app/cwa-website/pull/2195 was only open for 4 minutes before it was merged, so that was not long enough to read and comment on it before it was published.

@MikeMcC399 Thanks for the report. Happy with your suggestions. Do you want to provide a PR?

@dsarkar

Thanks for the report. Happy with your suggestions. Do you want to provide a PR?

Thanks for your confirmation. I will provide a PR for the German text.
Regarding the posting in the English blog content: Do you know if there is a time-line for replacing the German text by translated English text? If this will happen soon, then I would hold back on making corrections there, otherwise I would suggest changes to the English blog as well.

@MikeMcC399 Thanks for offering a PR, very much appreciated. I suggest to keep the English blog as it is. I expect the translated version within a couple of days.

On more point:
"Allein vom 1. bis einschließlich 7. Dezember haben geschätzt mehr als 1,1 Millionen Nutzer*innen der Corona-Warn-App (CWA) eine rote Kachel erhalten (Stand 14.12.2021)*."
The estimation needs some more explanation and source of data (https://www.coronawarn.app/de/analysis/). There are 588,072 red warnings collected from PPA, so x 2 = estimated 1,176,144 in that time period.

@MikeMcC399 I will come back to you

PR #2202 is now submitted to modify https://www.coronawarn.app/de/blog/2021-12-15-cwa-red-tile-guidance/ "Was tun bei einer roten Kachel?" DE version only.

The estimation needs some more explanation and source of data (https://www.coronawarn.app/de/analysis/). There are 588,072 red warnings collected from PPA, so x 2 = estimated 1,176,144 in that time period.

Thanks, @MikeMcC399 for your PR. The changes did not add any contextual explanations of the analysis part. Do you want me to close this issue and open a new one to keep track of this additional task?

@svengabr

The estimation needs some more explanation and source of data (https://www.coronawarn.app/de/analysis/). There are 588,072 red warnings collected from PPA, so x 2 = estimated 1,176,144 in that time period.

Thanks, @MikeMcC399 for your PR. The changes did not add any contextual explanations of the analysis part. Do you want me to close this issue and open a new one to keep track of this additional task?

I did not want to make changes in that area without agreement, so yes, it would be great if you could close this issue and open a new one regarding the explanation of the estimate.
Thank you!

I have created this new issue: https://github.com/corona-warn-app/cwa-website/issues/2203


Layer of entities not detected

Hi all,
please take a look at the DXF in attach. When this DXF is imported the layer to which each entity belongs is not recognized. All entities are on layer 0. This happens because in the header of the entity some information are stored in an unexpected order:
0
TEXT
5
1326
100
AcDbEntity
100
AcDbText
8
Numery_dzialek
62
256
370
-1
6
BYLAYER
Instead of:
0
TEXT
5
1326
330
1F
100
AcDbEntity
8
Numery_dzialek
100
AcDbText
As you can see in the first case layer is written after the second 100 tag and this cause the problem in ReadEntity procedure.
It would be possible to fix it ?
Here the DXF:
ex_02_MZ_DXF.zip
Thank you in advance.
Best regards.
Keven Corazza

I am aware of this issue, but I am not going to fix this. The program that generated that file should be the one responsible of fixing this. Under the subclass marker AcDbEntity should go all related properties that are common to all entities, such as, the layer, the linetype, the lineweight, the color, etc.

Thank you for your answer.
Yes I know what you mean but, considering that AutoCAD is able to read this file in the right way, maybe you can also try to support it.
Thanks. Best regards.


Heart beat message not sent to kernels

Duplicate of https://github.com/microsoft/vscode-jupyter/issues/16307


Added list/segments API endpoint

2 new API endpoints for lists:

list/segments
list/segment-test

Hi @AhmedSamy
Please could you merge this pull request into the repository?
Thanks!
Mark

@mhouchin Merged, and updated the tag