Add docs schema

This PR addresses the #1722 issue.
I've made some schema examples with automated tools (PhpStorm and XMLSpy), then went ahead and abstracted things according to default phpcs.xsd schema.
Once added every documentation type should define the
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

and
xsi:noNamespaceSchemaLocation="https://raw.githubusercontent.com/WordPress/WordPress-Coding-Standards/develop/WordPress/Docs/docs-schema.xsd"

tags in the main documentation tag of the documentation xml files.
Like:
<documentation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://raw.githubusercontent.com/WordPress/WordPress-Coding-Standards/develop/WordPress/Docs/docs-schema.xsd title="Array Indentation">

I've added the xsd file in the Docs folder, kinda felt natural, but we can move it to the root of the project.

This is a tricky one. Because we would then need to decide what is the minimum resolution we would want to allow.
Again, here we can have retina displays, regular laptop displays, people using smaller font sizes, etc.
But even then, the screen size itself doesn't define what is the size of their terminal (I usually split my terminal windows in two side by side).

For the docs display on the CLI, it's not about screen size or anything, it's more about the hard-coded limits defined in the generator classes in PHPCS itself...

How do we define the minimal number of characters on a line?

Not sure about a minimum, but a maximum should be definable based on PHPCS.

I am not 100% what we enforce. I always use tabs, because they're more accessible, so that could have been my IDE. Happy to turn them into spaces

For XML docs WPCS enforces tabs, but everywhere else enforces spaces, including PHPCS and PHPCSUtils, so with a mind to pulling it upstream, it should be spaces.

For the docs display on the CLI, it's not about screen size or anything, it's more about the hard-coded limits defined in the generator classes in PHPCS itself...

Wasn't aware of that. From what I can see the default is 100 (hardcoded) so we can set that as a default length (https://github.com/squizlabs/PHP_CodeSniffer/blob/master/src/Generators/Text.php#L248). Doesn't look like it can be customized tho 🤷🏼♂

For the docs display on the CLI, it's not about screen size or anything, it's more about the hard-coded limits defined in the generator classes in PHPCS itself...

Wasn't aware of that. From what I can see the default is 100 (hardcoded) so we can set that as a default length (https://github.com/squizlabs/PHP_CodeSniffer/blob/master/src/Generators/Text.php#L248). Doesn't look like it can be customized tho 🤷🏼♂

Correct - though that only applies to the title at the top (with the prefix and the | ... | markers around it and the code samples.
The contents of standard blocks and the title of the code samples will both wrap.
The code in the code samples will not, but as they are placed next to each other and have those | markers around them as well, individual code lines need to be max 48 char, but that can't be enforced via an XSD.

I tried adding <xs:any minOccurs="0"/> inside the documentation to allow for any element addition (the <url> that you mentioned) like this:
<xs:element name="documentation">
        <xs:complexType>
            <xs:sequence maxOccurs="unbounded">
                <xs:element name="standard" type="xs:string"/>
                <xs:element name="code_comparison" type="code_comparisonType"/>
                <xs:any minOccurs="0"/>
            </xs:sequence>
            <xs:attribute name="title" use="required" type="xs:string"/>
            <xs:anyAttribute/>
        </xs:complexType>
    </xs:element>

But the XML validator throws an error

Cos-nonambig: Standard And WC[##any] (or Elements From Their Substitution Group) Violate "Unique Particle Attribution". During Validation Against This Schema, Ambiguity Would Be Created For Those Two Particles.

My guess is that the unique particle attribution comes from the fact that the validator cannot know if the element is duplicated or not if it's set to any 🤷🏼♂
I've tried adding restrictions to the standard element (to limit whitespace to spaces), but I keep getting errors. I tried adding a standardType but got error

docs-schema.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    <xs:element name="documentation">
        <xs:complexType>
            <xs:sequence maxOccurs="unbounded">
                <xs:element name="standard" type="standardType"/>
                <xs:element name="code_comparison" type="code_comparisonType"/>
                <xs:any minOccurs="0"/>
            </xs:sequence>
            <xs:attribute name="title" use="required" type="xs:string"/>
            <xs:anyAttribute/>
        </xs:complexType>
    </xs:element>

    <xs:complexType name="standardType">
        <xs:simpleContent>
            <xs:restriction base="xs:string">
                <xs:whiteSpace value="replace"/>
            </xs:restriction>
        </xs:simpleContent>
    </xs:complexType>

    <xs:complexType name="code_comparisonType">
        <xs:sequence>
            <xs:element name="code" type="codeType" maxOccurs="2" minOccurs="2"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="codeType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="title" use="required" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
</xs:schema>

Src-ct.2.1: Complex Type Definition Representation Error For Type 'standardType'. When  Is Used, The Base Type Must Be A ComplexType Whose Content Type Is Simple, Or, Only If Restriction Is Specified, A Complex Type With Mixed Content And Emptiable Particle, Or, Only If Extension Is Specified, A Simple Type. 'string' Satisfies None Of These Conditions.

I've pushed the latest changes, and it validates against xmllint. I've also validated the existing xml documentation with
find ./WordPress/Docs -type f -name "*.xml" -print0 | while read -d $'\0' file; do xmllint --noout --schema ./WordPress/Docs/docs-schema.xsd $file; done

And it all checked out.
For testing it out I'll try to add false examples to see if the validation would fail.

The PR was moved to PHPCSDevTools repo. Once merged this PR can be closed.

The upstream PR has been merged and will be included in the PHPCSDevTools 2.0.0 release.
I'm closing this PR now. Once PHPCSDevTools 2.0.0 has been released (expected in the next few weeks), a PR will be submitted to this repo to update the dependency and to add validation against the schema for the docs contained in this repo.


Slow query when filtering by second link

EdgeDB Version: 1.4+ffe1237
OS Version: your CloudFormation template

Simplified schema:
Person { multi link personPosts := .<person[is Profile].profilePosts; }
Profile {
  link person -> Person {
    delegated constraint exclusive;
  }
  multi link profilePosts := .<owner[is Post];
}
IGProfile {}
TTProfile {}
Post { required link owner -> Profile; }
IGPost { overloaded required link owner -> IGProfile; }
TTPost { overloaded required link owner -> TTProfile; }

These queries are both fast:
select Post filter .owner.id = <uuid>"";
select Person { personPosts } filter .id = <uuid>"";

But this one take 5+ seconds:
select Post filter .owner.person.id = <uuid>"";

Number of objects:
Person: 100
Profile: 150k
Post: 431k
I'm happy to share more details if it would be helpful.

Interesting. I was able to reproduce this slowness.
If we do the select on just one of the post types, like
select TTPost filter .owner.person.id = <uuid>'3752263c-12a0-11ed-80df-cbe9314dd309';

it is much faster, but still kind of slow: 250ms vs 2.6ms for one of the shape ones.

I think the crux of the issue is that we are doing a semi-join on .person because Post.owner isn't visible.
If we do
select Post filter (for x in .owner union (x.person.id = <uuid>$uid))

or
select Post filter (.owner, .owner.person.id = <uuid>$uid).1

then it is fast.
I think it should be possible to disable the semi-join in this case, since Post is visible and .owner is single

Thank you 🙏🏻


[FR] Show all attributes during label filter widget's loading state

It would be nice if the attribute components displayed during initial loading inside a label field's filter widget more closely matched the actual attributes that will appear after loading (see GIF).
There is subtlety here, as we hide dynamically widgets for default attributes like confidence and index if they have all-None values (maybe others too, unsure), and this state isn't known until the results come in. However, id and label should always have data, and there may be additional user-defined dynamic attributes as well that are not currently appearing.
Without looking at the code, it looks like what is being shown now is only the first two attributes alphabetically.

This is already the case. Perhaps a migration issue?

You mean a dataset migration issue? The DatasetDocument has all the fields declared on it.
I'm still seeing the GIF I shared, both on develop and fiftyone==0.18 release.


Correct some spellings in the documentation

Fixed some of the typo's I found while doing the tutorials.
Thank you

Thanks @arshchimni, much appreciated!


Update _monotone.py

Current __init__ of Akima1DInterpolator doesn't support axis kwarg.

Indeed. Thanks @andreas-h!

Meanwhile, I'd appreciate your opinion on gh-4210 and gh-4486.


Could not install typings behind proxy

From @dakisxx in https://github.com/Microsoft/vscode/issues/24961#issuecomment-316960416:

VS code 1.14.2 (doesn't work with latest insiders either - 1.15.0-insider)
Typescript 2.4.2
OS kubuntu, fish shell

NPM location: "/home/daniel/n/bin/npm" (explicit '--npmLocation'  provided)
Npm config file: /home/daniel/.cache/typescript/2.4/package.json
Updating types-registry npm package...
Error updating types-registry package: Command failed: "/home/daniel/n/bin/npm" install types-registry
Types registry file '/home/daniel/.cache/typescript/2.4/node_modules/types-registry/index.json' does not exist
Sending response: {"kind":"event::initializationFailed","message":"Command failed: \"/home/daniel/n/bin/npm\" install types-registry"}
Response has been sent.

Some notes:

If I try to manually run the same failing command from console: "/home/daniel/n/bin/npm" install types-registry, it works fine
Referenced file (/home/daniel/.cache/typescript/2.4/package.json) is empty (content is {})
Types registry file '/home/daniel/.cache/typescript/2.4/node_modules/types-registry/index.json' does not exist. There is no node_modules under /home/daniel/.cache/typescript/2.4/ - the only file there is an empty package.json
If I start code from console, it works:

NPM location: "/home/daniel/n/bin/npm" (explicit '--npmLocation'  provided)
Npm config file: /home/daniel/.cache/typescript/2.4/package.json
Updating types-registry npm package...
Updated types-registry npm package

Could it be that it doesn't use the proxy setting correctly? (I have a corporate proxy set in VScode settings and in $HTTP_PROXY)

This is a problem of either NPM or TypeScript, not Code. Please configure NPM/TypeScript to use your proxy.

@dakisxx Where do you set the environment variable HTTP_PROXY?
@joaomoreno This sounds to me like that environment variable doesn't make it to the tsserver. We have seen this in the past with certain setups using fish or other shells because our code failed to pick up all environment variables from a temporary shell process. (Can't find the code right now.)

That could be. #21655

Also: "If I start code from console, it works". That matches #21655 too.
Should we check the settings for a proxy and pass that as HTTP_PROXY to the tsserver when HTTP_PROXY is not set? Maybe we could do that as a fallback when npm has failed once. @joaomoreno @mjbvz ?

@chrmarti We already should forward code's environment to the TSServer when we spawn it. The environment can just differ based on how you start code. That's one of the reasons we had to add the explicit typescript.tsdk setting instead of picking it up from the PATH

@mjbvz Are we reading the proxy config from the settings and forward these to the tsserver too? The problem here seems to be that HTTP_PROXY isn't set in VSCode's process.

No we don't do anything with the http.proxy setting, just the environment. Do you think we need to forward http.proxy to the tsserver using HTTP_PROXY?

It might fix some of the issues we see because the user's regular HTTP_PROXY might not be set due to #21655. Ideally we would only set it once the type acquisition has failed so we are sure we are not breaking working setups.

@dakisxx Where do you set the environment variable HTTP_PROXY?

set -Ux HTTP_PROXY "xxx"

that should be the "fish way" to globally set an env variable. If I run code from fish by running code, doing echo $HTTP_PROXY from vscode integrated terminal outputs the correct proxy url.
Is http.proxy generally not used any more? If it is still used, it should probably be used for retrieving typings as well.
Of course, I realize that if it weren't for #21655 this wouldn't be needed.

Actually, even if I don't run vscode from terminal, http_proxy seems to be set just fine, so it's possible that proxy is not the issue
process.env.http_proxy from dev tools gives the correct url


Normalize GLab.GLab 1.21.0

null
Microsoft Reviewers: Open in CodeFlow

Waiting for the automatic waiver addition from #73875 to be generated then will rerun

@wingetbot waivers Add Validation-Executable-Error


refactor: inject storage and session handler in wallet connect connector [part 5]

PR-Codex overview
This PR updates wallet connection logic in React and React Native. It introduces webLocalStorage for web wallets and nativeLocalStorage for mobile wallets. The changes also include session handling updates.
Detailed summary

Introduces webLocalStorage for web wallets and nativeLocalStorage for mobile wallets.
Updates session handling for wallet connections.
Adds sessionHandler for handling URI redirection.
Enhances wallet creation process for different platforms.

The following files were skipped due to too many changes: packages/thirdweb/src/wallets/wallet-connect/controller.ts

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#3314  👈
#3312
#3304
#3300
#3298
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @joaquim-verges and the rest of your teammates on  Graphite

Merge activity

Jun 14, 3:05 PM EDT: Graphite rebased this pull request after merging its parent, because this pull request is set to merge when ready.


TSA - update to SHA-2

OpenSSL is still using rather obsolete SHA-1 in TSA (ts) code.
This pull request contains following changes:

change the default message digest algorithm used in time-stamp query from sha1 to sha256 in ts app (apps/ts.c) (https://github.com/openssl/openssl/commit/d4c5edc0a8b5d1d77e832221d9bb228110cc530b)
change the time-stamp response (token) signature hash algorithm from sha1 to sha256 (crypto/ts/ts_rsp_sign.c) (https://github.com/openssl/openssl/commit/71af5e7b11853672388bf90f9880c7776402e5e3)
update digests tsa section config value (default acceptable time-stamp query message digest algorithms) in  sections from md5, sha1(!) to sha1, sha256, ... (apps/openssl.cnf, apps/openssl-vms.cnf) (https://github.com/openssl/openssl/commit/ef864705e348bb5dd72d8a6f3e7a2e89cd3999d6)
in tsa test suite, update these as well; add test to verify that unacepptable (by config) message algorithm in the time-stamp query causes failure time-stamp reply (https://github.com/openssl/openssl/commit/686f6b8e1e53a44f0d9d1aff30c3c3f83c309f42)
fix misleading variable name (from $datafile to $confsection in create_time_stamp_response; probably relict from verify_time_stamp_response copy); fix typo in test msg string (from req3.req to req3.tsq) (the changeset as above)

Note: sha1 usage is not completely eliminated by this PR. For now I have left it in openssl config tsa digests, together with sha-2 algorithms.
There's yet another usage of sha1, and that's ESSCertIDv1 (https://github.com/openssl/openssl/blob/OpenSSL_1_0_2d/crypto/ts/ts_rsp_sign.c#L845-L857). ESSCertIDv2 (rfc5816) allows using different hashes than sha1, but is not yet implemented. I did not examine thoroughly how widespread it currently is in trusted time-stamps.., our country's major QCA is providing trusted timestamps with sha256 signature algorithm, but still using v1 ESSCertID, i.e. sha1 hash as signer cert identifier.

Similar patch is waiting for inclusion since 2010. Good luck :)

I was not aware of the patch. I like the idea of configurable option, it came to me as well. But I finally took more simple/conservative/lazy approach :)

I think this can now be closed?

Yes, I think this can be closed. Please let me know if you want me to make another pull request with the test/recipes/80-test_tsa.t test.

Can you please look at #771 and see if it meets your needs?


Metadata endpoint returns 404

I have the repo here. When I run it things are working good, except for the metadata endpoint (it returns 404). Could someone help me as what I've might missing in setup or something maybe I missed something else?
Regards,
Martinus

Apologies for the delayed response.
You are using multiple variations of versioning. You can do that, but I suggest just one if possible. I recommend versioning by query string.
The primary issue appears to be that you don't actually have any API versions. You've marked all of the controllers as API version-neutral. If you that, there's not really any point to API versioning. Every controller accepts any and all versions as if nothing was versioned.
Contrary to what you might believe, the $metadata endpoint is not version-neutral. It is versioned by convention using the aggregation of all known API versions. This endpoint requires an API version, but makes a special exception for the first defined version for backward compatability (similar to ApiVersioningOptions.AssumeDefaultVersionWhenUnspecified). An API version is required to make that work properly because it is correlated to a specific EDM. You've hit a known (by me), but intentionally unhandled edge case if there are no API versions. Only this scenario causes this behavior. I imagine the same thing will happen if there are no controllers (you might get an empty EDMX, but it's equally nonsensical).
I suspect if you have at least one versioned controller, things will work.

Thanks @commonsensesoftware for the explanation. I think you've clearly described what I'd need to do to make it works.
Regards,
Martinus


Remove AnVIL repos from sync

This PR removes AnVIL related repos from the downstream sync. These repos will receive updates from https://github.com/jhudsl/AnVIL_Template instead.

See this issue: https://github.com/jhudsl/AnVIL_Template/issues/133


[OSPRH-10956] Fix aodh api timeout default

I noticed the default didn't appear on the rendered CRD

recheck

/lgtm

/cherry-pick 18.0-fr1

/cherry-pick 18.0-fr1


feat: Added autoscaled table resource (may cause unexpected changes)

Description
Resolves https://github.com/terraform-aws-modules/terraform-aws-dynamodb-table/issues/14
Do I manually update the changelog?
Motivation and Context
Fixes an issue that causes Terraform to revert changes made by autoscaling
Breaking Changes
Absolutely 💣  I added a note in the main README. Is it enough?
How Has This Been Tested?
I have tested and validated these changes using one or more of the provided examples/* projects but I don't have a live autoscaling table to test it. Could someone test it for me? Set your source to this:
module "dynamodb_table" {
  source = "git::https://github.com/max-rocket-internet/terraform-aws-dynamodb-table.git?ref=autoscaling_fixes"
...

And be sure to rename your aws_dynamodb_table resource as I noted 🙂

This PR is included in version 1.2.0 :tada:

@antonbabenko do you think it should be a major release since there is breaking changes?

Hmm, maybe. I am actually thinking about adding a flag (e.g. var.autoscaling_table = true) that would indicate which table to create instead of relying solely on settings of var.autoscaling_*. This way we can't continue iterate as 1.21+ and users control it better. What do you think? Can you do this?

OK makes sense. It would be safer, yes. But I would say remove the 1.2.0 release then?
I will make a new PR now.

I have deleted release 1.2.0.

OK: https://github.com/terraform-aws-modules/terraform-aws-dynamodb-table/pull/44

This PR is included in version 1.2.0 :tada:

Thank you!


Make new optional

I see how new makes it familiar to new programmers but the new keyword is really not necessary in the end. Dart has named constructors and static methods and it is up to the library maker to decide which is appropriate to use. Currently named constructors need `new' while static methods do not. My focus here is to relieve the programmer of having to remember what side of the bed the library developer woke up on and remembering do I need the new keyword or not.
Story time:
One day a library developer woke up and said parsing ints from strings is "discovering" the int so therefore it is not a constructor and a static method instead: Integer.parse(); was born. The library user MUST NOT use new to construct this Integer. Then another morning a library developer makes Element.html() and this time he think this is a constructor. The library user MUST use new to create his Element. This requires the library user to stop and think, do I need new or not?, when really in the end the library user just wants an object created; it doesn't matter how it's made.
Before:
var now = new DateTime.now();
var num = Integer.parse('54');
var elm = new Element.html(54');

After (optional):
var now = DateTime.now();
var num = Integer.parse('54');
var elm = Element.html('54');

A discussion in issue #18241 talks about making const and new together being optional. This issue was created to focus on just making the new keyword optional.

@Emasoft,
The percentage of people who do not follow the style guide for method and class names will probably be minuscule (Probably some C# programmers). So Such ambiguity can be tolerable. And, in such cases, analyzer should emit a warning so this is really not a big issue. I believe removing "new" is the way to go.

Reading this conversation has been interesting.
I realized that some of the community really likes the new keyword and fights to retain it. I being from the python community don't know of a good reason to have new at all... and was hoping to learn something here.
However, most of what I hear is that "its already here, and its not a big pain, so lets keep it" and "it can lead to less info if a new object is being created". I have never seen the "less info" problem in our 10000 file python codebase... for the simple reason that all classes are Capitalized. And pep8 / pyflakes tests automatically fail if that's not the case.
Also, I am surprised to know that the new is technically not required. Why did we agree to get chained to the new and even more bizarre, how did we come to depend on it so much that we can't even let it become optional? This is like religion.

The new conversation is interesting and I am back to add more. I have kept this issue in the back of my mind for about a year now I have found a technical point along the way. So far the discussion has been very opinionated with weak arguments but I have been looking for an actual technical difference.
Dart:
class A {}

main() {
  var B = A;
  new B(); // [error on line 5] 'B' is not a type.
}

Javascript:
function A() {}

var B = A;
new B(); // returns instance of A. This actually works!

Dart could be using the new keyword to restrict this dynamic usage on purpose for whatever reason. The only reason I can think of is for optimization purposes since Javascript is able to do it. I can see something like this holding the language back from "simply" removing new. It would be nice to hear from someone with deep technical knowledge about this.
P.S. Just to make things clear: I'm still against the enforcement of new.

class A {}

main() {
  var B = A;
  new B(); // [error on line 5] 'B' is not a type.
}

I think this should work with https://github.com/dart-lang/dart_enhancement_proposals/issues/4

I think this may be the way to go, especially with the new linter. For example, you could then make sure the code base always uses uppercase for classes.
I would prefer removing new keyword completely, but I think this would be better, then the current situation.

FWIW this would help Flutter code, which create a lot of new instances in build() methods.

Kotlin (language for JVM) also omits the new keyword. Look at type safe builders in Kotin. They are so beautiful to work with and UI object hierarchies can be constructed with ease and readability is terrific! Dart really needs syntactic sugar here - making new optional would help a bit.
verticalLayout {
    val name = editText()
    button("Say Hello") {
        onClick { toast("Hello, ${name.text}!") }
    }
}

Optional new is an accepted feature.
We are not working on it right now, but it's on our roadmap. Unfortunately, I can't give any timelines.

Here's my two cents on the subject,
class A{
    int a,
    String b;
    A(this.a,this.b);
}
List list = [new A(1,"abc"), new A(2,"abcd"),...];

After new being optional, it will be great if i can write
List list = [(1,"abc"), (2,"abcd"),...];
Both 'new' and 'A' are removed(list's type is already declared, so the types 'A' on the right are redundant).

@hooluupog What? The Dart design team already made the code unreadable enough making 'new' optional. Now you suggest to make type names optional?
Somebody is forgetting that readability and understanding of code is the MOST IMPORTANT FEATURE of a programming language. Otherwise we would all be better to keep writing in binary 010101...

@Emasoft I do not suggest to make type names optional.In fact,I fully support strong type. What i mean is to remove unneeded redundancy. Even in Go(which is a very opinionated language),I
can write list =  []A [{1,"abc"}, {2,"abcd"},...]  //A is a struct in Go.

@hooluupog I can still read the type in your Go example. The A is at the right side of the assignement operator. Not in your proposal. At the right side of '=' you don't have type names anymore, and this is confusing.

Then I should be able to pass the same to a method with the following signature:
void MyMethod(List list);
But then how I'm supposed to know what this line of code means?
myObject.MyMethod([(1,"abc"), (2,"abcd"),...])
Can you see what I mean?

That particular shorthand is unlikely to be accepted. Apart from the lower readability, it's also ambiguous. It looks simple here because the A constructor takes two arguments, but what if it was just
List list = [(x + 2)];

It's very non-obvious that you need to coerce x + 2 to B. Also, it assumes that you will use the empty-named constructor (new B(x + 2)), but there is no help in using a named constructor - if B.foo is the right one to use, this syntax doesn't allow it.
I'm more interested in explicitly omitting the class name where it's given, so maybe something like:
List list = [.foo(x + 42)];

would mean that the omitted thing before the . is the expected type.

@Irhn That point is hard to spot. You can easily miss it, or type it by error. That is an even more unreadable expression.
Readability must be paramount. Do you know that on average we spend 87% of the development time debugging and looking for errors in the code and only 13% of the time actually writing the code?
After all this years there is still people (script kiddies, mostly) who think that typing less characters is cool or smart... well, I have bad a news for them: it is dumb. The dumbest thing you can do.

I don't think the . is too hard to spot (I guess better syntax ideas are always welcome though).
Also I'd expect the analyzer to generate an error in case it is typed unintentionally.
I also don't think writing less code is an important goal, but more code is more to read and redundant information like repeated type annotations often make the code harder to read, which should be a good enough reason to try to get rid of them.

The . is the smallest character of all, of course it is hard to spot! It is also used for MULTIPLE functions. You can have many dots one near each other, with different functions, when you use floating point numbers (0.011*-1.2/4-.A4.21-.B0.11-.A-.102+1.2-.A*0.1-.B-.01/.A+.3 <- try to guess if there is a dot that is not right). There is a basic language design imperative, and that is to make errors easy to spot.

It takes as many space as any other character ;-) and there are no other places where . comes before a non-numeric character, therefore I find it quite distinctive. . before numeric characters is quite seldom and usually stands out as number value. As mentioned I can imagine that there are better options, which is why I wrote "(I guess better syntax ideas are always welcome though)"
And the options are quite limited, because other symbol characters are already in use for other constructs.

Closing: With the feature specification on implicit creation, it has been decided that Dart will have the feature which is requested here. ;-)
For an instance creation expression (say, new C(42) or const C(42)) it is allowed to leave out the new or const keyword (yielding C(42)). The decision about whether such an expression means new ... or const ... is a little bit involved, but the main idea is that it will be const when ever possible, and otherwise new; said feature specification has the details.

Cool! is there a tracking issue for the implementation?

Yep: #30921. Note that the 'Specification' subtask isn't checked, but that is the language specification proper. The design has been finalized and agreed to, and it is documented in the feature specification for implicit creation. That material will later be integrated into the language specification.

Guys, from my point of view having "new" keyword for instance creation and without it, seems like noisy
... Because it is two different ways of creation of object ...
Will be new keyword removed in future completly ?

No promises. I hope it will be removed at some point, but it's a low-priority and heavily breaking change, so the cost/benefit ratio is not in its favor as a stand-alone change.
If we have another related language change, we may be able to roll the removal of new into that (if you are going to run a migration program on your code, we can remove the new for you as well).
It's probably not something we'll do as part of an otherwise unrelated language change.

Eliminating new completely is not obviously an improvement. If you use new e with some term e rather than e on its own then you've specified that evaluation must invoke a constructor. This is not an ironclad guarantee that it will yield a fresh object (but the exception, a factory constructor, is written knowing that it should be OK to view the returned object as fresh). So a few well chosen new keywords might be helpful for the reader of a piece of code.
Of course, we could also eliminate new completely, and then later add support for an @isNew annotation on expressions, and enforce that each expression has this marker if and only if it yields a fresh object, with some document_instance_creation lint. That would teach those nasty factory constructors a lesson, and solve the halting problem. ;-)


Stable attestation subnet subscriptions, note for fork transition clarification

We have this note currently:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/p2p-interface.md#attestation-subnet-subscription

Note: When preparing for a hard fork, a node must select and subscribe to subnets of the future fork versioning at least EPOCHS_PER_SUBNET_SUBSCRIPTION epochs in advance of the fork. These new subnets for the fork are maintained in addition to those for the current fork until the fork occurs. After the fork occurs, let the subnets from the previous fork reach the end of life with no replacements.

I have some doubts we need to do this in advance of 256 epochs before the fork:

node subnets will be changed in 256 epochs with 100% guarantee
we usually do it in like 2 epochs before the fork, for example, for sync committee subnets (though I've not found any constant for this in the spec)

Maybe EPOCHS_PER_SUBNET_SUBSCRIPTION is not related to an advance meaning that we should subscribe as usual for EPOCHS_PER_SUBNET_SUBSCRIPTION  and do it in advance before the fork, but it's not clear with the current text. Maybe polish it a little? I'd just remove at least EPOCHS_PER_SUBNET_SUBSCRIPTION epochs part.

I'm not sure I understand the question correctly.

we usually do it in like 2 epochs before the fork, for example, for sync committee subnets (though I've not found any constant for this in the spec)

There is no reason to do it only 2 epochs before the hark fork. 2 epochs is equal to only 12 minutes. The reason that we do it at least 256 epochs in advance because we want to ensure that the subnet backbones are stable enough.

Maybe EPOCHS_PER_SUBNET_SUBSCRIPTION is not related to an advance meaning that we should subscribe as usual for EPOCHS_PER_SUBNET_SUBSCRIPTION and do it in advance before the fork, but it's not clear with the current text. Maybe polish it a little? I'd just remove at least EPOCHS_PER_SUBNET_SUBSCRIPTION epochs part.

It's not directly related, but we should specify the time the nodes should be subscribed to the subnets before the hard fork in advance, so we just thought reusing that constant makes sense.

@ppopth
From my understanding:

Compute subnet method is pretty deterministic with input of nodeId and epoch (no fork digest or whatever), stable backbone subscriptions lasts EPOCHS_PER_SUBNET_SUBSCRIPTION (256 epochs).
Once we drop stable subnet subscription ids from ENR, the only way to find appropriate peers for this subnet is using compute formula which for every nodeId provides subnet that lasts only EPOCHS_PER_SUBNET_SUBSCRIPTION, so if we do some subnet subscription in any advance (even 1 epoch), noone will be able to find us there.
On fork topic subscriptions are changed, topics method use fork digest for calculation which is changed on fork. Subnets are the same. So in advance we start to publish and listen messages on new fork topics, we don't need to do it for a lot of epochs as old attestations become irrelevant, 2 epochs are enough.

So current text in spec looks confusing for me. I've suggested an edit.

so if we do some subnet subscription in any advance (even 1 epoch), noone will be able to find us there.

I don't understand. Why won't no one be able to find us?

we don't need to do it for a lot of epochs as old attestations become irrelevant, 2 epochs are enough.

I don't understand this as well. Why are the new topics related to the old attestations? and how is it related to 2 epochs? The reason that it's 256 epochs is that we would have enough time for the nodes to form the mesh of the new topics.


Access denied on test resources

Describe the Bug

Hi, I can't download the test resources for this reader nor for any other.
Is the download link publicly available?
❯ python scripts/download_test_resources.py
[INFO: download_test_resources:  79 2024-01-31 18:54:16,381] Downloading test resources using top hash: 0f8bcf14f4106fae21ce4f7e848570fabb6764be41294790a1ef39c59b6d7032
[ERROR: download_test_resources:  95 2024-01-31 18:54:19,150] =============================================
[ERROR: download_test_resources:  99 2024-01-31 18:54:19,150]

S3 AccessDenied for S3Api.HEAD_OBJECT on bucket: bioio-dev-test-resources

[ERROR: download_test_resources: 100 2024-01-31 18:54:19,150] =============================================

Environment

OS Version: linux
bioio-tifffile Version: main

Perhaps there is a way I could download the test resources in another way, while this is being fixed? I would like to work on the performance issues raised in https://github.com/AllenCellModeling/aicsimageio/issues/550 but it is difficult to do so without the test files of the readers.

@SeanLeRoy is there a quick way to handle this? I'm not sure if we can allow it to be public. It would be great to help enable this contribution.
@Armavica if you want to work around this, maybe you can download the resources via aicsimageio and I would expect many of them are the same.


adding TryGetSpatialOSEntityIdForGameObject

Contributions: We are not currently taking public contributions - see our contributions policy. However, we are accepting issues and we do want your feedback.

Description
adding TryGetSpatialOSEntityIdForGameObject
Tests
added tests
Documentation
no doc so far
Primary reviewers
If your change will take a long time to review, you can name at most two primary reviewers who are ultimately responsible for reviewing this request. @ mention them.

Made some minor comments but otherwise lgtm.


PWA Push notification

Expected Behavior
Is anyway for implementation push notification in create-react-app without ejecting?
and is any plan to implementation natively?

Why do you need ejecting? It's all about service workers and Push API/Notification API, isn't it?


liquid-loader doesn't parse layout/theme.liquid

It actually only parses stuff in src/templates...


Identifiers validation failed for dataset Macrobenthos monitoring at long-term monitoring stations in the Belgian part of the North Sea from 2001 on

Identifier validation failed for the dataset Macrobenthos monitoring at long-term monitoring stations in the Belgian part of the North Sea from 2001 on:

Crawler attempt: 316
Publishing organization: Flanders Research Institute for Agriculture, Fisheries and Food (ILVO)
Publishing country: BELGIUM
Installation: European Ocean Biodiversity Information System (EurOBIS)
Number of occurrences indexed for this dataset at the time of the issue: 23316
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 13125 total records; 13125 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3309894/step

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Macrobenthos monitoring at long-term monitoring stations in the Belgian part of the North Sea from 2001 on : https://doi.org/10.14284/202.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

Id checkes skipped because OBIS.


Project using aspectjx plugin

Hi, I am trying to use aspects on an android project but build failed with the exception
`
Execution failed for task ':app:transformClassesWithExtractJarsForInternalDebug'.

Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithExtractJarsForInternalDebug'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
...
Caused by: java.lang.RuntimeException: error
at com.android.build.gradle.internal.pipeline.IntermediateFolderUtils.parseScopeLevelFolders(IntermediateFolderUtils.java:444)
at com.android.build.gradle.internal.pipeline.IntermediateFolderUtils.parseTypeLevelFolders(IntermediateFolderUtils.java:411)
at com.android.build.gradle.internal.pipeline.IntermediateFolderUtils.computeNonIncrementalInputFromFolder(IntermediateFolderUtils.java:116)
at com.android.build.gradle.internal.pipeline.IntermediateStream.asNonIncrementalInput(IntermediateStream.java:132)
at com.android.build.gradle.internal.pipeline.TransformTask.computeNonIncTransformInput(TransformTask.java:246)
`

What I did to use aspectJX

add android an library ("aspectjx") to the android studio project
add to project gradle: resolutionStrategy { cacheChangingModulesFor 0, 'seconds' }
add dependency to project gradle: 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:1.0.9'
add dependency to library gradle: 'org.aspectj:aspectjrt:1.8.9'
add to settings.gradle: include ':app', ':aspectjx'
app to app gradle: compile project ':aspectjx'"

Did I miss something ?
Thanks for answering

Please note that my app has 2 "flavors" (public and internal), hence the "transform...InternalDebug".

In the app gradle, I also added
aspectjx {
includeJarFilter 'MyProject/aspectjx'
excludeJarFilter
}
The library source has one file: LibrarySDK.java (just like your demo)

Make sure that instant run is inactive because it conflicts with aspectjx


Docker Compose Task in Azure DevOps "Couldn't connect to Docker daemon. You might need to start Docker for Windows" Hosted VS 2017

Required Information
Question, Bug, or Feature?
Type: Bug
Enter Task Name: Docker Compose
Environment

Server - Azure Pipelines or TFS on-premises? Azure Pipelines

Account Name: teamkyckr
Team Project Name: Kyckr-Main
Build Definition Name: API Pipeline
Build Definition Number: Release-853

Agent - Hosted or Private:  Hosted

Agent queue name: VS2017
Issue Description
Task intermittently fails without clear logs. If triggered again, sometimes pass, sometimes fails again.
Message:
9-05-27T13:38:49.4197400Z Couldn't connect to Docker daemon. You might need to start Docker for Windows.
2019-05-27T13:38:49.6208502Z ##[error]Couldn't connect to Docker daemon. You might need to start Docker for Windows.
2019-05-27T13:38:49.6300049Z ##[error]C:\ProgramData\Chocolatey\bin\docker-compose.exe failed with return code: 1
2019-05-27T13:38:49.6390265Z ##[section]Finishing: Build container image
Task logs
Attached.
ReleaseLogs_3033.zip

an azure devops I see the same error using the default docker compose task in the release pipelie. Any clue as to what is causing this?

OK, so for me that was actually quite easy:

make sure the subscription and registry info are correct
make sure you run on the correct OS (For me that was changing from a hoster VS 2017 agent to and ubuntu agent)

@icifly2

OK, so for me that was actually quite easy:

make sure the subscription and registry info are correct
make sure you run on the correct OS (For me that was changing from a hoster VS 2017 agent to and ubuntu agent)

What do you mean by "make sure the subscription and registry info are correct"?
And when you say "make sure you run on the correct OS (For me that was changing from a hoster VS 2017 agent to and ubuntu agent)" looks like you're implying that VS2017 is not an incorrect agent, well, that's not the case, I work for customers that can't use ubuntu agent on this step.

We have increased the timeout for docker daemon to start on hosted machines and that should have fixed this issue. Please reopen if you are still running into it.

I am seeing this issue today on the hosted Ubuntu agent.
https://dev.azure.com/collinbarrett/FilterLists/_build/results?buildId=1517


cue: fix output in ExampleContext

If the output comment block of a testable example is not the last comment block then nothing will be tested. This commit combines the comment blocks so that the example actually tests against the output.
fixes #1267

Thanks for the fix, @ameowlia!


Fix macos image to use in tox jobs

I am seeing failures in packages that have py38- and py39- tox environments being tested on Mac since those Python versions are not available on macos-14 which is now the macos-latest. So for <3.10, if the OS is macos-latest, we need to hard-code it to macos-12 which will be the last image to ever support these Python versions.

Conda is broken, not sure why but not related to the changes here - I did see the conda issue in other repos, so it might be an upstream issue related to the macos-latest migration.

Which is a bit strange to begin with, as miniconda still provides 3.8.19 and 3.9.19 on macOS 14.4.1 (which even has 3.9.6 as system Python).

Now that github have pulled macos-12 runners should we just revert this?


maintain unit test & refactoring pattern_model

This PR maintains unit tests.

Add unit tests for src/pyird/image, src/pyird/spec (almost completed for the current codes)
Refactoring src/pyird/image/pattern_model.py

memo:

Updated python to version 3.11 in github action.
-> Because module 'sep' does not support wheel install via pip, add pip install numpy, Cython in main.yml before run setup.py
Not to install the develop version of astroquery, specify the version '==0.4.7'.


WebUI: requested an insecure script

Describe the bug
verdaccio is behind the nginx
when open site: https://reigistry.example.com, then got error from console:
Mixed Content: The page at 'https://registry.example.com/' was loaded over HTTPS, but requested an insecure stylesheet 'http://registry.example.com/-/static/0.style.cdd1fdf79cd6bec30c42.css'. This request has been blocked; the content must be served over HTTPS.

nginx configuration:
server
{
    listen       443;
    ...

    location / {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Host $http_host;
      proxy_set_header X-NginX-Proxy true;
      proxy_pass http://<IP_ADDRESS>:4873;
      proxy_redirect off;
    }

}

please help

@nevernet in this example I use $host instead, it works for me. Have you tried that?
https://github.com/verdaccio/docker-examples/blob/master/reverse_proxy/nginx/relative_path/nginx_ssl/nginx-default.conf#L23

@juanpicado it does not work for me.
nginx server is on <IP_ADDRESS>
npm server is on <IP_ADDRESS>: 4873
is there a problem?

I think you would need to provide more info, verdaccio version, configuration, otherwise would take ages to find the reason.  Please follow the https://github.com/verdaccio/verdaccio/blob/master/.github/ISSUE_TEMPLATE/Bug_report.md issue template.

proxy_pass http://

Isn't this the problem?

That might be ... it was my first clue, we will see.

@DanielRuf not exactly :)
i have been enabled http access, and then everything well
@juanpicado maybe we need to add new configuration option for how to load static files


fix compatibility with docker-machine 0.5.0

docker-machine changed the inspect output, removing the StorePath
root-level key and adding a Driver > StorePath (which doesn't include
the full path to the machine as before)
docker-machine also changed the exit status for docker-machine start
if the machine is already running (now exits with 1)
fixes #99 and #100

This pull request specifically addresses:

docker-machine start dinghy now exiting with a status of 1, causing Machine "dinghy" is already running errors.
docker-machine inspect dinghy having a different format which caused the generated ssh_config to be invalid, resulting in the Permission denied and Error executing command: ["sudo umount /Users || true"] errors.

thanks @miquella , i'll build a new release.
I think it makes more sense to look at HostOptions.AuthOptions.StorePath rather than Driver.StorePath, since AuthOptions has the full path to the directory where the SSL certs are stored, which is what we are looking for, and the information under Driver could vary between virtualbox and vmware. I'll make that tweak.


Seed Phrase Input Error: Firefox Browser Extension V4.34.0

When inputting the Secret Recovery Key, it's not possible to jump back on a word to correct it in case a letter is missing or need to add a missing word at the beginning or in the middle with no particular position. The cursor can be placed successfully but whenever you start to edit the letter/word, It drops at the bottom of the last word inputted and the letter/word is added there.

Thanks for the heads up 🙏  We'll fix


FormRecognizer - Labeling tool

I am trying to use Azure Form Recognizer with Labeling tool to train and extract text out of images. As per the documentation:
First, make sure all the training documents are of the same format. If you have forms in multiple formats, organize them into subfolders based on common format. When you train, you'll need to direct the API to a subfolder. (https://docs.microsoft.com/en-us/azure/cognitive-services/form-recognizer/quickstarts/label-tool#set-up-input-data)
In my case I have different formatted images. I can create different projects, label my images, train them and get expected output. Challenge in my case is, if I follow this approach I need to create different projects, train it separately and maintain several model ids.
So I just wanted to know is there any way where we can train different formats together as a single training model? Basically I want to know if we can use single model Id to extract key-value pair out of different formatted images?
Any guidance is really appreciated.
Regards,
Madhu

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

ID: 67f00138-7492-ba6e-6665-de0a6e0803f8
Version Independent ID: 3835780b-1ace-77e3-553e-a537b6084de9
Content: Quickstart: Label forms, train a model, and analyze a form using the sample labeling tool - Form Recognizer - Azure Cognitive Services
Content Source: articles/cognitive-services/form-recognizer/quickstarts/label-tool.md
Service: cognitive-services
Sub-service: forms-recognizer
GitHub Login: @PatrickFarley
Microsoft Alias: pafarley

@madhumlr Thanks for the feedback. We are investigating the issue and will update you shortly.

@madhumlr Thanks for the feedback. The current functionality of the product does not allow to have a single model id for documents with different formats. We have internally provided feedback to our product team about this feature and we shall update you the progress in our future releases.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag @RohitMungi-MSFT in your reply.


Fix mismatched alloc/dealloc with memory_resources

I noticed the following AddressSanitizer error when using boost json:
=================================================================
==54836==ERROR: AddressSanitizer: new-delete-type-mismatch on 0x60300008d9d0 in thread T0:
  object passed to delete has wrong type:
  size of the allocated type:   6 bytes;
  size of the deallocated type: 6 bytes.
  alignment of the allocated type:   16 bytes;
  alignment of the deallocated type: 1 bytes.
    #0 0x7ffff76abaec in operator delete(void*, unsigned long, std::align_val_t) ../../../../gcc-10.3.0/libsanitizer/asan/asan_new_delete.cpp:190
    #1 0x4086c2 in std::pmr::memory_resource::deallocate(void*, unsigned long, unsigned long) /opt/gcc/10/include/c++/10.3.0/memory_resource:105
    #2 0x6a19f7 in boost::json::standalone::key_value_pair::~key_value_pair() /home/oipo-unencrypted/Programming/json/include/boost/json/value.hpp:3426
    #3 0x9fc702 in boost::json::standalone::object::destroy(boost::json::standalone::key_value_pair*, boost::json::standalone::key_value_pair*) /home/oipo-unencrypted/Programming/json/include/boost/json/impl/object.ipp:820
    #4 0x9fc557 in boost::json::standalone::object::destroy() /home/oipo-unencrypted/Programming/json/include/boost/json/impl/object.ipp:808
    #5 0x9d1147 in boost::json::standalone::object::~object() /home/oipo-unencrypted/Programming/json/include/boost/json/impl/object.ipp:247
    #6 0x9e49cc in boost::json::standalone::value::~value() /home/oipo-unencrypted/Programming/json/include/boost/json/impl/value.ipp:43
    #7 0x6991dc in boost::json::standalone::memory_resource_test::testPmr() /home/oipo-unencrypted/Programming/json/test/memory_resource.cpp:132
    #8 0x699735 in boost::json::standalone::memory_resource_test::run() /home/oipo-unencrypted/Programming/json/test/memory_resource.cpp:144
    #9 0x699eae in test_suite::detail::instance<boost::json::standalone::memory_resource_test>::run() /home/oipo-unencrypted/Programming/json/test/test_suite.hpp:578
    #10 0x6836df in test_suite::detail::runner::run(test_suite::detail::suite_info const&) /home/oipo-unencrypted/Programming/json/test/test_suite.hpp:271
    #11 0x68a33d in test_suite::run(std::ostream&, int, char const* const*) /home/oipo-unencrypted/Programming/json/test/test_suite.hpp:703
    #12 0x681db1 in main /home/oipo-unencrypted/Programming/json/test/main.cpp:30
    #13 0x7ffff67580b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)
    #14 0x407e0d in _start (/home/oipo-unencrypted/Programming/json/build2/test/boost_json-tests+0x407e0d)

0x60300008d9d0 is located 0 bytes inside of 6-byte region [0x60300008d9d0,0x60300008d9d6)
allocated by thread T0 here:
    #0 0x7ffff76aaaef in operator new(unsigned long, std::align_val_t) ../../../../gcc-10.3.0/libsanitizer/asan/asan_new_delete.cpp:111
    #1 0x4084fd in std::pmr::memory_resource::allocate(unsigned long, unsigned long) /opt/gcc/10/include/c++/10.3.0/memory_resource:100
    #2 0x968b44 in boost::json::standalone::key_value_pair::key_value_pair<boost::json::standalone::value, boost::json::standalone::storage_ptr&>(std::basic_string_view<char, std::char_traits<char> >, boost::json::standalone::value&&, boost::json::standalone::storage_ptr&) /home/oipo-unencrypted/Programming/json/include/boost/json/value.hpp:3558
    #3 0x9619ae in std::pair<boost::json::standalone::key_value_pair*, bool> boost::json::standalone::object::emplace<boost::json::standalone::value>(std::basic_string_view<char, std::char_traits<char> >, boost::json::standalone::value&&) /home/oipo-unencrypted/Programming/json/include/boost/json/impl/object.hpp:407
    #4 0x9ee09d in boost::json::standalone::value_ref::make_object(std::initializer_list<boost::json::standalone::value_ref>, boost::json::standalone::storage_ptr) /home/oipo-unencrypted/Programming/json/include/boost/json/impl/value_ref.ipp:136
    #5 0x9e66e9 in boost::json::standalone::value::value(std::initializer_list<boost::json::standalone::value_ref>, boost::json::standalone::storage_ptr) /home/oipo-unencrypted/Programming/json/include/boost/json/impl/value.ipp:177
    #6 0x9e7010 in boost::json::standalone::value::operator=(std::initializer_list<boost::json::standalone::value_ref>) /home/oipo-unencrypted/Programming/json/include/boost/json/impl/value.ipp:213
    #7 0x698f7b in boost::json::standalone::memory_resource_test::testPmr() /home/oipo-unencrypted/Programming/json/test/memory_resource.cpp:133
    #8 0x699735 in boost::json::standalone::memory_resource_test::run() /home/oipo-unencrypted/Programming/json/test/memory_resource.cpp:144
    #9 0x699eae in test_suite::detail::instance<boost::json::standalone::memory_resource_test>::run() /home/oipo-unencrypted/Programming/json/test/test_suite.hpp:578
    #10 0x6836df in test_suite::detail::runner::run(test_suite::detail::suite_info const&) /home/oipo-unencrypted/Programming/json/test/test_suite.hpp:271
    #11 0x68a33d in test_suite::run(std::ostream&, int, char const* const*) /home/oipo-unencrypted/Programming/json/test/test_suite.hpp:703
    #12 0x681db1 in main /home/oipo-unencrypted/Programming/json/test/main.cpp:30
    #13 0x7ffff67580b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)

SUMMARY: AddressSanitizer: new-delete-type-mismatch ../../../../gcc-10.3.0/libsanitizer/asan/asan_new_delete.cpp:190 in operator delete(void*, unsigned long, std::align_val_t)
==54836==HINT: if you don't care about these errors you may set ASAN_OPTIONS=new_delete_type_mismatch=0
==54836==ABORTING

Which happened when using the std::pmr::new_delete_resource(). Fixed by removing the sizeof(char) parameter on deallocation.

The error is properly fixed in #572


Label MachinePool and AzureMachinePool with giantswarm.io/machine-pool

I see that we are labeling our nodepool CRs with this label on AWS, so for consistency sake, I'm doing the same on Azure.

Will this annotation also be present if the node pool has been created using a different method, e. g. happa? This should not be a kubectl-gs-only thing.

If I understand typescript at all, this was already being done on happa. For the machinepools and for the azuremachinepools.


fixed ServerError so it works in typescript projects

This is a simple fix which makes the prototype on the error class work with typescript projects.

Hey @jjosef, thanks for submitting this. Sorry for taking a little to get back to you. We are trying to finalize many things (including my presentation) for next weeks conference. I'll ask the team to review this since I am not very familiar with TS and we'll try to get this taken care as soon as we can.

Hey @jjosef, so I just got back from dev days and starting merging all the PR's, apparently one of them has created conflicts with this PR (looks like maybe some sort of whitespace issue or something). Could you possibly update this(sorry about that).
Also, our typescript guy wanted me to ask what the issue you were having was as he said what's in the error should not cause any issue (what version of TS are you all running)?

Hey Robert,
I'm using the latest version of typescript and it would not compile without
the change I made.
On Fri, Jun 14, 2019 at 8:45 AM Robert<EMAIL_ADDRESS>wrote:

Hey @jjosef https://github.com/jjosef, so I just got back from dev days
and starting merging all the PR's, apparently one of them has created
conflicts with this PR (looks like maybe some sort of whitespace issue or
something). Could you possibly update this(sorry about that).
Also, our typescript guy wanted me to ask what the issue you were having
was as he said what's in the error should not cause any issue (what version
of TS are you all running)?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Asymmetrik/node-fhir-server-core/pull/179?email_source=notifications&email_token=AABPRPXNMJGIX7Q4OMMMYMTP2OOFXA5CNFSM4HREXZ7KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXW2UYQ#issuecomment-502114914,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABPRPSZGIHV2ZKEAGTGVOLP2OOFXANCNFSM4HREXZ7A
.

--
John Josef
407.617.4975

@jjosef, Hmm ok, we can't seem to recreate the issue on our side but I don't want to hold up your development I can go ahed and merge this anyway.


Setup Deliver configurarion from 'fastlane init' command fails

When running 'fastlane init' with no previous Deliver configuration created the init process fails with the next error:
[10:14:20]: Loading up 'deliver', this might take a few seconds
[10:14:25]: Error occurred with the setup program! Reverting changes now!
[10:14:25]: Deleting the 'fastlane' folder
/Users/maurobender/.rvm/gems/ruby-2.1.2@global/gems/fastlane-1.29.2/lib/fastlane/setup.rb:108:in `ask_to_enable_other_tools': uninitialized constant Deliver::DeliverfileCreator (NameError)
	from /Users/maurobender/.rvm/gems/ruby-2.1.2@global/gems/fastlane-1.29.2/lib/fastlane/setup.rb:25:in `run'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2@global/gems/fastlane-1.29.2/bin/fastlane:49:in `block (2 levels) in run'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2@global/gems/fastlane-1.29.2/bin/fastlane:127:in `run'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2@global/gems/fastlane-1.29.2/bin/fastlane:133:in `<top (required)>'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/bin/fastlane:23:in `load'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/bin/fastlane:23:in `<main>'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
	from /Users/maurobender/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'

Running 'deliver init' first seems to solve the problem because there's not need to create the Deliver configuration from the 'fastlane init' command.
Running fastlane 1.29.2.

I assume you installed the deliver beta? If so, fastlane was not yet updated to use the new beta.

I just pushed deliver 1.0.0 and fastlane 1.30.0. Please update using sudo gem update fastlane and let me know if everything works for you.
Also, make sure to follow the new Migration Guide to 1.0.

I've tried it and now is working ok with fastlane 1.30.2. The weird thing is that I haven't installed delieverbeta, I've just installed fastlane and deliver was installed as a dependecy, maybe the beta was set as a dependency for that version. Anyway, with the update to the version 1.30.2 of the gem everything seems to be working just fine.
Thanks!

:+1:

I am having the same issue... just followed the guide with a skeleton project. Any Ideas why the error occurred?
This message shows up right after showing the summary:
[22:06:49]: Error occurred with the setup program! Reverting changes now!
[22:06:49]: Moving './fastlane/screenshots' to 'screenshots'
[22:06:49]: Deleting the 'fastlane' folder
/Library/Ruby/Gems/2.0.0/gems/deliver-1.2.0/lib/deliver/setup.rb:31:in `generate_deliver_file': undefined method `latest_version' for "app":String (NoMethodError)
	from /Library/Ruby/Gems/2.0.0/gems/deliver-1.2.0/lib/deliver/setup.rb:14:in `create_based_on_identifier'
	from /Library/Ruby/Gems/2.0.0/gems/deliver-1.2.0/lib/deliver/setup.rb:5:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.32.0/lib/fastlane/setup.rb:110:in `ask_to_enable_other_tools'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.32.0/lib/fastlane/setup.rb:24:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.32.0/bin/fastlane:48:in `block (2 levels) in run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.32.0/bin/fastlane:136:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.32.0/bin/fastlane:142:in `<top (required)>'
	from /usr/local/bin/fastlane:23:in `load'
	from /usr/local/bin/fastlane:23:in `<main>'

@crylico Sorry about that. That's because you have the Apple TV app enabled. The latest spaceship release should fix that :+1:

@KrauseFx @cytryn got mentioned by mistake - just want to make sure you both get necessary notifications 😊

Haha, you're the best @crylico :+1:

Maybe the same Issue, and what important info I got from console is :

please submit an issue on GitHub and attach the following number to it: 'f96d0750202c9258ab7aacc2dae16629'


⚠ Bofrost.lu has degraded performance

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

HTTP code: 200
Response time: 1373 ms

Resolved: Bofrost.lu performance has improved in 0c30429 after 6 minutes.


Binding element 'any' implicitly has an 'any' type.

TypeScript Version:  Version 2.1.0-dev.20160712
Code
function test({a:any}) {

}

Expected behavior:
Should compile with --noImplicitAny (compiles fine with 1.8.0)
Actual behavior:
error TS7031: Binding element 'any' implicitly has an 'any' type.

this is not a type annotation, this is a rename for the destructured propeortes. Please see http://www.typescriptlang.org/docs/handbook/variable-declarations.html#property-renaming
what you want is:
function test({a} : { a: any}) {

}

Shouldn't it be bug for 1.8 then ?

Shouldn't it be bug for 1.8 then ?

I am sure there was one logged, could not find it. it should be fixed in latest typescript@next as well as<EMAIL_ADDRESS>

I feel like a stronger error message should be emitted here.  I don't think many people will easily find this.


Commands on terminal keeps active after closing

VSCode Version: 1.26
OS Version: Ubuntu 18.04.1

Steps to Reproduce:
1.Execute some command like 'ng serve' or 'node index.js' on the VS Code terminal
2.Close VS Code without ending the command
3.Command is still active, and has to be killed using killall via terminal

Does this issue occur when all extensions are disabled?: Yes
I don't know if this expected, but it's kind of annoying. Maybe it can be a feature if it's expected.

I believe this is already fixed, can you see if you can reproduce in the Insiders build?


Request: Proxy property on Layer

I'd really love to have a proxy property for layers that could be used for hooking into animations that aren't directly supported by Framer yet. I see this being useful for hooking in new ideas and having a controller to manipulate them sanely. So essentially animate the proxy value but get no output just a change event fired.
I'd also be interested in building this as well if this was something you might support.
Or would it make more sense to just create a proxy object class where you could spin up multiple proxies?
Thoughts?

I don't know if I understand what you mean. Could you provide an example, or maybe a suggestion of what such and API would look like?

Basically want to "animate" a value from 0 to 1 and then be able to take that value and apply it something that you currently don't support. Something like a background color alpha, a SVG's radius, the stokewidth... Basically a prop that I wouldn't have to simulate by creating a layer and animating it between 0 and 100 on X or Y... Something that would allow us to use your animation layers over a value that does really exist but responds to change events.

Would you want to use this to animate properties alongside an animation of a a current layer, or do you just want to have a shortcut to get the values out of an Animator?

Initially I was thinking along side but I guess a shortcut could work too.
Initially was thinking on the layer so it could be done along side other
properties as the issue states. But I could see that longer term, if
extremely useful, some sort of shortcut to be better. But hooking into
states is mainly the thinking here.
On Tue, Aug 2, 2016 at 5:59 AM Niels van Hoorn<EMAIL_ADDRESS>wrote:

Would you want to use this to animate properties alongside an animation of
a a current layer, or do you just want to have a shortcut to get the values
out of an Animator
https://github.com/koenbok/Framer/blob/master/framer/Animator.coffee?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/koenbok/Framer/issues/352#issuecomment-236896250, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AACbYvhOaqaIkPkVsG69dVbwGARt0euZks5qbz8mgaJpZM4ISK11
.

--

Jordan Dobson

I'll write up an example of what I am thinking here to start with... A good example would be animating a SVG mask... I'll just use a proxy layer instead too.. which I hope would take the place of a proxy property.

Cool! Looking forward to it!

Here's an example of what I'd hopefully have... in a simple way.

Here's an example file doing it without the proxy and having to use another layer...
http://jrdn.io/3h1r0W470Y3s
I could see this being useful to manipulate other things that framer doesn't handle yet but still using the animation properties in Framer.
If we did get shortcuts out of Animator, how would that work?

I think you want a basic building block like:
animation = new Animation(target, properties, options)

a1 = new Animation(layerA, {x: [0, 100], opacity: [0, 1]}, curve:"spring")

So in your example:
a1 = new Animation layerA,
    "path.style.strokeDashOffset": [0, 100],
    "path.style.strokeWidth": [0, 1],
    "path.style.r": [0, 10]
, curve: "spring"

This does imply some custom setters on your svg element that use setAttribute internally, although I think you can also use css properties on svg these days. This also implies we'd support keypaths.

Kind of yes... ideally it would be attached to the layer so it could be a part of states and I could just listen for changes and calculate changes (if needed) on the "change" event.
What if I could define custom properties on the layer inside custom (or directly on the layer)... and they could be included in a state.
Other things could be animating the backdrop-filter: blur(10px); value or box-shadow spread, etc, etc.

If you build states on top of these they'll automatically work with anything.

This is also actually also not too far off from how everything works already. We can clean this up and open it up. But we should do it after the upcoming animation api overhaul that @nvh is planning :-)

I mean yeah if I don't have to setup a change value then that's even better. But for something like backdrop-filter: blur(10px) or box-shadow: inset 0px 0px 0px 10px red I would need to handle the formatting I believe and couldn't directly pass in the value. So I would still want to animate from like 0 to 10 and then update the style properties directly I'd imagine.
Otherwise I think what you are saying would be amazing. I think this could also open things up a bit more and make this stuff much less painful.
I'm going to do one more example here for you guys.

Here's an example of something else I might like to do:
http://jrdn.io/0N1h2o3z0a13
Something like this would be along the lines of what I'd hope for...

I hope this helps!

Any thoughts here at all?

I've explored the related sources (Animation.coffee), @jordandobson - and there's quite a bit of Layer specific code there.
We'd have to go for quite a bit of a refactoring there to make things work like @koenbok is proposing and we don't have the resources available to do that right now, so it might take a while before we can get this in.

Yeah I'd love to work on this but we need to carve some time out for it and we should do that only after the upcoming Animation refactor release. Luckily that already cleans some stuff up that we would need for this. Let's circle back here in a few weeks.

Awesome guys! I can get by as you can see but something like this would be
helpful and great whenever you can get to it.
For me having some way to do states like @koenbok proposed as well as have
Change events for props that the values are "string" based would be
amazing.
If I come across other examples I'll make sure to share them here. One is
likely a crazy SVG circle animation for Skype I'm still helping with.
On Thu, Aug 18, 2016 at 2:24 AM Koen Bok<EMAIL_ADDRESS>wrote:

Yeah I'd love to work on this but we need to carve some time out for it
and we should do that only after the upcoming Animation refactor release.
Luckily that already cleans some stuff up that we would need for this.
Let's circle back here in a few weeks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/koenbok/Framer/issues/352#issuecomment-240670483, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AACbYnVgq3B6BDoD2kJnY6qXCPcfRngpks5qhCTngaJpZM4ISK11
.

--

Jordan Dobson

I could really use something like this now that I'm doing work with A-frame
and Framer.
On Thu, Aug 18, 2016 at 10:27 AM Jordan Dobson<EMAIL_ADDRESS>wrote:

Awesome guys! I can get by as you can see but something like this would be
helpful and great whenever you can get to it.
For me having some way to do states like @koenbok proposed as well as have
Change events for props that the values are "string" based would be
amazing.
If I come across other examples I'll make sure to share them here. One is
likely a crazy SVG circle animation for Skype I'm still helping with.
On Thu, Aug 18, 2016 at 2:24 AM Koen Bok<EMAIL_ADDRESS>wrote:
Yeah I'd love to work on this but we need to carve some time out for it
and we should do that only after the upcoming Animation refactor release.
Luckily that already cleans some stuff up that we would need for this.
Let's circle back here in a few weeks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/koenbok/Framer/issues/352#issuecomment-240670483, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AACbYnVgq3B6BDoD2kJnY6qXCPcfRngpks5qhCTngaJpZM4ISK11
.
--

Jordan Dobson

--

Jordan Dobson

Bump... would love this for some 3D / VR work I'm doing very soon. It would allow me to move things in 3D space via simple framer sliders.

Okay... after looking at this more... it might already just be damn close to working.
http://share.framerjs.com/7rkbapfqwq7n/
http://jrdn.io/0S3j0f3h1Z03
It prints out every time the y value changes... now I just need a change event that isn't tied to anything I think? Or some sort of progression of the animation.

Doing this gets me pretty much exactly where I would need to be:
http://share.framerjs.com/3c07s0dmrih7/
http://jrdn.io/1p0R2t420142
How hard would it be to open up that function layerProperty as either a class method?
I believe you could just do this inside the layer Class If I understand what's happening correctly.
class exports.Layer extends BaseClass

	@layerProperty = layerProperty

	constructor: (options={}) ->
		# The rest of the class....

Actually this seems like a solid way to approach this perhaps?
I either would need to use the unless  conditional or a try with the way Framer handles reloads, but it seems pretty solid.
I would just love to have a method to set a custom property that would register a change event. How could we simplify this?
http://jrdn.io/1S1u0w271v2G

One last example that reworks the example from this post: https://github.com/koenbok/Framer/issues/352#issuecomment-237722856
EXAMPLE: http://jrdn.io/0z2R0h3L2N28

If you create a subclass that implements the defines, you can go without the try: http://share.framerjs.com/o6wdukp2q5yb/
I went even further and used the 'set' method to set the properties, so you're not limited to animations (try dragging the thing around:)
So basically the only thing we need for this to work, is make some form of the layerProperty function public. I think we need to rethink the arguments for that, and maybe expose it just as @customProperty <name>, <fallback>, <setter> or something

This could be useful for the TextLayer stuff in https://github.com/koenbok/Framer/pull/434 as well

Any thoughts or progress on this @koenbok @eelco @nvh ?

I have been tinkering with this idea using Proxy objects.
https://github.com/tehfailsafe/ObservableLayer
I've been debating the syntax:
Layer.observe(Store, "layerProperties", true)
vs
Store.layerProperties = Layer.getObserver({animated: true})

The other benefit here is that Store can be a module that can be imported into other modules, and any module can modify the store which will update any layer that setup an observer.


Component is very slow to use on Android

Hi, I'm using the component with Formik, and it's very slow: it takes a lot to open the dialog and a lot of time when closing the dialog after clicking on Done. I haven't tested on iPhone yet.

Sorry, it isn't tested with Formik, works fine natively.

@srivastavaanurag79 hey so I think that the issue is only present when a large number of options is being used. I was using 100 options and it was very slow, but with 20 is ok

@srivastavaanurag79 good to close but performance should be investigated.

@srivastavaanurag79 I am still having performance issue on Android, it's basically slow on first open and on first close. Using it with a list of countries.

i am not able to work on this project currently. Sorry

Tested for 10000 better optimized now by using flatlist

optimized version released v1.3.0 based on shopify flash list


Scripting (painless/mustache) response processor

As a user of search pipelines, I want to modify search responses with a painless or mustache script after results are returned from the index and before they are returned to the client.

https://gist.github.com/noCharger/d9873828dcf0c40b976ed0a5785dd6a3

Hello, I was wondering if any progress has been made on this? We have a use case where we would like to do some post processing on the search result. I believe this change would really help us. Thanks


refactor(artifacts): fetch file urls by manifest entry when downloading

Description

Fixes WB-21495

This PR refactors how we download artifacts in core so that we use a newly implemented file fetching query to get the file urls for artifacts. When testing, this reduced the time to download vanilla (non reference) artifacts in half. Extra context on the query is here
We also refactor the code so that we skip fetching this url for reference artifacts as they don't use them. This was initially blocking downloading larger reference artifacts because it took too long to fetch the whole manifest, and bypassing this request should improve download times there as well. When testing, we were able to download a large reference artifact (with 3mil files) that failed before because of query timeout.
This PR won't be merged in until its counterpart that adds the query is

[x] I updated CHANGELOG.md, or it's not applicable

Testing
Manually tested downloading both vanilla and reference artifacts with this change, and tested downloading both with the old & new query based on introspection

@amusipatla-wandb looks like you are using a newer version of the schema! you need to update this file: core/api/graphql/schemas/README.md with the permanent link of the new schema you used


Update crates.io

I'm having problems compiling gfx_examples, while glfw-rs compiles fine locally.
Could it be that the crates.io version is not updated?

Hasn't been updated on crates.io in over a month.

crates.io is updated now. Closing.


(bug) Kamikazi-ing with a frag grenade crash

Bug
Hitting someone with an overcooked frag grenade crashes
Steps to reproduce

Hold frag
let it blow up in your hands
be close enough to someone else to hit them as well

https://user-images.githubusercontent.com/78607129/170878319-5225dc6e-01ab-409a-8747-e07b85b03fdd.mp4
Specifications

Northstar version:
Platform: Steam

We couldn't recreate the issue. Do you have any mods installed?

The bug is from HUDrevamp. There is a newer version of that mod that fixes that issue


Vundle not loading all plugins

On my local mac machine, I'm able to :BundleInstall and run everything fine. However, I'm attempting to bring over my .vim/vimrc over to a RedHat linux server and Vundle isn't choosing to see all the repositories listed in my vimrc. Here's what I'm getting:

Running :PluginInstall/:BundleInstall on my mac with the above vimrc works totally fine. However, I get this when installing on RedHat:

It seems to only be seeing those two Plugins. Any idea why this could be happening?

I think the plugins are already installed.

Can you give me a 101

On Mar 7, 2015, at 2:39 AM, Shougo<EMAIL_ADDRESS>wrote:
I think the plugins are already installed.
—
Reply to this email directly or view it on GitHub.

My bundle folder is only showing those two plugins, and I'm not getting any of the features by the other plugins anyways

Do you have other sourced files which contains vundle configurations?
What happens if you open vim with vim -u NONE -S <Your .vimrc file>?

Thats exactly what it was, there was another file w/ Vundle configs (an old vimrc symlinked to ~/.vimrc). Thanks for the help, I removed that and everything worked. Thanks!


npm script task to run jshint with blob support using build-jshint module

jshint wouldnt accept file path blobs on windows. The build-jshint module can be used instead to configure jshint files to scan.

I might just change this to jshint . which would recursively lint all jshint files. I think maybe your script is a little overkill because of this. But thank you for taking the time to make it.


fix: use 'jq' to get the DockerHub Bearer token

Goal: replace the broken shell parsing
Yes, I know, installing tools at build time is not the best.
Expect jq to be installed in the VM template soon.
Security Mitigation: jq is installed on a temp file,
not added to the path, and checksum controlled for the fixed version 1.6

Signed-off-by: Damien Duportal<EMAIL_ADDRESS>

Continuous delivery IRL
On Wed, May 5, 2021 at 3:51 PM Mark Waite @.***> wrote:

@MarkEWaite approved this pull request.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/jenkinsci/docker/pull/1106#pullrequestreview-652331083,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAW4RIBWWVTTZTLDHZWTTYTTMFEMTANCNFSM44E2SJFA
.