Requested value 'Processing' was not found.

We're using this lovely library to process our payments, but occasionally it's throwing an exception when returning the list of Invoices.  We suspect this is because the invoice state is 'Processing' and the library doesn't understand than status.
This bug is quite urgent, as it's breaking live functionality for paying customers.
Thanks!
System.ArgumentException: Requested value 'Processing' was not found.
at System.Enum.TryParseEnum(Type enumType, String value, Boolean ignoreCase, EnumResult& parseResult)
at Recurly.StringExtensions.ParseAsEnum[T](String source) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Extensions\StringExtensions.cs:line 54
at Recurly.Invoice.ReadXml(XmlTextReader reader) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Invoice.cs:line 261
at Recurly.InvoiceList.ReadXml(XmlTextReader reader) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\List\InvoiceList.cs:line 31
at Recurly.Client.ReadWebResponse(HttpWebResponse response, ReadXmlDelegate readXmlDelegate, ReadXmlListDelegate readXmlListDelegate, ReadResponseDelegate responseDelegate) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Client.cs:line 378
at Recurly.Client.PerformRequest(HttpRequestMethod method, String urlPath, WriteXmlDelegate writeXmlDelegate, ReadXmlDelegate readXmlDelegate, ReadXmlListDelegate readXmlListDelegate, ReadResponseDelegate reseponseDelegate) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Client.cs:line 169
at Recurly.Client.PerformRequest(HttpRequestMethod method, String urlPath, ReadXmlListDelegate readXmlListDelegate) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Client.cs:line 120
at Recurly.RecurlyList`1.GetItems() in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\List\RecurlyList.cs:line 89
at Recurly.Invoices.List(String accountCode) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Invoice.cs:line 421

Thank you for reporting.
@bhelx Do you have any reservations with adding this state to the invoice enum? I ask because it may be a situation where you can only query for a subset of the available states. For instance, you couldn't query for invoices in Processing state, but invoices in that state would be returned if you queried for All invoices.

@NPSF3000 @1TheMuffinMan Yes, I think we should add it. This is a newer state that applies only to asynchronous invoices (ACH invoices)

@1TheMuffinMan sorry to answer your question more directly, I don't have any reservations about that.

@bhelx I'm working on the unit test for this and when I try to create ACH billing info using the sample here https://dev.recurly.com/docs/create-an-accounts-billing-info-bank-account I get account.routing_number invalid. Is there a test number similar to credit cards<PHONE_NUMBER>..) that I should use here or does the account we're running the tests against need to be provisioned for ACH? I notice there aren't existing tests for that feature.

@1TheMuffinMan yes, assuming you are using the test gateway, you can find test numbers here:
https://docs.recurly.com/docs/test
You'll probably want to use Routing Number: 123456780 and Account Number: 111111111

@bhelx Thank you for the link!
@NPSF3000 Just want to let you know that I submitted a pull request for this fix and hopefully we can get it merged soon. Thanks for your patience.

Thanks @1TheMuffinMan
I'll get it merged and do a patch release today.

Okay, I've released this as https://github.com/recurly/recurly-client-net/releases/tag/1.4.8
Nuget: https://www.nuget.org/packages/recurly-api-client/1.4.8

@bhelx and @1TheMuffinMan.
Thank you so much for your quick and prompt resolution in this manner.  We'll update our library and do regression testing shortly.

 Please let us know if you're still having issues or encounter anything else.

@1TheMuffinMan @bhelx Can you please just take a quick look at the latest nuget package?  When I updated VS complained it can't find the dll.
Under 'packages\recurly-api-client.1.4.8\lib\net35' I have a 'Recurly.dll - Shortcut' instead of a dll.

@NPSF3000 seems like the release copied a shortcut of the dll. I've released 1.4.9 to fix it. Could you let me know if this works out?

@bhelx seems to be working now, much appreciated.

@bhelx  @1TheMuffinMan Sorry to be a nuisance, but we're seeing this problem again in a new production push.  Still on 1.4.9.  Could you maybe take a quick look at the following stacktrace to rule out the driver?
System.ArgumentException: Requested value 'Processing' was not found.
   at System.Enum.EnumResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument)
   at System.Enum.TryParseEnum(Type enumType, String value, Boolean ignoreCase, EnumResult& parseResult)
   at Recurly.StringExtensions.ParseAsEnum[T](String source) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Extensions\StringExtensions.cs:line 54
   at Recurly.Transaction.ReadXml(XmlTextReader reader) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Transaction.cs:line 222
   at Recurly.TransactionList.ReadXml(XmlTextReader reader) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\List\TransactionList.cs:line 49
   at Recurly.Invoice.ReadXml(XmlTextReader reader) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Invoice.cs:line 359
   at Recurly.InvoiceList.ReadXml(XmlTextReader reader) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\List\InvoiceList.cs:line 31
   at Recurly.Client.ReadWebResponse(HttpWebResponse response, ReadXmlDelegate readXmlDelegate, ReadXmlListDelegate readXmlListDelegate, ReadResponseDelegate responseDelegate) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Client.cs:line 378
   at Recurly.Client.PerformRequest(HttpRequestMethod method, String urlPath, WriteXmlDelegate writeXmlDelegate, ReadXmlDelegate readXmlDelegate, ReadXmlListDelegate readXmlListDelegate, ReadResponseDelegate reseponseDelegate) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Client.cs:line 169
   at Recurly.Client.PerformRequest(HttpRequestMethod method, String urlPath, ReadXmlListDelegate readXmlListDelegate) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Client.cs:line 120
   at Recurly.RecurlyList`1.GetItems() in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\List\RecurlyList.cs:line 89
   at Recurly.Invoices.List(String accountCode) in C:\Users\ben\Documents\GitHubVisualStudio\recurly-client-net\Library\Invoice.cs:line 422

@NPSF3000 Looks like while invoices enum has the processing state, one of the transaction enums (there's 2) needs that state as well. It's not clear which one from the stack trace. Tonight I will reproduce this, fix it and add a new unit test.
Thanks for reporting.

@1TheMuffinMan It might be transaction. I'll send a PR today to catch this and see if there are some other values missing

@NPSF3000 Standby for another PR. I'll be pushing out another fix today.

@1TheMuffinMan @NPSF3000 I went ahead and made sure all the enum values I could find were up to date: https://github.com/recurly/recurly-client-net/pull/215


return fps stats from update method to caller

sometimes it is useful to know how code is performing (eg to reduce scene complexity if fps is low), this patch returns an object containing { fps, maxFps, minFps) from the update() method.

Wouldn't it be better to have the object already created and just update it?
This code would be creating a new object every frame.

This just exposes fps, fpsMax and fpsMin directly on the stats object. before update() is called these properties would be undefined. I think this would have slightly better performance than returning an object, and it's always available.

https://github.com/mrdoob/stats.js/commit/256bd774e958b2c65e012b3eebb7014d54e9b469


Add only restriction to getParams()

Proposal
Enhanced Request::getParams() method with an extra argument to filter keys.
$request->getParams(['name', 'content']);

This will filter parameters exporting only the specified keys (defaulting to null if the key doesn't exist). I am unsure for the "defaulting to null" so feel free to comment or discard the whole PR if you think this feature should not be included by Slim.
Possible changes

Do not default to null if a key doesn't exist (let PHP throw an error or create a custom exception ?)
Replace the array argument with a spread operator or func_get_args so we can write $request->getParams('name', 'content');

Coverage decreased (-0.5%) to 96.849% when pulling 25d59b60d82438ea3bdf3fa1424f9acac541b94d on Grafikart:feat-params into 698749716d8fe4ca50513d97a1b069bedb314729 on slimphp:3.x.

I don't get the change in coveralls % since my changes are covered by new tests :(

Coverage increased (+0.01%) to 97.321% when pulling dde1ba9afcbb6ea0c431400b564deec160e35c49 on Grafikart:feat-params into 698749716d8fe4ca50513d97a1b069bedb314729 on slimphp:3.x.

I'm on the fence about this one as I'm not sure it adds enough that it should be part of Slim or whether it should be in user-land.

Should be user-land IMHO.

This is not that easy to implement in user-land due to our current design and currently it won't break anything in core and its not doing any harm adding it in.

I would like to see this PR implement the 2nd possible change.

I can implement the 2nd possible change but do I keep the "first argument as array" ? or only the spread operator ?

This is interesting :)
If the key doesn't exist then it shouldn't be in the returned set as otherwise getParams() and getParams(['not_there']) will return different results which is inconsistent.
I disagree with @geggleto on point 2 as I think that getParams('foo', 'bar') isn't clear that you're selecting a subset of available parameters.
Finally, I should note that the user land implementation is a one liner:
$some = array_filter($request->getParams(), function ($k) use ($only) { return in_array($k, $only); }, ARRAY_FILTER_USE_KEY);

@akrabat that is not a one-liner ;)
I am torn on the 2nd point; I could go either way with it.

Merged after changing to not provide a default of null for '$only` keys that don't exist in the params list.

Thanks @Grafikart for your work on this.


Support for complex if-conditions

Hey!
For some situations it would be handy to use more complex if-conditions like:
<!--(bake-start _foreach="item:[One, Two, Three]")-->
    {{item}} <!--(bake-start _if="item@index%2"--> it's odd <!--(bake-end)-->
<!--(bake-end)-->

or even:
<!--(bake-start _foreach="item:[1, 2, 3, 4, 5]")-->
    <!--(bake-start _if="item <= max"-->{{item}}<!--(bake-end)-->
<!--(bake-end)-->

I thought about how to integrate support for this into grunt-bake. In my opinion this is a useful case for eval. Since this is where opinions differ (saying eval is evil, B.A.D, etc.) I would like to discuss first.
My current idea is to change the validateIf to:
// expression used to search for placeholder / variables within an if-condition
var ifRegex = /([a-z_$][0-9a-z_$@]*)|(?:"([^"]*)")|(?:'([^']*)')/gi;

function validateIf( inlineValues, values ) {

	if ( "_if" in inlineValues ) {

		var value = inlineValues[ "_if" ];
		delete inlineValues[ "_if" ];

		var params = {};

		var condition = value.replace( ifRegex, function( match, varname ) {
			if( ! varname ) return match;
			// save resolved spaceholders values for later use by eval()
			params[ varname ] = resolveName( varname, values );
			// prefix all placeholders/variables to prevent access to grunt scope
			return "params." + varname;
		});

		return ! eval( condition );
	}

	return false;
}

I do the prefixing because this way (as far as I see for now) it is not possible to manipulate the if-condition from the JSON-content. As the JSON may comes from user generated (= unsecure) sources I would like to prevent this. Within the template it is possible to add javascript code, but as the template is in (trusted) developer hands, I do not see danger here or in other words danger is as high as code in Gruntfile or other js-files.
Changing to eval would make some other methods obsolete e.g. isFalse. The code above does not support semantic if currently, but that can be added.
So, ideas, remarks, recommendations? @MathiasPaumgarten what do you think?

Hey there. The implementation is clean, for sure. And I like the idea. I was just trying to think of a somewhat clean way that allows us to not use eval().
Don't get me wrong, I'm with you on the reasoning as well. This is code that gets executed locally, and it only gets fed what you write yourself, so there isn't many safer circumstances than those.
I'm pretty sure I could be persuaded to add this, as it adds really nice upsides. Would you mind making a PR for something this size. We would also have to make sure it adds semantic-if support. Can't kick that out now. Personally I don't use it, but I don't have any stats on how many people do. And it was a nice contribution.

I am totally with you regarding the eval(), I also thought about ways to omit it.  But finally came to conclusion that it would be code to write (also kind of redundant because it implements behavior already existing in javascript) or conditions will be limited in complexity and support for operators.
I will come up with a full implementation (compatible with current bake, including semantic-if) as soon as I find time and create a PR. Till then you may take a look at my PR #68 for baking extra files.


Program records

@AlisonCSmith : Here are some changes that make it possible to have a special view for programs.

Are you comfortable combining the two databases? Do you have other fields you want to present?
What should we do about the dissimilarity in image sizes?
Do you have any other series besides these three?
What kind of fine-print do you want about costs?

Hi Chuck:

Not sure I understand what you mean by your question "are you comfortable combining the 2 databases"?
Image sizes;  Will it look too ragged to just leave them as different sizes? And/or screw us up in terms of layout?
I would have an additional "card" entitled "WGBH series" (which can cover a multitude of sins...)
Text:  "This program is not yet clipped and may contain third party material.  Please
contact us to license a clip from the program and reference title and series.
Add contact button in the field

DB combining is cool.
just a wgbh logo for shows outside the big 3 (the "card" above)
try cropping the left and right of the big three logos? failing that, letter box.
on all records, have a "License Clip" button that goes to the form.
sort programs to top.
add program title to index page
more fields: broadcast date / description / length / program # / program title / series title

Image manipulation remains to be done, but everything else is covered.

@AlisonCSmith : What are the values for Series names that will be coming in from the rights DB? For a given series, will the name always be the same, or are there any sub-series?

Added a placeholder if the series is not recognized:

I think this is all the code work required. I believe this could be safely deployed, and reindexed with the new data, at any point.

@foo4thought : This PR has a solr schema change that the ruby code relies on. I think the safest thing would be to spin up a new server, but it could also probably be done on the current server, if we can tolerate a little downtime. Do you want to choose a course forward, and then I'll help you go through it?
(Stock sales does not use the server swapping strategy that we have in place for the other sites; perhaps it should.)

changing the solr schema seems like a big deal with lots of potentially hard-to-foresee consequences; I like the notion of testing such change on an "offline" instance of the app

@foo4thought : do you want to set up a new server so we can see what this looks like? How should we move this forward?

@foo4thought @Muraszko @AlisonCSmith  ... picking up the conversation where @mccalluc left off...
I'm in favor of setting up a workflow for Stock Sales similar to that of other sites, where we deploy first to a "demo" server for QA and then make it "go live".
This will take some time to set up, whether we implement the same infrastructure machinery as our other sites, or whether we do something simpler.
If we need the PR to be live before taking the time to set this up, then we'd be looking at just running the deployment script as it's currently set up, followed by an ad-hoc QA session. If we discover any bugs, we could try to "fall forward" and fix them quickly, or try to rollback. In either case, the site would be down during any repairs.

Hello all,
I know that Chuck is very busy finishing up his last hours of work here.   A couple of points and questions:

We are not in a great rush;  we can take the time required to set up the demo server
How long would it take to set up the demo server and what kind of cost would be involved?
Should we decide to go forward without the demo server, do you have any idea how
much time potentially the site could be down?

Thank you!
Alison
Be sure to visit our website: www.wgbhstocksales.org
WGBH: The Power of Public Media
From: Andrew Myers <notifications<EMAIL_ADDRESS>Reply-To: WGBH/stock-sales-2 <reply<EMAIL_ADDRESS>Date: Monday, July 18, 2016 at 1:45 PM
To: WGBH/stock-sales-2 <stock-sales-2<EMAIL_ADDRESS>Cc: Alison Smith <alison_smith<EMAIL_ADDRESS>Mention <mention<EMAIL_ADDRESS>Subject: Re: [WGBH/stock-sales-2] Program records (#334)
@foo4thoughthttps://github.com/foo4thought@Muraszkohttps://github.com/Muraszko @AlisonCSmithhttps://github.com/AlisonCSmith ... picking up the conversation where @mccalluchttps://github.com/mccalluc left off...
I'm in favor of setting up a workflow for Stock Sales similar to that of other sites, where we deploy first to a "demo" server for QA and then make it "go live".
This will take some time to set up, whether we implement the same infrastructure machinery as our other sites, or whether we do something simpler.
If we need the PR to be live before taking the time to set this up, then we'd be looking at just running the deployment script as it's currently set up, followed by an ad-hoc QA session. If we discover any bugs, we could try to "fall forward" and fix them quickly, or try to rollback. In either case, the site would be down during any repairs.

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/WGBH/stock-sales-2/pull/334#issuecomment-233403290, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AOHrFpfKs4h6BytCD9rXXbUredBYiz3nks5qW7vIgaJpZM4JBcsw.

Conversation moved to email

Closing old stale PRs. I won't touch the branch, so if you want to open a new one, feel free. I probably do not need to belong to the WGBH org.

thanks @mccalluc. Yes, we'll get you out of the Github org soon. But if you can close tix you know are stale, and save us a few cycles for trying to ascertain that for ourselves, then much obliged!


allow to specify basepath value in wsk api create shortcut form

If the user type wsk api create /pets get pets
basePath = / and path /pets
If user types
wsk api create /store/pets get pets
then basePath = /store and path /pets
basePath can't not have sub paths it will be the first string until the first /
This is base on feedback from #1495

the one concern i have with this approach is that it might come across as an arbitrary decision if we establish such a split convention.
eg. what if it want to have / as the base path for /store/pets ?

@mbehrendt - The CLI behavior would depend on the number of argument provided.  Explicit basepath specification requires 4 arguments.  Implied basepath specification needs 3 argument.

wsk api create /bp /p get action (TODAY BEHAVIOR)

basepath = /bp
apipath = /p

wsk api create /p get action   (TODAY BEHAVIOR)

basepath = /
apipath = /p

wsk api create /bp/p1/p2/p3 get action (PROPOSED BEHAVIOR)

basepath = /bp
apipath = /p1/p2/p3

@mbehrendt

eg. what if it want to have / as the base path for /store/pets ?

This can be still be supported by specifying the [BASE_PATH] value explicit form:
wsk api create [BASE_PATH] API_PATH API_VERB ACTION [flags]
In your example would be:
wsk create / /store/pets get action
BASE_PATH=/
API_PATH=/store/pets

in my mind, there is too much implied behavior.
an alternative proposal: when there is not basepath parameter specified, its value is always / by default.
with that, we don't surprise developers with setting basepath to some implied value which might not be clear to the,. we just do exactly what they requested via the cli.
what are your thoughts on this?

@mbehrendt - What you described is the the current implementation behavior, with the added stipulation (per OpenAPI/Swagger spec) that the relative path begin with /.  I tend to agree that we should be careful how much implied configuration the tooling provides; API definitions should be carefully thought out to allow for longevity and future growth.

@csantanapr - Based on the above conversation, it seem the current implementation is the desired behavior.  OK to close this issue?

I agree with @mbehrendt

an alternative proposal: when there is not basepath parameter specified, its value is always / by default.

let's closed this one.


idx has odd size

I am trying to run the phishpedia_main.py on the alibaba example. Though, my runs keep failing due to lack of memory. When inspecting the program, in siamese_pedia/inference.py, at line 105, idx is set. If I understand correctly, this should hold the indexes of the top 10 brands. Though, in my run, this variable has a shape of 10x2048x2048. Am I doing something wrong here? What shape is expected here?

Hi,
Thanks for raising the issue, I believe there is a shape mismatch bug in my code. I have fixed the bug in my latest commit, please pull and have a try again. As for the shape of idx, yes you are right it should hold the indices, it should be a single-dimensional list of shape (topK,).
In addition I replace a better test site (a phishing one), it is expected to return "Google" as targeted brand. If it does not, please let me know again.

Hi,
Can you please check src/siamese_pedia/siamese_retrain/bit_pytorch/models.py line 155, does it look like this?

Can I double check have you pulled my latest commits on main branch? I believe I have already corrected those files.

I did indeed pull the latest commits. I am not sure what is going wrong here. Though, I did create a working version for myself.
I calculate the cosine similarity not by taking the dot product, but use the sklearn.metric.pairwise.cosine_similarity.
The sim list is filled by:
    sim_list = []
    for logo in logo_feat_list:
        similarity = cosine_similarity(logo.T, img_feat.T)
        sim_list.append(similarity[0][0])

This should result in a similar result right? I have been testing this on the dataset, and results are good.

Yes, you can do this instead.


is ARM architecture supported by OLM?

Question
What did you do?
I am trying to deploy OLM by :
kubectl create -f deploy/upstream/quickstart/crds.yaml
kubectl create -f deploy/upstream/quickstart/olm.yaml

What did you expect to see?
olm pods running
What did you see instead? Under which circumstances?
# kubectl get all -o wide -A  | grep olm
olm                    pod/catalog-operator-864f76ddbd-vjkbw            0/1     CrashLoopBackOff   1          36s     <IP_ADDRESS>   rpi-master   <none>           <none>
olm                    pod/olm-operator-77ccc89d8f-knn8j                0/1     CrashLoopBackOff   2          36s     <IP_ADDRESS>   rpi-screen   <none>           <none>
olm                    deployment.apps/olm-operator                0/1     1            0           36s   olm-operator                quay.io/operator-framework/olm:latest    app=olm-operator
olm                    deployment.apps/catalog-operator            0/1     1            0           36s   catalog-operator            quay.io/operator-framework/olm:latest    app=catalog-operator
olm                    replicaset.apps/catalog-operator-864f76ddbd            1         1         0       36s   catalog-operator            quay.io/operator-framework/olm:latest    app=catalog-operator,pod-template-hash=864f76ddbd
olm                    replicaset.apps/olm-operator-77ccc89d8f                1         1         0       36s   olm-operator                quay.io/operator-framework/olm:latest    app=olm-operator,pod-template-hash=77ccc89d8f

Environment

operator-lifecycle-manager version:

# grep image olm.yaml
          image: quay.io/operator-framework/olm:latest
          imagePullPolicy: IfNotPresent
          image: quay.io/operator-framework/olm:latest
          imagePullPolicy: IfNotPresent
                image: quay.io/operator-framework/olm@sha256:91ac5bf350192e063a3c1be994827f67e254997939eda3d471253777cc840c45
                imagePullPolicy: Always
  image: quay.io/operator-framework/upstream-community-operators:latest

Kubernetes version information:

# kubectl version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2-k3s.1", GitCommit:"b8b17ba55f20e590df507fce333dfee13ab438c6", GitTreeState:"clean", BuildDate:"2019-10-16T05:17Z", GoVersion:"go1.12.12", Compiler:"gc", Platform:"linux/arm"}
Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2-k3s.1", GitCommit:"b8b17ba55f20e590df507fce333dfee13ab438c6", GitTreeState:"clean", BuildDate:"2019-10-16T05:17Z", GoVersion:"go1.12.12", Compiler:"gc", Platform:"linux/arm"}

Kubernetes cluster kind:

 k3s --version
k3s version v0.10.2 (8833bfd9)

Additional context
in the pod log:
standard_init_linux.go:211: exec user process caused "exec format error"

which typically indicates  X86_64 build trying to execute at ARM
So, the question is there any ability to get OLM running at ARM at all?

Arm is supported but the manifests that we provide in releases reference x86 images.
We will look into setting up builds for arm images - in the meantime you can build them yourself fairly easily. Take a look at our Dockerfile and swap the baseimage for an arm one with go tooling and you should be good - make build will use whatever go os/arch is configured).

Arm is supported but the manifests that we provide in releases reference x86 images.
We will look into setting up builds for arm images - in the meantime you can build them yourself fairly easily. Take a look at our Dockerfile and swap the baseimage for an arm one with go tooling and you should be good - make build will use whatever go os/arch is configured).

Has anything ever come out of this? I saw in the code that ARM was supported but it doesn't look like there are any ARM based images for the OLM out there, yet.
@ecordell do you have any recommendations for ARM base images with Go tooling?
Thanks in advance for your help.

Arm is supported but the manifests that we provide in releases reference x86 images.
We will look into setting up builds for arm images - in the meantime you can build them yourself fairly easily. Take a look at our Dockerfile and swap the baseimage for an arm one with go tooling and you should be good - make build will use whatever go os/arch is configured).

Has anything ever come out of this? I saw in the code that ARM was supported but it doesn't look like there are any ARM based images for the OLM out there, yet.
@ecordell do you have any recommendations for ARM base images with Go tooling?
Thanks in advance for your help.

Meet the same question, waiting for image update for ARM64 platform.

Would also love to see ARM support for my Pi cluster

While we wait on the builds here are the steps I took to get it working on my raspberry pi 4 cluster:

pull the repo
in upstream.Dockerfile, change the fedora builder base image to the aarch64 version.
Basically replace FROM quay.io/fedora/fedora:34-x86_64 as builder with FROM quay.io/fedora/fedora:34-aarch64 as builder
run docker build -f upstream.Dockerfile -t <insert tag> .
push the image to my registry
in deploy/upstream/quickstart/olm.yaml, change quay.io/operator-framework/olm@sha256:e9de77ac5c08643202ad42a0311d15c98ffbfd8a1dc2eab4e9f2dcaeed7110ac to the reference to the image you just pushed

You should now be able to apply the deploy/upstream/quickstart/crds.yaml and deploy/upstream/quickstart/olm.yaml as per the installation instructions.

@ChampiYann  I tried to use ur operator in a pi cluster but it failed with the usual exec format error.
I used "image: rosemay/community-operator:arm".
Please let me know if I am doing something wrong.  I am about to pull a linux image and try podman... I am on a mac.

considering this issue is open since 2019 I wouldn't get any hope it will be supported any time soon.

@joelanford Any idea on whether we'd need to simply also integrate your goreleaser work in the registry into OLM for OLM support on ARM? Would we need to change the Dockerfiles at all either?

Not having Arm images can lead to worse issues when clusters have both Arm and x86 nodes. Rather than fail outright in a pure arm based cluster, it will work when the scheduler picks x86 nodes for these pods, but fail if by chance it gets scheduled on an arm64 node. In the meantime, if arm64 support needs more discussion, can the charts add some nodeSelector with well known labels like kubernetes.io/arch=amd64 could be a temporary workaround ?

I spent some time last Friday trying to integrate goreleaser for this repository to streamline the release process for this project - that should give us a chance to produce multi-arch binaries, container images, and manifestlists as part of that effort. I still need to wrap my head around the final product, but I'm thinking it's likely we'll have arm64/amd64 tagged OLM images, along with a manifestlist image for minor version tags (with the latest tag on the horizon as there's some complexity there).

Alright, I just published quay.io/operator-framework/olm:v0.19.1 and quay.io/operator-framework/olm:v0.19 which are both manifestlist images that contain arm64/amd64/s90x/ppc64le multi-arch container images in preparation of the 0.19 minor release. Would anyone be able to test out whether those image(s) work on ARM-based clusters, and whether CRI pulls the correct architecture?

@timflannagan just gave it a try, things are looking good! This is on an aarch64 (RPi) cluster. It seems that the operatorhubio/catalog image doesn't have an associated manifest, though I don't think it is directly related to this issue. Awesome stuff!
❯ oc get pods -n olm
NAME                              READY   STATUS             RESTARTS   AGE
catalog-operator-68d788f4-vkl89   1/1     Running            0          2m53s
olm-operator-6cbcdd9576-598vl     1/1     Running            0          3m46s
operatorhubio-catalog-hmgsv       0/1     CrashLoopBackOff   4          2m47s
packageserver-674799bb95-56ztx    1/1     Running            0          22s
packageserver-674799bb95-cszst    1/1     Running            0          22s

❯ oc logs -n olm pod/operatorhubio-catalog-hmgsv
standard_init_linux.go:228: exec user process caused: exec format error

❯ podman manifest inspect quay.io/operatorhubio/catalog:latest
{
    "schemaVersion": 2,
    "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
    "config": {
        "mediaType": "application/vnd.docker.container.image.v1+json",
        "size": 3688,
        "digest": "sha256:cab5d107d4bdd47efaf2df62f2c3d194a248c69af29271c6c0aceb9dc6d6fad4"
    },
    "layers": [
        {
            "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
            "size": 2813006,
            "digest": "sha256:29291e31a76a7e560b9b7ad3cada56e8c18d50a96cca8a2573e4f4689d7aca77"
        },
        {
            "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
            "size": 2441601,
            "digest": "sha256:5140b3a86fae096a58fa267c6fd7ba95b58fdb211633cd2e0d513cfbb435ea35"
        },
        {
            "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
            "size": 169,
            "digest": "sha256:3f64a6388cf7c7a07bb47425fd3e0ca8c1fc03ae41996d41feef2d28347935d7"
        },
        {
            "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
            "size": 16171058,
            "digest": "sha256:3c43e60f6949ce8f8b149c77b467686f6acd56c85cfbc1e71607efda477a46b5"
        },
        {
            "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
            "size": 3776660,
            "digest": "sha256:37c49b312d635a330d5aed30f73778c565c35823e99342fa2695ff8ff2ddbf43"
        },
        {
            "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
            "size": 26335286,
            "digest": "sha256:c213f7ceaa8003dcf19c49402162b8eab8ec85cda71b78529307c9868a26d363"
        }
    ]
}

@timflannagan - I can confirm the same results as @jbpratt on an OCI cluster with Ampere Altra based nodes.  Only operatorhubio/catalog is failing because it does not have a manifest list image.
kubectl get pods -n olm
NAME                                READY   STATUS             RESTARTS   AGE
catalog-operator-69f7ffbc74-mkgcd   0/1     CrashLoopBackOff   2          35s
olm-operator-6cbcdd9576-4tc5s       1/1     Running            0          36s
packageserver-55dcc7f96f-9rv2h      1/1     Running            0          29s
packageserver-55dcc7f96f-zxrl7      1/1     Running            0          29s

My x86 nodes are cordoned.
kubectl get nodes -o wide
NAME          STATUS                     ROLES   AGE    VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE                  KERNEL-VERSION                       CONTAINER-RUNTIME
<IP_ADDRESS>    Ready                      node    4d1h   v1.20.8   <IP_ADDRESS>    <none>        Oracle Linux Server 7.9   5.4.17-2<IP_ADDRESS>.el7uek.aarch64   cri-o://1.20.2
<IP_ADDRESS>   Ready,SchedulingDisabled   node    4d2h   v1.20.8   <IP_ADDRESS>   <none>        Oracle Linux Server 7.9   5.4.17-2<IP_ADDRESS>.el7uek.x86_64    cri-o://1.20.2
<IP_ADDRESS>    Ready                      node    4d1h   v1.20.8   <IP_ADDRESS>    <none>        Oracle Linux Server 7.9   5.4.17-2<IP_ADDRESS>.el7uek.aarch64   cri-o://1.20.2
<IP_ADDRESS>   Ready,SchedulingDisabled   node    4d2h   v1.20.8   <IP_ADDRESS>   <none>        Oracle Linux Server 7.9   5.4.17-2<IP_ADDRESS>.el7uek.x86_64    cri-o://1.20.2
<IP_ADDRESS>   Ready                      node    4d1h   v1.20.8   <IP_ADDRESS>   <none>        Oracle Linux Server 7.9   5.4.17-2<IP_ADDRESS>.el7uek.aarch64   cri-o://1.20.2
<IP_ADDRESS>    Ready,SchedulingDisabled   node    4d2h   v1.20.8   <IP_ADDRESS>    <none>        Oracle Linux Server 7.9   5.4.17-2<IP_ADDRESS>.el7uek.x86_64    cri-o://1.20.2

@jeevanjoseph @jbpratt  Awesome, thanks for testing that out.
@jeevanjoseph Any idea on why that catalog-operator is reporting a CrashLoopBackOff status?

I think it's the same problem as this issue: there is not arm version of the container image.

Does someone have a multi-arch image for quay.io/operatorhubio/catalog:latest
I could not manage to build myself an image. I think it should be automatically offered as an official multi-arch since more vendors are providing ARM64 support.

That's a tricky one. I created an image for ARM64 only which you can find here: https://hub.docker.com/repository/docker/rosemay/community-operator
We should really discuss this in it's dedicated repo: https://github.com/operator-framework/community-operators
Or it's parent registry builder repo: https://github.com/operator-framework/operator-registry
Not sure which one is best

Sorry - that was my mistake - I also assumed it to be quay.io/operatorhubio/catalog without reading it well... Its catalog-operator and its failing because I missed updating the image and config for catalog-operator in deploy/upstream/quickstart/olm.yaml.

Hi everyone, the new release of operator-registry now supports multi-arch in the container images the support was added on Sep 30 and the release was 3 days ago.
This is the commit: https://github.com/operator-framework/operator-registry/commit/943a9a110ef938e26ec9d15a4a9724fb0601c51e

Thanks everyone for the help with testing the latest release that attempted to add linux multi-arch support - it looks like we're now waiting on the operatorhub catalogsource image to be multi-arch compatible: https://github.com/k8s-operatorhub/community-operators/issues/262.
Going to close this issue out in the meantime.

Hi @timflannagan , would it be possible to merge in https://github.com/operator-framework/operator-lifecycle-manager/pull/2896? OLM currently doesn't work on ARM, and results in these bugs since the wrong version of cp binary is included: https://github.com/operator-framework/operator-lifecycle-manager/issues/2861 https://github.com/operator-framework/operator-lifecycle-manager/issues/2769

@awgreene can we get a minor version released with the platform fix? we could build our own version of the image as a workaround but it would be nicer to just continue using the OLM images.

@vihangm that seems reasonable, I'll make sure a new version is cut shortly.

@awgreene , we just wanted to check in again. Do you know when the release will be cut? We're super excited to start using OLM on ARM.

Sorry for the delay, the v0.24.0 tag has been cut and should be available as a release shortly @aimichelle.

The releaser failed, looks like the goreleaser action needs QEMU installed so that the busybox binaries can be emulated.
Adding docker/setup-qemu-action@v2 to the releaser should probably fix it.

@vihangm seems like you're correct, I started a PR here, but I haven't used QEMU before. Any links / suggestions?

This blog post seems to provide a good summary.

Yup, just adding QEMU should suffice I believe. That will allow system emulation of aarch64 (and other architectures) and so the docker build should work again.

Perfect, I've tested it here as well, binaries were built successfully, job failed due to missing credentials. The PR above should be good to go.

Looks like v0.24.0 release addressed issue with the quay.io/operator-framework/olm image for ARM with incorrect cp binary, but next up we have an issue with the quay.io/operator-framework/upstream-opm-builder image
exec /bin/opm: exec format error


foundry: update to the latest version and fix compilation with recent Nixpkgs version

We have it on mac now?

We have it on mac now?

Yes, exactly ;)


workers_additional_policies does not attach policies to worker node

I have issues
Using workers_additional_policies I have placed the arn of three policies and they are not attaching to the worker node.
I'm submitting a...

[X ] bug report
[ ] feature request
[ ] support request - read the FAQ first!
[ ] kudos, thank you, warm fuzzy

What is the current behavior?
The policies get created but do not get attached.
If this is a bug, how to reproduce? Please include a code sample if relevant.
create a module and add this line
workers_additional_policies = [module.my-eks.route53policy.arn,module.my-eks.albpolicy.arn,module.my-eks.wafpolicy.arn]
What's the expected behavior?
Expect it to add the policy and attach to worker node
Are you able to fix this problem and submit a PR? Link here if you have already.
Here is the code from the module. var.manage_worker_iam_resources && var.create_eks are set to true in my cluster
resource "aws_iam_role_policy_attachment" "workers_additional_policies" {
count      = var.manage_worker_iam_resources && var.create_eks ? length(var.workers_additional_policies) : 0
role       = aws_iam_role.workers[0].name
policy_arn = var.workers_additional_policies[count.index]
}
Environment details

Affected module version:
OS: Linux
Terraform version: 12.24

Any other relevant info
EKS version 1.15.10

This appears to work for me.
Just for testing I created the following module:
module "eks" {
  source       = "../.."
  cluster_name = local.cluster_name
  subnets      = module.vpc.private_subnets

  vpc_id = module.vpc.vpc_id

  worker_groups = [
    {
      name                          = "worker-group-1"
      instance_type                 = "t2.small"
      asg_desired_capacity          = 1
    },
  ]

  # Example AWS managed policy for testing
  workers_additional_policies = ["arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess"]
}

And got the expected policy attachment in the plan output:
  # module.eks.aws_iam_role_policy_attachment.workers_additional_policies[0] will be created
  + resource "aws_iam_role_policy_attachment" "workers_additional_policies" {
      + id         = (known after apply)
      + policy_arn = "arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess"
      + role       = "test-eks-fBrYSBwR20200628121230482600000009"
    }

The policy was successfully attached:
aws iam list-attached-role-policies --role-name test-eks-fBrYSBwR20200628121230482600000009 --query AttachedPolicies[*].[PolicyArn] --output text
arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy
arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly
arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess
arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy

Setting manage_worker_iam_resources = false would stop the attachment of the policies. The policies must exist before applying resources from the module due to the use of count. Apart from that I do now know why the attachment would not be created.

Thank you

I tried to duplicate what you did and terraform plan is not recognizing the policy and does not give any output that something new was put in place.

I used the example code in the basic code folder and it works fine. So I'm just trying to figure out why my cluster is not picking it up.

I had the same issue where workers_additional_policies would not attach policies to worker node. After struggling a bit, I realized my mistake. I had the "workers_additional_policies" INSIDE the worker_groups block under one of the worker group. Terraform plan will not complain but it is not going to detect any changes.


Shard exception

I'm using this plugin as part of the follow data flow:  DynamoDB => Logstash => Elasticsearch
The plugin seems to be unable to find a shard or create a lease again after the error below.  And it seems to happen in a few scenarios:

disabling a dynamo stream & creating a new stream
deleting items from dynamo

I wish I had some hard steps to reproduce the issue, but a single pattern hasn't shown itself yet.
But I've tried a few things:

Isolating the logstash instance on it's own ec2 instance
Using a generic file output instead of the elasticsearch output
Wiping the elasticsearch index before starting logstash
Disabling perform_scan

I can paste more logs or link to a pastebin, but the non debug error and warning I see are:
ERROR: com.amazonaws.services.dynamodbv2.streamsadapter.model.AmazonServiceExceptionTransformer: DynamoDB Streams exception: class com.amazonaws.services.dynamodbv2.model.ResourceNotFoundException tranformed to Kinesis class com.amazonaws.services.kinesis.model.ResourceNotFoundException
com.amazonaws.services.dynamodbv2.model.ResourceNotFoundException: Requested resource not found: Shard does not exist (Service: AmazonDynamoDBStreams; Status Code: 400; Error Code: ResourceNotFoundException; Request ID: JQHMLS2F58S2N7U2H47AMQDDB7VV4KQNSO5AEMVJF66Q9ASUAAJG)
	at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1182)
	at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:770)
	at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:489)
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:310)
	at com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClient.invoke(AmazonDynamoDBStreamsClient.java:634)
	at com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClient.getShardIterator(AmazonDynamoDBStreamsClient.java:518)
	at com.amazonaws.services.dynamodbv2.streamsadapter.AmazonDynamoDBStreamsAdapterClient.getShardIterator(AmazonDynamoDBStreamsAdapterClient.java:378)
	at com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy.getIterator(KinesisProxy.java:271)
	at com.amazonaws.services.kinesis.clientlibrary.proxies.MetricsCollectingKinesisProxyDecorator.getIterator(MetricsCollectingKinesisProxyDecorator.java:123)
	at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.getIterator(KinesisDataFetcher.java:135)
	at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.advanceIteratorTo(KinesisDataFetcher.java:111)
	at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.initialize(KinesisDataFetcher.java:90)
input {
	at com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitializeTask.call(InitializeTask.java:77)
	at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:49)
	at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:24)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
WARN: com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy: Cannot find the shard given the shardId shardId-xxxxxxxxxxxxxxxxxxxx-yyyyyyyy

I presume this is happening because when you delete a stream and recreate it, the stream ARN changes, which is why you see the Resource Not Found Exception since the worker is throwing this exception.
This use case is currently unsupported : was there a specific reason for the need to disable a stream currently being processed and recreating a new stream?

@agaur-aws I'll only delete and create streams while logstash (and the plugin) isn't running.  But it still seems to contribute to these errors after logstash is restarted.
I'll keep trying to debug the issue and find clean steps to repro.

Another instance of the error occurred while it was performing an initial scan:
WARN: com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy: Cannot find the shard given the shardId shardId-00000001446500994480-a69421f6
ERROR: com.amazonaws.services.dynamodbv2.streamsadapter.model.AmazonServiceExceptionTransformer: DynamoDB Streams exception: class com.amazonaws.services.dynamodbv2.model.ResourceNotFoundException tranformed to Kinesis class com.amazonaws.services.kinesis.model.ResourceNotFoundException
com.amazonaws.services.dynamodbv2.model.ResourceNotFoundException: Requested resource not found: Shard does not exist (Service: AmazonDynamoDBStreams; Status Code: 400; Error Code: ResourceNotFoundException; Request ID: 7ER46GTKRBKV0V82GNTJDO0SDJVV4KQNSO5AEMVJF66Q9ASUAAJG)
  at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1182)
  at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:770)
  at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:489)
  at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:310)
  at com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClient.invoke(AmazonDynamoDBStreamsClient.java:634)
  at com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClient.getShardIterator(AmazonDynamoDBStreamsClient.java:518)
  at com.amazonaws.services.dynamodbv2.streamsadapter.AmazonDynamoDBStreamsAdapterClient.getShardIterator(AmazonDynamoDBStreamsAdapterClient.java:378)
  at com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy.getIterator(KinesisProxy.java:271)
  at com.amazonaws.services.kinesis.clientlibrary.proxies.MetricsCollectingKinesisProxyDecorator.getIterator(MetricsCollectingKinesisProxyDecorator.java:123)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.getIterator(KinesisDataFetcher.java:135)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.advanceIteratorTo(KinesisDataFetcher.java:111)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.initialize(KinesisDataFetcher.java:90)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitializeTask.call(InitializeTask.java:77)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:49)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:24)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
WARN: com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy: Cannot find the shard given the shardId shardId-00000001446516990572-4e28847d
ERROR: com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownTask: Application exception.
com.amazonaws.services.kinesis.clientlibrary.exceptions.ShutdownException: Can't update checkpoint - instance doesn't hold the lease for this shard
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibLeaseCoordinator.setCheckpoint(com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibLeaseCoordinator.java:120)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.RecordProcessorCheckpointer.advancePosition(com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointer.java:216)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.RecordProcessorCheckpointer.checkpoint(com/amazonaws/services/kinesis/clientlibrary/lib/worker/RecordProcessorCheckpointer.java:77)
  at java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:483)
  at RUBY.shutdown(/opt/logstash/vendor/local_gems/b42e9da0/logstash-input-dynamodb-1.0.0-java/lib/logstash/inputs/LogStashRecordProcessor.rb:56)
  at Logstash$$Inputs$$DynamoDB$$LogStashRecordProcessor_580099813.shutdown(Logstash$$Inputs$$DynamoDB$$LogStashRecordProcessor_580099813.gen:13)
  at Logstash$$Inputs$$DynamoDB$$LogStashRecordProcessor_580099813.shutdown(Logstash$$Inputs$$DynamoDB$$LogStashRecordProcessor_580099813.gen:13)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.V1ToV2RecordProcessorAdapter.shutdown(com/amazonaws/services/kinesis/clientlibrary/lib/worker/V1ToV2RecordProcessorAdapter.java:48)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownTask.call(com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShutdownTask.java:100)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(com/amazonaws/services/kinesis/clientlibrary/lib/worker/MetricsCollectingTaskDecorator.java:49)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(com/amazonaws/services/kinesis/clientlibrary/lib/worker/MetricsCollectingTaskDecorator.java:24)
  at java.util.concurrent.FutureTask.run(java/util/concurrent/FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(java/util/concurrent/ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(java/util/concurrent/ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(java/lang/Thread.java:745)
ERROR: com.amazonaws.services.dynamodbv2.streamsadapter.model.AmazonServiceExceptionTransformer: DynamoDB Streams exception: class com.amazonaws.services.dynamodbv2.model.ResourceNotFoundException tranformed to Kinesis class com.amazonaws.services.kinesis.model.ResourceNotFoundException
com.amazonaws.services.dynamodbv2.model.ResourceNotFoundException: Requested resource not found: Shard does not exist (Service: AmazonDynamoDBStreams; Status Code: 400; Error Code: ResourceNotFoundException; Request ID: GLAR315VLS5COGAIATENM0NLDFVV4KQNSO5AEMVJF66Q9ASUAAJG)
  at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1182)
  at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:770)
  at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:489)
  at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:310)
  at com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClient.invoke(AmazonDynamoDBStreamsClient.java:634)
  at com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClient.getShardIterator(AmazonDynamoDBStreamsClient.java:518)
  at com.amazonaws.services.dynamodbv2.streamsadapter.AmazonDynamoDBStreamsAdapterClient.getShardIterator(AmazonDynamoDBStreamsAdapterClient.java:378)
  at com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy.getIterator(KinesisProxy.java:271)
  at com.amazonaws.services.kinesis.clientlibrary.proxies.MetricsCollectingKinesisProxyDecorator.getIterator(MetricsCollectingKinesisProxyDecorator.java:123)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.getIterator(KinesisDataFetcher.java:135)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.advanceIteratorTo(KinesisDataFetcher.java:111)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisDataFetcher.initialize(KinesisDataFetcher.java:90)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.InitializeTask.call(InitializeTask.java:77)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:49)
  at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:24)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
WARN: com.amazonaws.services.kinesis.clientlibrary.proxies.KinesisProxy: Cannot find the shard given the shardId shardId-00000001446486892701-b695771f

The logstash plugin under the hood uses the KCL library to streams processing, and as a byproduct create a DynamoDB table to store meaningful state/checkpoints.  I won't go into too details here, but basically that state involves saving shard-id's and their last evaluated record.  What's happening is now, this checkpointer is being used when you recreated the stream and the shard has expired.
The fix is a simple one simply drop the table called "logstash_input_dynamodb_cptr" in the DynamoDB console, and restart your logstash plugin.  If you want to define the name of this DynamoDB table in the future check out this config value.
:checkpointer, :validate => :string, :default => "logstash_input_dynamodb_cptr"

@raymolin That was really helpful to resolve the consistent shard errors, thanks!  I have a process in place to avoid the problem again, so closing for now.
Thanks again

Hi Fozzylon,
I am facing the same problem now. deleting "logstash_input_dynamodb_cptr" is not helping.  Would you please provide more details on how you were able to avoid the problem.
Appreciate your help.
Thanks,
Jeevan.

@jeevanvijay This might be a little late, but for anyone else still getting this error, sometimes disabling the streams on the tables you are trying to track, then re-enabling them, solves this problem. Disable Logstash, reset the streams in this fashion, delete the checkpoint table "logstash_input_dynamodb_cptr", then restart Logstash. Presumably the stale streams reference data that no longer exists in the table. Dropping and recreating the tables will of course achieve the same result, if you're able to do that.

@raymolin , I suggested by @jeevanvijay I tried deleting table & restart logstash... but still after some time, error generates again
And unfortunately i have restart logstash to make it working again.
Can you please share solution (alternate automate process) to handle this issue.


fix(types): Fix defaultConfig typing for makeQueryCache

Fixes #806
Changes

Fix defaultConfig typing of makeQueryCache

Tests seem to be failing with unrelated issues, probably #751

See comment https://github.com/tannerlinsley/react-query/issues/806#issuecomment-666435081 but even with TS source, this will be an issue until the declaration files are generated since the package typings resolve to types/index.d.ts still.

I'll merge for now.

:tada: This PR is included in version 2.5.10 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update licenses in hashport-validator files #386

Signed-off-by: svetlio<EMAIL_ADDRESS>Detailed description:
Update licenses in hashport-validator files #386

Done in https://github.com/LimeChain/hashport-validator/pull/401


Uat

Coverage decreased (-0.05%) to 93.753% when pulling<PHONE_NUMBER>d0c79295ebb1399256fab1e425bf42 on UAT into ae0f54e3bba5f552f7f5bdc6ded0ddec1646a111 on master.


Weird behavior with multiple dashed cylinders

Hi all,
I am using the recently implemented dashedCylinder shapes by @arose in ts2 and I am having some weird results:

I am adding 5 cylinders with the same origin and they should be displayed in a "star" like manner between the phosphate oxygen and several protein atoms around. What i finally observe are 4 cylinders with weird start and end points that do not correspond to the coordinates i provide or the number of cylinders i add.
I get a correct display when i set dashedCylinder: false:

Minimum working example using 1ATP as PDB already loaded in a stage only for reference:
var pos1=[17.549999237060547, 8.53600025177002, -0.5149999856948853];

var pos2=[[19.740999221801758,6.551000118255615,-0.546999990940094],
[19.969999313354492,5.958000183105469,-1.8380000591278076],
[18.88599967956543,6.414999961853027,-2.821000099182129],
[14.675999641418457,8.154000282287598,-3.7300000190734863],
[13.555000305175781,6.9029998779296875,-0.13099999725818634]];

var shape = new NGL.Shape('shape', { dashedCylinder: true, radialSegments:60});

for (var i=0; i<pos2.length; i++){
	shape.addCylinder(pos1, pos2[i], [ 1, 1, 0.4 ], 0.05, "My test "+i);
}
var shapeComp = stage.addComponentFromObject(shape)
shapeComp.addRepresentation('buffer')
shapeComp.autoView()

Do you have any idea what is going on? I guess the asynchronous execution of addCylinder is messing something up?
Thank you guys.
Daniel

there are half of the segments missing for two dashed cylinders, I will have a look

fixed, see http://nglviewer.org/ts2/?script=test/dashedCylinders

Great thank you :)


minDate and maxDate difference of behaviour

Hi !
I noticed a bug (not sure it's a bug) while using this picker (which is great by the way :D)
If you set a minDate and maxDate, when the picker has this limit selected it doesn't have the same behaviour.
Let me explain this with some pictures
minDate is reached

There's a red ribbon around the time selection but you can still edit the time
maxDate is reached

The time input is disabled
This is quite annoying when you're using the picker without the little arrows that allow you to change the time, beacause you can't adjust the time in the maxDate case

Datetimepicker is a composition of two directives: Angular UI Bootstrap date picker and time picker. Timepicker has the behavior you are describing and datetimepicker inherits it: https://plnkr.co/edit/4utIQRBX6VVBBsEmjshE?p=preview
Please file an issue against Angular UI Bootsrap to find if this can be addressed.
A similar request:
https://github.com/angular-ui/bootstrap/issues/6269
https://github.com/angular-ui/bootstrap/pull/6270

I managed to fix this issue.
See https://github.com/angular-ui/bootstrap/issues/6337


forward deployment always in cm

plus any other skills with distance, like dodge

Has now been fixed.


I have domain in cloudflare "example.com" , how configure my unbound dns server for subdomain"sub.example.com  -192168.0.1" in local network, for my local users

Current behavior
Is there a current behavior that the feature relates to?
If yes, would you wish the current behavior to change?
Describe the desired feature
A clear and concise description of what the feature should be.
Potential use-case
Describe how you see this feature being useful to other Unbound users.

tank you

Hi,
If I understand correctly that your local users that are using your local Unbound need to get <IP_ADDRESS> for example.com. A or subdomains of that like sub.example.com. A then the following configuration will work:
server:
    ...
    local-zone: example.com. redirect
    local-data: "example.com. A <IP_ADDRESS>"
    ...

For more information on local-zone options: https://unbound.docs.nlnetlabs.nl/en/latest/manpages/unbound.conf.html#term-local-zone-zone-type.
Also since this is not an actual issue/bug/feature request we prefer to get this kind of support questions on the mailing list: https://lists.nlnetlabs.nl/mailman/listinfo/unbound-users

Closing as inactive and a non issue. Feel free to reopen/tag.


Debugger:[Performance]Calculating 'typeof(Program)' in watch window takes more time

Environment data
dotnet --info output:

VS Code version: 1.22.2
C# Extension version: 1.15.0-beta5
Steps to reproduce

Download and open attachment in VSCode: Thread.zip
Set a breakpoint at line of 34 in Program.cs
F5
Add 'typeof(Program)' to watch window and expand this expression

Expected  behavior
The expression should be expanded immediately.
Actual behavior
It takes about ten seconds to expand this expression.

As far as I can tell, testing on Ubuntu 14.04, the performance on this is similar to the 1.14.0 version. They are both much slower than on Windows.


component refetches on mount even after data is prefetched

Describe the bug
I have been creating a basic CRUD app architecture using react-query. I ran into an issue when utilizing prefetch, where it makes an extra fetch after the new component is mounted, even though I am setting staleTime in the prefetch.
Is this because the prefetched query becomes inactive when the new component mounts? Is it intended behavior to refetch in this case?
To Reproduce
Steps to reproduce the behavior:

Go to this CodeSandbox: https://codesandbox.io/s/competent-cohen-7igge
Create a fake user
Hover over edit, see that the data has been prefetched in the React Query Devtools
Click Edit
See that the data has been refetched

Expected behavior
I expect for the refetch to not happen because I have already prefetched the data.
* note this code is v3
Here is the prefetch in the source code: https://codesandbox.io/s/competent-cohen-7igge?file=/src/pages/UserList.jsx:973-1231
Here is the custom hook being called on the Update User form: https://codesandbox.io/s/competent-cohen-7igge?file=/src/pages/UpdateUser.jsx:303-363
Desktop (please complete the following information):

OS: Mac OS
Browser: Chrome
Version: 86.0.4240.198

In v3, you don’t set the stale time in the prefetch for the future. Stale time on a prefetch determines whether the prefetch should happen based on when the data was previously updated. So if there is already cached data and it is 5 seconds old, this prefetch will be skipped:
prefetchQuery(key, fn, {staleTime: 6000})
And the same applies for useQuery. So what you are probably looking for is this:
prefetchQuery(key, fn)
useQuery(key, fn, { staleTime: 1000 })
This way, as long as the data is less than a second old, the useQuery will not trigger another fetch.


Add an arrow shape an a test.

We are using an arrow shape for quite while now in order to visualize the direction of road segments.
The shape is based on the code for ol.style.RegularShape and I finally managed to set up a clean pull request for this feature including an example.
The approach of RegularShape and ArrowShape, which are base don ol.style.Image is working, but in the long run we should drop rendering to an ephemere canvas, which in turn is rendered to the map canvas as an image when drawing the feature to which the shape is associated.
I would prefer to directly draw the regular shape or arrow to the map canvas without rendering to an intermediate canvas, which would for sure incur a rewrite of parts of the ol.style package and maybe the feature rendering loop.
TIA for looking at our contribution,
Best Regards, Wolfgang

Please have mercy on me, I have no clue how to overcome the coverage drop, maybe someone could give me some advice?

Have you seen http://openlayers.org/en/latest/examples/earthquake-custom-symbol.html? With that technique, you would be able to create arrow (and any arbitrary) shapes for easy point symbolisation in style functions.
In general, before submitting a pull request, please create a ticket for discussion, and only submit pull requests when the ticket has a "pull request accepted" tag. This procedure is documented in https://github.com/openlayers/openlayers/blob/master/CONTRIBUTING.md.
Since we're planning to transition vector shapes from ol.style.Image to direct canvas rendering, we're currently hesitant to accept pull requests that extend ol.style.Image.
However, if you're willing to submit an example pull request that uses vector context functions to render custom shapes, we'd be happy to accept it.

Hello Andreas,
Thanks for your feedback, I really wanted to provide our shape, because it helped us for the past months and I agree with you, that we need a generalization of 'vector' shape styles with direct canvas rendering.
I'd love to participate in the implementation of this feature, maybe you should set up a discussion at the right place and gather other interested contributors there?
Regards, Wolfgang

Please take a look at http://openlayers.org/en/latest/examples/earthquake-custom-symbol.html. The generalization you are talking about is already available, and you might want to use it in an example pull request. That's what I meant.

The above said, thanks for offering help to transition shape rendering away from ol.style.Image to direct canvas rendering. The ticket for that has already been created: #5775.

AFAICS, the http://openlayers.org/en/latest/examples/earthquake-custom-symbol.html example is also using ephemeral canvases, which are in turn used as images for ol.style.Icon. All this temporary canvas instantiation stuff is slow, but I will take my time and work out an example an will join the discussion #5775.
Thanks so far for your feedback.

@wglas85 You are right - it probably also does not make much sense to create an example pull request for arrows now. With whatever comes out of #5775, I'd envision a vector context for a point symbolizer to be handled by the renderer, instead of having to create an image for an ol.style.Icon on the application level.


Fullscreen not working properly

Bug description

not expanded on fullscreen
sidebar controls present above textarea

Steps to reproduce
press fullscreen button in tinymce toolbar or menu
Environment and versions
statamic 4.57.0
statamic-tinymce-cloud 2.1.3

Additional details
No response

I feel this is something that doesn't have an easy fix. Statamic's CP has lots of relative containers, and when trying to position to be full screen, it can't break outside those.
Different browsers exhibit different behaviours too - Firefox is different to how it appears in Webkit-based browsers.
Bard gets around this by creating a portal and sending it to there: but that's outside of the scope of what this addon is doing - it is designed to get Tiny Cloud in to Statamic - but not change or add to its functionality. A custom full screen plugin would need to be written that does more manipulation on the parent containers within Statamic when enabling/disabling.
Unless you have another idea to resolve the issue?


update ja/index.md

Update ja/index.md according to release of v2.7.1. Please review it.

Thank you!


Add WITHSCORE option to ZRANK and ZREVRANK

@sazzad16 mind having a look?

Resolved by #2450
@chayim @mp911de

🤦 Thanks for the pointer. I missed that this was already implemented, seems we missed closing the ticket.


Strip leading slashes from base_path when creating API Explorer URLs

Codecov Report

Merging #61 into master will increase coverage by 0.13%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #61      +/-   ##
==========================================
+ Coverage   81.14%   81.27%   +0.13%
==========================================
  Files          39       40       +1
  Lines        5361     5361
==========================================
+ Hits         4350     4357       +7
+ Misses       1011     1004       -7

Impacted Files
Coverage Δ

endpoints/endpoints_dispatcher.py
30.03% <ø> (ø)
:arrow_up:

endpoints/__init__.py
100% <0%> (ø)
:arrow_up:

endpoints/test/__init__.py
100% <0%> (ø)

endpoints/test/test_util.py
79.45% <0%> (+9.58%)
:arrow_up:

Continue to review full report at Codecov.

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

We strip the leading slash because we're putting one in manually in the format string. I don't think base_path should ever not start with a slash.
An email to the Endpoints group said that API Explorer wasn't working locally for him until this doubled slash was resolved.
I just included a backslash in the strip characters in case someone entered the base path with backslashes instead of forward.


merge 00-dev into main

:tada: This PR is included in version 0.2.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Allow implicit dataset / bucket / other behavior from environment

Not necessarily needed for M1, just points in the direction of running in environments like GAE and GCE.
I took a stab at it using environment variables in https://github.com/dhermes/gcloud-python/commit/0860e5902541eeb6146a3fb0f55ec66465b3dc39
In #444 this is done for datasets.
@craigcitro I tried to parse how getting auth values from the environment works in GetCredentials and BaseApiClient.__init__ but it was unclear (for example) how _API_KEY is set.

This has been mostly done.


Using Pup as a library/Feature Request

Hi, is there a way to use pup as a library? E.g.
Package main
import ("github.com/ericchiang/pup"
"net/http")
cssSelector :=... //CSS selectors
func main(){
page,err := http.Get(news.ycombinator.com)
result:=Pup.load(page).select(cssSelector)
fmt.Println(result)
}
Apologies for the lack of syntax highlighting and proper formatting as I am typing this on mobile.
Thanks in advance!

At this moment pup does not expose any of its CSS selection as a package though eventually it might.
pup just uses golang.com/x/net/html to parse HTML. I suggest you is that.

see #47


Add linrongbin16/gitlinker.nvim

Repo URL:
https://github.com/linrongbin16/gitlinker.nvim
Checklist:

[x] The plugin is specifically built for Neovim, or if it's a colorscheme, it supports treesitter syntax.
[x] The lines end with a .. This is to conform to awesome-list linting and requirements.
[x] The title of the pull request is Add/Update/Remove `username/repo`  (notice the backticks around `username/repo`) when adding a new plugin.
[x] The description doesn't mention that it's a Neovim plugin, it's obvious from the rest of the document. No mentions of the word plugin unless it's related to something else.
[x] The description doesn't contain emojis.
[x] Neovim is spelled as Neovim (not nvim, NeoVim or neovim), Vim is spelled as Vim (capitalized), Lua is spelled as Lua (capitalized), Tree-sitter is spelled as Tree-sitter.
[x] Acronyms should be fully capitalized, for example LSP, TS, YAML, etc.

hi, would you tell me, how to fix the lint pipeline error?

It seems it's a broken change upstream.

Did you consider PR rather than a fork? It would most likely benefit more people, @linrongbin16.
@tversteeg apologies if that's not the right place to ask that question. Feel free to delete my comment.

Actually I did, before 3 months ago..., I'm not sure the author would reply.

The changes you've made don't adhere to the checklist, I've deselected the item(s) that need to be fixed.

You still have for Neovim in your description.


Issue with pytest after installation from anaconda(recommended for linux)

Hi, I just installed jetset with anaconda without any issues. But when I run the "pytest" command I get the following error:-
pytest --disable-warnings --pyargs jetset.tests.test_users::test_short
============================= test session starts ==============================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/username
collected 0 items
============================ no tests ran in 0.00s =============================
ERROR: module or package not found: jetset.tests.test_users::test_short (missing init.py?)
I did have jetset environment activated before I ran the test.
Secondly, I do not understand the instruction about "run all the examples outside of the installation dir" when installing with anaconda. As per the previous instructions, we created a separate environment called jetset and installed jetset over there, but we did not create any installation directory in the sense we normally would when installing by downloading the tar file->unzipping-> . . .? So, exactly what is the directory we are supposed to exit before running the examples? I am sorry if I am missing something obvious but could you please guide me about this.
P.S.-  Best wishes for a merry Christmas and boxing day to this amazing community !

Hi,
merry Christmas to you!!! and thanks for using jetset. Which version are you using? Did you install from source or binaries?
Cheers
Andrea

The version is 1.1.2.
I basically followed the "Install JetSeT from Anaconda(suggested for OSX and Linux)".
conda install -c andreatramacere jetset
worked fine for me and there was no need to use
conda install -c andreatramacere -c astropy -c conda-forge jetset

Hi,
these instructions, to leave the directory etc, are for installation from the source.
Skip the tests,  and run the notebooks or the script where you prefer.
In any case,  I suggest you use the pre-release of version 1.2.0, i.e. version 1.2.0.rc11
The easiest way is to download the script
a) https://github.com/andreatramacere/jetset-installer
b) run the command "python jetset_installer.py 1.2.0rc11'
The documentation for this version is here:
https://andreatramacere.github.io/jetsetdoc/html/index.html
This version is very close to the forthcoming 1.2.0, has several new features and bug fixing. No need to run tests, you can use directly the user guide.
I noticed that with python 3.8, there are issues if your conda distribution install astropy>=5.0. So,  if you use 1.2.0rc11, and your conda environment has astropy >=5.0, force to downgrade to astropy 4.2,or wait that I do a new releases within today or tomorrow, I will keep you updated in this thread.

Great!, thanks for the detailed directions.
On a slightly different matter, In your github, there is a repo on tutorial lectures given at Wuerzburg via zoom. I was wondering if there are any recordings of those lectures ? It would be a great resource to have.

Hi,
the release 1.2.0rc12 for conda is ready, so you can  run  "python jetset_installer.py 1.2.0rc12'
Unfortunately, conda sometimes is a bit problematic, so I suggest

create a new conda env
follow the installation process described above for  1.2.0rc12
leave the directory where you run the installation process (i.e. where you run the  jetset_installer.py script)
run  this command: python -c 'import astropy; print(astropy.version);exit();'
if the version is >=5.0, force anaconda to downgrade to astropy 4.2

Great!, thanks for the detailed directions. On a slightly different matter, In your github, there is a repo on tutorial lectures given at Wuerzburg via zoom. I was wondering if there are any recordings of those lectures ? It would be a great resource to have.

Unfortunately, I do not have recordings, I should ask the host institute. I plan to open a youtube channel for jetset, but it will take some time. If you have doubts or comments send me a message
Cheers
Andrea

I tried installing the latest version, but now I run into the error
pytest --disable-warnings --pyargs jetset.tests.test_users::test_short
======================================= test session starts ========================================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/jotil
collected 0 items / 1 error
============================================== ERRORS ==============================================
_ ERROR collecting Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_users.py _
ImportError while importing test module '/home/jotil/Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_users.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
Tron/anaconda3/envs/jetset/lib/python3.8/importlib/init.py:127: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_users.py:3: in
from .test_functions import test_short
E   ImportError: cannot import name 'test_short' from 'jetset.tests.test_functions' (/home/jotil/Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_functions.py)
===================================== short test summary info ======================================
ERROR Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_users.py
=================================== 2 warnings, 1 error in 0.23s ===================================
ERROR: not found: /home/jotil/Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_users.py::test_short
(no name '/home/jotil/Tron/anaconda3/envs/jetset/lib/python3.8/site-packages/jetset/tests/test_users.py::test_short' in any of [])
I tried both the above method and separately by following the instructions by downloading the new package from github and installing by using setup.py. But both of them were unsuccessful. However, when I tried installing the jetset-stable version the pytests resulted into
pytest --disable-warnings --pyargs jetset.tests.test_users::test_short
============================= test session starts ==============================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/jotil/Tron/
collected 1 item
. .                                                                      [100%]
====================== 1 passed, 1060 warnings in 15.97s =======================
btw the setup.py process ends in JETSETBESSELBUILD False. Is there any significance to it?

Hi,
please install version 1.2.0rc12 with jetset_installer.py script, and do not run the test, just try to follow the user guide
here https://andreatramacere.github.io/jetsetdoc/html/user_guide/user_guide.html
Cheers
Andrea

Done! and sped through the Tutorial1 without any hiccups. Looking forward to working through all the tutorials and documentation tomorrow. And thanks for being so responsive.
A minor note -- while installing with jetset-installer we have to install wget. Now while installing with pip the command "pip install wget" is fine but to get the "import wget" working in python using conda we need "conda install -c anaconda pywget" instead of wget. As "conda install wget" installs wget for use at the conda prompt alone and not for import in python.


Add Breadth First Search (BFS) algorithm in java.

Breadth-first search is a graph traversal algorithm that starts traversing the graph from the root node and explores all the neighboring nodes. Then, it selects the nearest node and explores all the unexplored nodes. While using BFS for traversal, any node in the graph can be considered as the root node.
please assign me this issue

Breadth-First Search (BFS) is a graph traversal algorithm that explores all vertices of a graph in breadth-first order, i.e., it visits all the vertices at the same level before moving to the next level. It starts at a given source vertex and explores all the vertices adjacent to the source vertex before moving to the next level of vertices.
Please Assign this issue to me I will make readme file for explanation of code

Greetings , Please assign me this issue under SSOC'23? BFS is a graph traversal algorithm. I can provide algorithm as well as code in these languages:- Python, C, C++ and Java as well.


[Dependency Scanning] Share the Clang Dependency Scanning service among scanner invocations.

It was recently moved to the ModuleDependenciesCache. This is undesireable, instead this should live in the GlobalModuleDependenciesCache so that we benefit from the filesystem caching it performs across different scanning actions.

@swift-ci test

@swift-ci test Windows platform

@swift-ci test Windows platform

@swift-ci test Windows platform

@swift-ci test Windows platform


Cloud security rule sample giving permission denied

Using the drop in replacement sec rules https://docs.flyer.chat/flutter/firebase/firebase-rules
I am seeing a permission denied error like so:
W/Firestore( 6266): (23.0.1) [WriteStream]: (5c0bee9) Stream closed with status: Status{code=PERMISSION_DENIED, description=The caller does not have permission, cause=null}.
W/Firestore( 6266): (23.0.1) [Firestore]: Write failed at users/xxxxxxx: Status{code=PERMISSION_DENIED, description=The caller does not have permission, cause=null}

Same issue with me

Hi @giorgio79 did you update your schema after version 1.1 was released? Firebase security rules were updated to match new parameters, see this release v1.1.0. If you will not rename every property you will get this error. It doesn't happen to me on my Firebase project. If you use old parameters, you need to use old Firebase security rules, or you can write your own, mine are just an example.
rules_version = '2';
 service cloud.firestore {
   match /databases/{database}/documents {
     // Function available for all collections
     // Checks that request is coming from an authenticated user
     function isSignedIn() {
       return request.auth != null;
     }

     // Rules for the users collection
     match /users/{userId} {
       // Validates user's object format
       // Remove this if you don't plan to provide first or last names
       function isUserCorrect() {
         return isSignedIn() && request.resource.data.firstName is string && request.resource.data.lastName is string;
       }

       // Checks that the document was created by currently logged in user
       function isSelf() {
         return request.auth.uid == userId;
       }

       // Rules set for the users collection
       allow create: if isUserCorrect();
       allow delete: if isSelf();
       allow read: if isSignedIn();
       allow update: if isUserCorrect() && isSelf();
     }

     // Rules for the rooms collection
     match /rooms/{roomId} {
       // Checks that currently logged in user exists in users collection
       function userExists() {
         return isSignedIn() && exists(/databases/$(database)/documents/users/$(request.auth.uid));
       }

       // Checks that currently logged in user is in the room
       function isUserInRoom() {
         return isSignedIn() && request.auth.uid in resource.data.userIds;
       }

       // Validates room's object format
       function isRoomCorrect() {
         return request.resource.data.type is string && request.resource.data.userIds is list;
       }

       // Rules set for the rooms collection
       allow create: if userExists() && isRoomCorrect();
       allow delete, read, update: if isUserInRoom();

       // Rules for the messages collection
       match /messages/{messageId} {
         // Checks that currently logged in user is in the room
         function isUserInRoomUsingGet() {
           return isSignedIn() && request.auth.uid in get(/databases/$(database)/documents/rooms/$(roomId)).data.userIds;
         }

         // Validates message's object format
         function isMessageCorrect() {
       	  return request.resource.data.authorId is string && request.resource.data.timestamp is timestamp;
         }

         // Checks that message's author is currently logged in user
         function isMyMessage() {
           return request.auth.uid == resource.data.authorId;
         }

         // Rules set for the messages collection
         allow create: if isSignedIn() && isMessageCorrect();
         allow delete, read: if isUserInRoomUsingGet();
         allow update: if isUserInRoomUsingGet() && isMyMessage();
       }
     }
   }
 }

Created a new project to double check - works as expected. Definitely some old field name causes this.

Thx Alex. Just started this weekend, so unsure about older versions. I think I have the latest.
I went with a relaxed set of rules for now. 🙂 Thx for checking though.

Hi @giorgio79 unfortunately can't help, because these are just text and there are a lot of things involved, I can't debug anything. The only thing we can do is if it is a test project you can add me and I can check the data, don't know any other way. Or you will find what line causes this (I usually comment out rules partially to see which is failing) and we can continue from there.


Uncaught SyntaxError: Unexpected token .

While messing around trying to figure out how to reuse message types across modules, I've introduced an erroneous use of a dot notation which compiled fine but generated a SyntaxError once executed in the browser.
Sample minimal code:
module Bug exposing (..)

type Msg
    = NoOp
    | Foo.Bar

type alias Model =
    {}

update : Msg -> Model -> ( Model, Cmd Msg )
update msg model =
    case msg of
        NoOp ->
            ( model, Cmd.none )

        Foo.Bar ->
            ( model, Cmd.none )

Compiles just fine while it probably shouldn't. Generated js breaks with a SyntaxError:

I'm using Elm v0.17 installed from npm on Ubuntu 16.04 64.

This is a known problem. As the issue template says, please check the "meta" issues before opening new ones. In this case, #1374.

Sorry, I swear I searched.


instead of exiting the tool, print a warning when using --flavor with an incompatible device

Fixes https://github.com/flutter/flutter/issues/143574 by printing a warning (instead of exiting) when --flavor is used with a target platform that doesn't have flavors support.
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

I'm also interested in @christopherfujino's opinion.
If accepted, I'd also like to cherry-pick this. This is by no means a "critical" bug fix, but I think this would be offset by the negligible risk.


Improve VisibleOnScreen classes' docs

These docs were super old and had some misleading information, unless I've misunderstood something. Some bad English too. And a few descriptions were missing.
I tested to reaffirm that I'm not getting things wrong, but I'm not a big user of these classes so I might have missed some peculiarity or something.

cc @mrjustaguy, as they worked with this class previously.

Thanks!


Retry global topo changes upon failure.

When vttablet starts up, it may try to update the global topology
records. Now we will retry these changes up until the original context
deadline. That way if we're throttled for instance, it will eventually
go through.

Addressed all comments, and squashed. Will wait for travis success before merging.


K12 Kit - [Spike]Investigate how to handle grade levels for K-12

Background: Grade Levels are used across K-12 schools for various things. In our org Credential Attribute (K-12 Kit only), Educational Institute Accounts (K-12 Kit only), and Contacts all have a need to capture some grade level information. Credentials and Educational Institute Accounts could have multiple related grade levels. Student Contact is related to 1 grade level and it is possible for faculty contacts to be related to multiple grade levels if an org wants to do that, but not primary use case.

**lurch: add

Tracking W-033192

@lifewithryan It looks like this was created for the K-12 Kit grade levels spike - I'm going to go ahead and close this out since there's no code related to this at this time (& would likely not be in this repo either)