Simplify signing urls for putting and getting S3 objects

Add 2 methods (likely to S3Operations), one for getting signed url for fetching S3 object, second for getting signed url for putting an S3 object.
Work can start once https://github.com/awspring/spring-cloud-aws/pull/314 is merged.

Hi @maciejwalkowiak , I would love to work on this

The pull request 314 has now been merged so can i start working on this?

@amit-github-personal apologies I missed this notification. Go ahead if you still feel like doing so!

Is there any progress?

@whisper-bye no, but if you would like to pick it up go ahead!

@whisper-bye Do you want to work on this still? If not I can work on this.

@SaiUpadhyayula please go ahead. I just made a quick fix.
placed my code here to assist anyone who may need it before a new release is available
    @Override
    public String download(String key) {
        var getObjectRequest = GetObjectRequest.builder()
                .bucket(OssBucketNameEnum.PRIVATE.getValue())
                .key(key)
                .build();

        var getObjectPresignRequest = GetObjectPresignRequest.builder()
                .getObjectRequest(getObjectRequest)
                .signatureDuration(Duration.ofHours(1))
                .build();

        try (var s3Presigner = S3Presigner.builder()
                .region(Region.of(Objects.requireNonNull(s3Properties.getRegion())))
                .credentialsProvider(getCredentialsProvider())
                .endpointOverride(s3Properties.getEndpoint())
                .build()) {
            var url = s3Presigner.presignGetObject(getObjectPresignRequest).url();
            return url.getPath() + "?" + url.getQuery();
        }
    }

    private ProfileCredentialsProvider getCredentialsProvider() {
        InputStream content;
        try {
            content = CharSource.wrap("[default]\n" + "aws_access_key_id=" + accessKey + "\n" + "aws_secret_access_key="
                            + secretKey + "\n")
                    .asByteSource(StandardCharsets.UTF_8)
                    .openStream();
        } catch (IOException e) {
            throw new IllegalStateException(e);
        }

        return ProfileCredentialsProvider.builder()
                .profileFile(ProfileFile.builder()
                        .content(content)
                        .type(ProfileFile.Type.CREDENTIALS)
                        .build())
                .build();
    }

@maciejwalkowiak Please let me know what you think regarding the comments at the bottom of my draft when you get a chance.

@Belair34 I was also working on the ticket, you could have checked with me :)
https://github.com/awspring/spring-cloud-aws/compare/main...SaiUpadhyayula:spring-cloud-aws:gh-318
I was planning to finalize the changes during the weekend, but if you find time before and if you like, you can use the changes I did in my branch for your PR.

@SaiUpadhyayula Sorry about that! In the past I've found that if there's not at least a draft or something within a week for this kind of issue then it ends up being up for grabs again, and I had time to do it right away so I just went for it. Next time I'll ask! Thanks for sharing your changes.


feat: styled project cards

@Shurtu-gal review and help me to fix the typo for events and the arrow image alignment


[WIP] Add regional collector urls

Switch collector url by region, making requests to IOpipe faster for our users.

WIP pending DNS resolution

Coverage increased (+2.4%) to 91.958% when pulling 2c673d9323a3f6caf90dc4bc7a454f3465cf7620 on pselle:collector-regions into 79025cc3bc66d766aee60a4ea0aa7734c5ae1fb0 on iopipe:master.

Coverage decreased (-2.5%) to 87.063% when pulling 2c673d9323a3f6caf90dc4bc7a454f3465cf7620 on pselle:collector-regions into 79025cc3bc66d766aee60a4ea0aa7734c5ae1fb0 on iopipe:master.

Coverage decreased (-2.0%) to 87.537% when pulling 8825ca563838a3d4794729721d1505d51f88f5c9 on pselle:collector-regions into 79025cc3bc66d766aee60a4ea0aa7734c5ae1fb0 on iopipe:master.

Coverage decreased (-2.5%) to 87.063% when pulling 8825ca563838a3d4794729721d1505d51f88f5c9 on pselle:collector-regions into 79025cc3bc66d766aee60a4ea0aa7734c5ae1fb0 on iopipe:master.

Coverage decreased (-2.5%) to 87.063% when pulling 8825ca563838a3d4794729721d1505d51f88f5c9 on pselle:collector-regions into 79025cc3bc66d766aee60a4ea0aa7734c5ae1fb0 on iopipe:master.

Coverage increased (+1.5%) to 91.098% when pulling 55f43d66711fabacce9877c680c03966e045927e on pselle:collector-regions into 7d09b31ac38f7b913c4057f197a63c74e2abcb12 on iopipe:master.

Coverage increased (+1.6%) to 91.124% when pulling d2b51ae43bd156202c6a5bfceb9ee8ce6926475d on pselle:collector-regions into 7d09b31ac38f7b913c4057f197a63c74e2abcb12 on iopipe:master.

Coverage increased (+1.6%) to 91.124% when pulling d2b51ae43bd156202c6a5bfceb9ee8ce6926475d on pselle:collector-regions into 7d09b31ac38f7b913c4057f197a63c74e2abcb12 on iopipe:master.

Coverage increased (+1.6%) to 91.354% when pulling 04b25cef1d0576fb70f689b8f752c663734d0e77 on pselle:collector-regions into d6c874821d8578caf3a2574a6f4160a911abaef8 on iopipe:master.

Coverage increased (+1.6%) to 91.354% when pulling 668767203ca5883b6d7c41fa589708e7a7df24dd on pselle:collector-regions into d6c874821d8578caf3a2574a6f4160a911abaef8 on iopipe:master.


build(Dockerfile): pin platform to linux/amd64, refactor

Description
Since the Dockerfile only supports building for linux/amd64, let's pin it for now before we introduce multi-arch builds. Unused (seemingly) dependencies and unnecessary RUN layers have been removed/compressed.
Linked issue
Related to #4687.

Benefits
Docker builds should be faster, unneeded stuff doesn't clutter the Dockerfile.
Checklist

[x] I've read CONTRIBUTING.md
[x] I've used the standard signed-off commit format (or will squash just before merging)
[ ] All applicable CI checks pass (or I promised to make them pass later)
[ ] (optional) I've written unit tests for the code changes
[ ] I replied to all comments after code review, marking all implemented changes with thumbs up

I was able to set up a network and run some CLI commands.


Extension issuejson  { 	"messages": [], 	"activationTimes": { 		"codeLoadingTime": 3883, 		"activateCallTime": 11, 		"activateResolvedTime": 94, 		"activationReason": { 			"startup": false, 			"extensionId": { 				"value": "zobo.php-intellisense", 				"_lower": "zobo.php-intellisense" 			}, 			"activationEvent": "onLanguage:php" 		} 	}, 	"runtimeErrors": [], 	"runningLocation": { 		"affinity": 0, 		"kind": 1 	} }

Issue Type: Bug
Extension Name: php-intellisense
Extension Version: 1.0.11
OS Version: Windows_NT x64 10.0.19044
VS Code version: 1.70.2

:warning: We have written the needed data into your clipboard. Please paste! :warning:

There is no provided data. Please state the PHP version and output of Output / PHP Language Server.


SSL_ERROR_SYSCALL  raised when using proxy.

Hi! I am facing a SSL_ERROR_SYSCALL  when i was using proxy that maps   http_proxy and https_proxy to the same port, then the "curl" command to a https prefixed URL would raise this error:
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to <IP_ADDRESS>:xxxx

meanwhile I could visit URL with http protocol using curl.
So i'm wondering:

If there's a way to solve this conflict, to map both protocol to the same port.
I found that SSL_ERROR_SYSCALL is the default output when facing unkown situation, I would appreciate that if anyone could explain to me in detail what is going on in the above situation.

Any discussion could be great help! THANK U VERY MUCH!!!


"links" force causes errors if link data is transformed from Formula

If the links data used in links force is from an upstream Formula transform, the following line (L89) will throw error. The reason being that the value of the link source (in this case the Formula transform) was null, which later was consumed by update.js inside dataflow (L68), and eventually throw error from Changeset (L93) because the tuples are null and as a result the slice function is not available.
Attached is a simple spec that will reproduce the issue. There is a workaround by appending a Collect transform after the Formula, but would like to call it out here for clean fix.
    {
      "$schema": "https://vega.github.io/schema/vega/v3.0.json",
      "width": 700,
      "height": 500,
      "padding": 0,
      "autosize": "none",
      "signals": [
        {
          "name": "cx",
          "update": "width / 2"
        },
        {
          "name": "cy",
          "update": "height / 2"
        }
      ],
      "data": [
        {
          "name": "node-data",
          "values": [
            {
              "name": "A"
            },
            {
              "name": "B"
            },
            {
              "name": "C"
            },
            {
              "name": "D"
            },
            {
              "name": "E"
            },
            {
              "name": "F"
            },
            {
              "name": "G"
            }
          ]
        },
        {
          "name": "link-data",
          "values": [
            {
              "from": 1,
              "to": 0
            },
            {
              "from": 2,
              "to": 0
            },
            {
              "from": 3,
              "to": 0
            },
            {
              "from": 4,
              "to": 1
            },
            {
              "from": 2,
              "to": 3
            },
            {
              "from": 5,
              "to": 2
            },
            {
              "from": 6,
              "to": 4
            }
          ],
          "transform": [{
            "type": "formula",
            "as": "source",
            "expr": "datum.from"
          }, {
            "type": "formula",
            "as": "target",
            "expr": "datum.to"
          }]
        }
      ],
      "marks": [
        {
          "name": "nodes",
          "type": "symbol",
          "zindex": 1,
          "from": {
            "data": "node-data"
          },
          "encode": {
            "enter": {
              "fill": {
                "value": "blue"
              },
              "stroke": {
                "value": "white"
              }
            },
            "update": {
              "size": {
                "value": 400
              },
              "cursor": {
                "value": "pointer"
              }
            }
          },
          "transform": [
            {
              "type": "force",
              "iterations": 300,
              "forces": [
                {
                  "force": "center",
                  "x": {
                    "signal": "cx"
                  },
                  "y": {
                    "signal": "cy"
                  }
                },
                {
                  "force": "collide",
                  "radius": 30
                },
                {
                  "force": "link",
                  "links": "link-data"
                }
              ]
            }
          ]
        },
        {
          "type": "path",
          "from": {
            "data": "link-data"
          },
          "interactive": false,
          "encode": {
            "update": {
              "stroke": {
                "value": "#ccc"
              },
              "strokeWidth": {
                "value": 0.5
              }
            }
          },
          "transform": [
            {
              "type": "linkpath",
              "shape": "line",
              "sourceX": "datum.source.x",
              "sourceY": "datum.source.y",
              "targetX": "datum.target.x",
              "targetY": "datum.target.y"
            }
          ]
        }
      ]
    }

Thanks! I updated vega-dataflow to use the pulse.source array rather than the operator value when performing a pulse operation. This fixes the error observed here, and will be included in the next vega-dataflow and vega releases.


Feature/ai builder connector

Change
New connector for the AIBuilder platform
How to Test
There are unitary test created for it.
To test the actual functionality you need to add a valid API_TOKEN (from a user of the platform) to the 'override.env' file and use the 'aibuilder' profile when launching docker compose. Then you will see new ml_models added to the platform (you can search selecting the 'aibuilder' platform).
Checklist
The only thing I didn't do is to add an explanation on the README (in general I see that there are no such explanations for the use of other connectors, but maybe the TOKEN thing should be commented). I guess we can discuss this on the PR and decide if it needs some explanation.

I made all the modifications, also added an init method to be able of passing a non-empty TOKEN for the tests.


privacy policy header updated

Closes
Closes #1610

Description

Screenshots

Note to reviewers

Checklist:

[x] I have linked the PR to the correct issue.
[x] I have read the Contribution Guidelines
[x] I have built and tested the changes, and they do not break or show any errors.

@Divesh2003 thank you so much bro😁


Target both netstandard1.0 and net45 to remove unneeded dependencies

When it is installed on a project targeting the full .Net framework, the Opentracing NuGet package because of its dependency on NETStandard.Library pulls a lot of dependencies that are not needed. It has no impact on the resulting executable however it requires downloading a lot of packages for nothing and when used with the old csproj format it clutters the packages.config with all the .net core packages. For example installing Opentracing in an empty project produces the following packages.config file:
<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Microsoft.NETCore.Platforms" version="1.1.0" targetFramework="net461" />
  <package id="Microsoft.Win32.Primitives" version="4.3.0" targetFramework="net461" />
  <package id="NETStandard.Library" version="1.6.1" targetFramework="net461" />
  <package id="OpenTracing" version="0.10.0" targetFramework="net461" />
  <package id="System.AppContext" version="4.3.0" targetFramework="net461" />
  <package id="System.Collections" version="4.3.0" targetFramework="net461" />
  <package id="System.Collections.Concurrent" version="4.3.0" targetFramework="net461" />
  <package id="System.Console" version="4.3.0" targetFramework="net461" />
  <package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="net461" />
  <package id="System.Diagnostics.DiagnosticSource" version="4.3.0" targetFramework="net461" />
  <package id="System.Diagnostics.Tools" version="4.3.0" targetFramework="net461" />
  <package id="System.Diagnostics.Tracing" version="4.3.0" targetFramework="net461" />
  <package id="System.Globalization" version="4.3.0" targetFramework="net461" />
  <package id="System.Globalization.Calendars" version="4.3.0" targetFramework="net461" />
  <package id="System.IO" version="4.3.0" targetFramework="net461" />
  <package id="System.IO.Compression" version="4.3.0" targetFramework="net461" />
  <package id="System.IO.Compression.ZipFile" version="4.3.0" targetFramework="net461" />
  <package id="System.IO.FileSystem" version="4.3.0" targetFramework="net461" />
  <package id="System.IO.FileSystem.Primitives" version="4.3.0" targetFramework="net461" />
  <package id="System.Linq" version="4.3.0" targetFramework="net461" />
  <package id="System.Linq.Expressions" version="4.3.0" targetFramework="net461" />
  <package id="System.Net.Http" version="4.3.0" targetFramework="net461" />
  <package id="System.Net.Primitives" version="4.3.0" targetFramework="net461" />
  <package id="System.Net.Sockets" version="4.3.0" targetFramework="net461" />
  <package id="System.ObjectModel" version="4.3.0" targetFramework="net461" />
  <package id="System.Reflection" version="4.3.0" targetFramework="net461" />
  <package id="System.Reflection.Extensions" version="4.3.0" targetFramework="net461" />
  <package id="System.Reflection.Primitives" version="4.3.0" targetFramework="net461" />
  <package id="System.Resources.ResourceManager" version="4.3.0" targetFramework="net461" />
  <package id="System.Runtime" version="4.3.0" targetFramework="net461" />
  <package id="System.Runtime.Extensions" version="4.3.0" targetFramework="net461" />
  <package id="System.Runtime.Handles" version="4.3.0" targetFramework="net461" />
  <package id="System.Runtime.InteropServices" version="4.3.0" targetFramework="net461" />
  <package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net461" />
  <package id="System.Runtime.Numerics" version="4.3.0" targetFramework="net461" />
  <package id="System.Security.Cryptography.Algorithms" version="4.3.0" targetFramework="net461" />
  <package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net461" />
  <package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net461" />
  <package id="System.Security.Cryptography.X509Certificates" version="4.3.0" targetFramework="net461" />
  <package id="System.Text.Encoding" version="4.3.0" targetFramework="net461" />
  <package id="System.Text.Encoding.Extensions" version="4.3.0" targetFramework="net461" />
  <package id="System.Text.RegularExpressions" version="4.3.0" targetFramework="net461" />
  <package id="System.Threading" version="4.3.0" targetFramework="net461" />
  <package id="System.Threading.Tasks" version="4.3.0" targetFramework="net461" />
  <package id="System.Threading.Timer" version="4.3.0" targetFramework="net461" />
  <package id="System.Xml.ReaderWriter" version="4.3.0" targetFramework="net461" />
  <package id="System.Xml.XDocument" version="4.3.0" targetFramework="net461" />
</packages>

To avoid this I suggest to target both netstandard1.0 and net45, that way when used with the full framework the net45 dll will be used and will not pull all these dependencies. The only downside I see with this approach is that AFAIK it prevents building the package on non Windows platforms. This will however have no consequences on non Windows users of the package, since the package will still be compatible with netstandard1.0.

Hi guys,
My change broke the CI since it's running on Linux, so I have added additional conditions in the build to make it build and run on Linux with a flag.

Which version of the .NET framework are you using? Ideally, I'd like to change the TargetFramework to netstandard20 anyway since that's what MS recommends (at least if I understand correctly) and it also no longer references that package. It only supports .NET 4.6.1+ though.
If there's people who are still targeting .NET 4.5 we can of course target netstandard2.0;net45 (or net452 which is the only supported version)

Work is very very slow to move so we're still on 4.5. I had to move parts of the code to 4.6 to support my local build of this, but it'd be nice if we could support 4.5 for ~1 more year or so, if possible!

I implemented this with the mentioned msbuild changes in #56 since there were no further commits here. hope that's ok for you @bmermet ?! I can also undo that in my PR if you have time to fix this PR in the next few days.

All good for me, I'll close this PR then.


Write an analyzer to protect against accidentally calling Transform or TransformType when TransformRecursively or TransformTypeRecursively was intended

https://github.com/InfectedLibraries/Biohazrd/issues/17 alleviates most cases where this mistake can be made, but neither of these methods should generally be called anyway.
Basically the rules are:

Transform must only be called by TransformRecursively or an override of Transform
TransformRecursively must only be called by Transform(TranslatedLibrary) or a Transform*Children method

Alternatively we might consider renaming Transform to make it less attractive.

Closing this because you won't encounter this issue when implementing custom types after #50 was completed. For the built-in types, we'll rely on #17.


[Devportal] Spelling mistake and words are repeating under API Credentials in APIs overview page

Under API Credentials, there is a spelling mistake and words are repeating.

In the latest pack, the UI for API Credentials is different.


Update manifests 09/08

[x] The commits are squashed in a cohesive manner and have meaningful messages.

/refresh

Merging since aicoe-build check is known broken atm.


Difference between "text encoder training" and "Manual/External Captions"

Please explain to beginner what is the difference between "text encoder training" and "Manual/External Captions"?
Do I understand correctly that these are two approaches to the same thing? based on this piece of code:
if Text_Encoder_Training_Steps==0 or External_Captions:
   Enable_text_encoder_training= False

@TheLastBen, сould you explain? At least a few sentences.

Finetuning the text_encoder helps the model converge faster towards the trained subject, but you will be also make the model overfit faster, when you use the captions, you will be training only the unet to converge towards the trained subject when it receives those specific embeddings (captions) from the text_encoder through the prompt, you will get less overfitting but less smart model when it comes to the trained subject unless you're enhancing an existing instance.


[Event Hubs] Update EventHubProducer constructor to contain EventHubClient params

Summary
This issue is to track exposing EventHubProducer as a top-level client. This involves making the constructor public, and update it to accept the same connection-related settings as EventHubClient has.
Background
The EventHubProducer client constructor is currently private and the client is only instantiated by calling createProducer on an EventHubClient. The EventHubClient currently takes in the parameters needed to create a connection to the service (e.g. event hubs connection string, credentials, etc).
We're eliminating the need to create an EventHubClient 1st, then producer/consumer clients from that so the EventHubProducer needs the same parameters to know how to configure the connection.
End result
User should be able to instantiate an EventHubProducer directly with the required event hubs info, credentials, and producer-specific properties needed.
Example:
const producer = new EventHubProducer(
  connectionString,
  partitionId,
  options
);

Completed as part of https://github.com/Azure/azure-sdk-for-js/pull/5746


Use GCC's -MM/-MG to find missing dependencies

So this is probably not ready to be merged, but I wanted to discuss a few things :-)

I'm not sure what we could clean up - I'm planning to have a look at the places that use the current lists of generated files and see whether we can remove some of the explicit calls to need in favor of this approach. Ideas are welcome!

It seems that applying the same trick to .hs files might be a bit more complicated - we can try to tell GCC to treat it just as a .c or .h file and stop at pre-processing, but things like MIN_VERSION_* still cause it to die with an error (since they're not defined).

Does GHC actually have a case where a generated file #includes another generated file? (if not we could just go with a bit more brute-force approach of grepping the source?).

Finally, I'm wondering if we should create a cache/oracle for this information - it's pretty easy to have the same file being analyzed multiple times just by the virtue of being a dependency for many other .c files.

I don't see any way to avoid running this once per .c file, so an oracle probably won't help - different header files might include different things depending on their originating .c file.
Any idea of the performance of this pass? Does it mean we now need to run each C file through this pass, then subsequently through normal compilation?

Does GHC actually have a case where a generated file #includes another generated file? (if not we could just go with a bit more brute-force approach of grepping the source?).

I wouldn't be at all surprised if we #included things that transitively include ghcautoconf.h or DerivedConstants.h, which are generated.

@michalt Thanks for the working on this!
Here are some responses to your questions:

I'm not sure what we could clean up [...]

I would suggest not to worry about this for now. We can separate these two issues: once we have a reliable way to detect & need generated files, we'll see what we can simplify in the build system.

It seems that applying the same trick to .hs files might be a bit more complicated [...]

Yes, I suspected this. But again, let's merge the first step which only deals with C files. Then we can think about generalising the approach to work with Haskell files too (e.g. we could set missing defines via -D).
The other two questions seem to be handled by @ndmitchell and @simonmar.
There are a few comments by @ndmitchell and myself -- please have a look and I think we can merge.

Thanks for all the comments! :-)
I'll try to fix everything this week (I've been slow to respond due to
traveling).
On Fri, Aug 5, 2016, 20:30 Andrey Mokhov<EMAIL_ADDRESS>wrote:

@michalt https://github.com/michalt Thanks for the working on this!
Here are some responses to your questions:
I'm not sure what we could clean up [...]
I would suggest not to worry about this for now. We can separate these two
issues: once we have a reliable way to detect & need generated files,
we'll see what we can simplify in the build system.
It seems that applying the same trick to .hs files might be a bit more
complicated [...]
Yes, I suspected this. But again, let's merge the first step which only
deals with C files. Then we can think about generalising the approach to
work with Haskell files too (e.g. we could set missing defines via -D).
The other two questions seem to be handled by @ndmitchell
https://github.com/ndmitchell and @simonmar
https://github.com/simonmar.
There are a few comments by @ndmitchell https://github.com/ndmitchell
and myself -- please have a look and I think we can merge.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/snowleopard/hadrian/pull/279#issuecomment-237927450,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHTn2PUwQ7q3L3chbHgmhPM64r9qZm1ks5qc4FEgaJpZM4JajY4
.

I meant the upcoming week :-)
On Sun, Aug 7, 2016, 17:33 Michal Terepeta<EMAIL_ADDRESS>wrote:

Thanks for all the comments! :-)
I'll try to fix everything this week (I've been slow to respond due to
traveling).
On Fri, Aug 5, 2016, 20:30 Andrey Mokhov<EMAIL_ADDRESS>wrote:

@michalt https://github.com/michalt Thanks for the working on this!
Here are some responses to your questions:
I'm not sure what we could clean up [...]
I would suggest not to worry about this for now. We can separate these
two issues: once we have a reliable way to detect & need generated
files, we'll see what we can simplify in the build system.
It seems that applying the same trick to .hs files might be a bit more
complicated [...]
Yes, I suspected this. But again, let's merge the first step which only
deals with C files. Then we can think about generalising the approach to
work with Haskell files too (e.g. we could set missing defines via -D).
The other two questions seem to be handled by @ndmitchell
https://github.com/ndmitchell and @simonmar
https://github.com/simonmar.
There are a few comments by @ndmitchell https://github.com/ndmitchell
and myself -- please have a look and I think we can merge.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/snowleopard/hadrian/pull/279#issuecomment-237927450,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHTn2PUwQ7q3L3chbHgmhPM64r9qZm1ks5qc4FEgaJpZM4JajY4
.

@michalt Thanks for fixing the comments! Is this ready to be merged?

@snowleopard Yes, I think it's ok to merge (AppVeyor failed, but it seems that it's unrelated). After merging, what do you think our next step should be?

@michalt Thanks, merged!

After merging, what do you think our next step should be?

I think we should now try to make the best use of this feature and avoid explicit needs on some generated headers. I guess you are the best person to try to tackle this -- would you like to try?

@snowleopard Sure! I was just wondering if you already have something in mind. In any case, I'll probably just try a few things over the weekend. :-)

@michalt Awesome! :-)
Get in touch if you'd like to discuss anything. I can do some experiments/coding too. Perhaps we could set up a separate issue, so we have everything in one place and others can comment.

@snowleopard Opened #285


SecurityMonkey Docker Installation Errors

I am installing a local security monkey setup using the docker compose in the repository.
After executing  monkey add_account_aws --id $account --name $name -r SecurityMonkey , the following error are encountered:
No command 'monkey' found, did you mean:  Command 'donkey' from package 'donkey' (universe) monkey: command not found
Have i missed out some steps or I need to do something else.
Thanks.

You need to ensure that you are in the Python virtual environment.

Unfortunately, cd /usr/local/src/security_monkey does not  exist on my system.
I am using Ubuntu 14.04.

@SyCode7 : I just merged in #937 , which should hopefully address the Docker issues.
Can you download the latest develop branch and try again?


How to get to actual view engine type when Glimpse installed?

Hi,
We do have a plugin that enlists all view locations registered within the project (code fragment here).
We are asking ViewEngines.Engines collection to get back list of VirtualPathProviderViewEngine. We need to get into engine.ViewLocationFormats and engine.PartialViewLocationFormats fields to enlist registered view locations.
As with Glimpse installed, we get back only proxies from ViewEngines.Engines and cast yields no results of course.
What would be the best approach here?
Thx guys!

Hi @valdisiljuconoks!
Unfortunately, once Glimpse has wrapped the ViewEngine, there's no way to get back anything but an IViewEngine.
You could disable that feature of Glimpse in your web.config with code something like this:
<glimpse defaultRuntimePolicy="On" endpointBaseUri="~/Glimpse.axd">
    <inspectors>
        <ignoredTypes>
            <add type="Glimpse.Mvc.Inspector.ViewEngineInspector, Glimpse.Mvc3" />
        </ignoredTypes>
    </inspectors>
</glimpse>

This might not be the exact right code snippet for your project, but if you go to /Glimpse.axd, click on More Details, and uncheck the View Engine Inspector, the exact config code you need will be generated and shown to you.


Allow Application factories to be extended like fflib-apex-common

It's currently impossible to extend the Application class factories to incorporate your own newInstance implementations.  For example, Service.newInstanceByRecordType or Service.newInstanceByMyCustomFieldValue.
fflib-apex-common was updated to allow fflib_Application to be extended in December 2019.  Closes #28
The Application factories can now be extended so each value stream in an org can have its own Application class with custom factories.
Ideally, I'd like to implement a core way to do newInstanceByRecordType using force-di, but this will suffice for now since it mirrors how fflib_Application works.
If there are any changes required, please let me know.
Change
Application

Made virtual class

Application.SelectorFactory

Made virtual class
Update constructor to protected
Update setMock to protected
Update all public and protected methods virtual

Application.UnitOfWorkFactory

Made virtual class
Update constructor to protected
Update setMock to protected
Update all public and protected methods virtual

Application.DomainFactory

Made virtual class
Update constructor to protected
Update setMock to protected
Update all public and protected methods virtual

Application.ServiceFactory

Made virtual class
Update constructor to protected
Update setMock to protected
Update all public and protected methods virtual

This change is

Hi @chazwatkins.  If the intent is to virtualize Application's inner *Factory classes, then should their public methods be marked with the virtual modifier too, otherwise, one cannot override the existing functionality, if desired.

@stohn777 - Good call.  I'll make the public methods virtual as well.

Hi @chazwatkins. If the intent is to virtualize Application's inner *Factory classes, then should their public methods be marked with the virtual modifier too, otherwise, one cannot override the existing functionality, if desired.

Hey @stohn777, I updated the public and protected methods to be virtual for extension.

@chazwatkins I have been thinking about this PR for the past few weeks. I have a concern about the value of making Application and the subclasses virtual.  My concern is that to make it virtual means that another class would extend (please forgive my 1st grade thought here - no offense is intended - just trying to draw picture).  But in extending to another "application" class, wouldn't you be saying "all development in this org now must use this new FooBarApplication class everywhere instead of the established Application class?  Part of the power of the FFLIB Apex Commons framework (and subsequently AT4DX) is that it centralizes every aspect of Service, Selector, Domain, and UOW object creation to an agreed upon set of four distinct application factories (not one).  Every developer in the org knows to use the Application.Service, Application.Selector, Application.Domain, and Application.UnitOfWork factories.  It is that "agreed upon convention" that increases the value of the patterns, and increases the adoption.
I guess my question becomes "What are some use cases that you believe are worth the disruption of changing the established pattern of using Application class?"


Writing less code

Instead of writing this much code which are all same, You can make an array and store the data and use map method.
What you think?

Or You can make a component.

Yes Yes... We initially were going to do the same.. But our members didn't knew much about React workflow they learnt on the go and did it in the last moments..
We actually thought of using any API for that but couldn't find one... If you do find one we can use it...
For now.. I am assigning it to you.. and you can work on it :)

I am not going to use any API but I'll make two components and make the codes to look clean and easy to read for readers.

Hey @AliReza1083, I agree what you have mentioned.
Thanks for the support 💙


UseBindPortIP on swarm mode ? (vs publishing on host port)

Asked here
Do you want to request a feature or report a bug?
Bug
What did you do?
Tried to test useBindortIP to avoid having the container publishing port in host mode but rather in ingress mode.

Question 1 : is the variable usebindportip or useBindortIP ? Cf https://github.com/containous/traefik/blob/master/docs/configuration/backends/docker.md#L65 vs https://github.com/containous/traefik/search?utf8=✓&q=usebindportip
Question 2 : The variable is not mentionned in the docker swarm part of the docker backend. Does it mean it's not available in the swarm mode ?
Question 3 : Using useBindPortIP (lower or camel case) with ingress mode will provide the IP of the traefik interal IP and not the external one.

Steps to reproduce:
Output of my nginx log server:
With mode:host, without useBindPortIP, you see the header set to my LAN IP (<IP_ADDRESS>)
# From my LAN
web_web.1.dxe3rxefxdin@picocluster4    | <IP_ADDRESS> - - [28/Sep/2018:14:28:01 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:62.0) Gecko/20100101 Firefox/62.0" "<IP_ADDRESS>"
# From outside
web_web.1.dxe3rxefxdin@picocluster4    | <IP_ADDRESS> - - [28/Sep/2018:14:31:28 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:62.0) Gecko/20100101 Firefox/62.0" "151.127.XXX.XXX"

Same with mode:ingress and useBindPortIP=true:
# From LAN
web_web.1.dxe3rxefxdin@picocluster4    | <IP_ADDRESS> - - [28/Sep/2018:14:40:01 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:62.0) Gecko/20100101 Firefox/62.0" "<IP_ADDRESS>"
# From external access
web_web.1.dxe3rxefxdin@picocluster4    | <IP_ADDRESS> - - [28/Sep/2018:14:40:25 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:62.0) Gecko/20100101 Firefox/62.0" "<IP_ADDRESS>"

10.0.8.x = network where my nginx container is deployed
<IP_ADDRESS> is the IP of the traefik container.
traefik/docker-compose.yml
cat compose/docker-compose.yml
version: '3.2'
services:
  traefik:
    image: traefik:1.6.6
    deploy:
      placement:
        constraints:
          - node.role == manager
    ports:
      - target: 80
        published: 80
        protocol: tcp
        mode: ingress (or host depending on test)
      - target: 443
        published: 443
        protocol: tcp
        mode: ingress (or host depending on test)
    volumes:
      - type: bind
        source: /var/run/docker.sock
        target: /var/run/docker.sock
      - type: bind
        source: /home/me/traefik/conf/traefik.toml
        target: /traefik.toml
    networks:
      - traefik-net
networks:
  traefik-net:
    driver: overlay
    attachable: true

conf/traefik.toml
defaultEntryPoints = ["http", "https"]

logLevel = "ERROR"

# Disable certs validation as traefik will use IP to connect containres instead of hostnames, which will never validate.
InsecureSkipVerify = true

[entryPoints]
  [entryPoints.http]
  address = ":80"
  compress = true
  [entryPoints.https]
  address = ":443"

[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "traefik"
watch = true
exposedByDefault = true
swarmMode = true
useBindPortIP = true (or not mentionned depending on tests)

and nginx/docker-compose.yml
version: '3.2'
services:
  web:
    image: nginx:stable-alpine
    deploy:
      labels:
        traefik.docker.network: "web"
        traefik.frontend.rule: "Host:picocluster1.xxx.lan,picocluster1.home.xxx.fr"
        traefik.frontend.entryPoints: "http,https"
        traefik.port: "80"
        traefik.protocol: "http"
        traefik.frontend.passHostHeader: "true"
    networks:
      - web
networks:
  web:
    driver: overlay

What did you expect to see?
I expected to see my computer IP from LAN or my public IP from outside.
What did you see instead?
The IP of traefik container in the traefik network.

Thank you for letting me know, I'll look into it as soon as possible

You're welcome, let me know if you need more details or more tests.


vendor: Rebase to Kubernetes 1.7.

It looked very complex to indivdually fetch and update
packages using govendor to make the vendor directory compliant
with k8s 1.7.  The main complications are around how govendor
does a fetch from master branch of some dependent repositories.
Also, k8s apimachinary, client-go, apis etc look to have changes
where the versionining is quite poor. For e.g., it is hard to
know which version of apimachinary works with which version of
client-go repository.
It looks much easier to just copy the vendor directory from
a particular released kubernetes version.  In addition to
kubernetes, we have very less external dependencies.
This commit is a squash of the following steps:

Cleanup current vendor directory with a 'rm -rf'.
Copy k8s.io/vendor contents recursively to
our vendor directory.  This does get some code
which we don't need, but hopefully that is not a big deal
govendor init
govendor fetch github.com/openshift/origin/pkg/util/netutils
govendor fetch github.com/urfave/cli

This is enough to compile and basic pod creation and service creation
work fine.
Signed-off-by: Gurucharan Shetty<EMAIL_ADDRESS>

@rajatchopra
This is just a FYI to see if you have any comments.

Copy k8s.io/vendor contents recursively to
our vendor directory. This does get some code
which we don't need, but hopefully that is not a big deal

A better way is download kubernetes release-1.7 branch and run godep restore inside kubernetes code. Then govendor add +external should work. After this, some vendors may still not exist, we could download and add it manually by govendor add +external pkgname or govendor fetch.

@feiskyer
Thanks! That was a good tip. It does reduce the code quite a bit. Though, one particular thing did not work, so I had to manually copy things.  The steps I did was:

Cleanup current vendor directory with a 'rm -rf'.
2. From a downloaded source bundle of k8s 1.7.3, run
'godep restore'
3. From ovn-kubernetes/go-controller, run 'govendor init'
4. govendor add +external
5. The 'godep restore' does not restore the contents
in k8s 1.7's staging directory. So those contents
were manually copied to vendor directory of ovn-kubernetes repo
6. govendor fetch github.com/openshift/origin/pkg/util/netutils
7. govendor fetch github.com/urfave/cli

I will close this and create a new pull request.

We also need to do a 'govendor restore' in ovn-kubernetes/go-controller/ directory as the very first step.
Let's try and lock this process down. We may want to switch to 'dep' as the tool to use at some point if we find govendor is deficient in itself. e.g. govendor update does not seem to work as expected.

'govendor restore' does not seem to exist (atleast in the version I am using). What is the purpose of the command?

My bad. I assumed something like this exists as it does with 'godep restore'.
The purpose however is to have the dependencies restored in $GOPATH. And then we can update (git pull/rebase) the individual packages that we want to update. This becomes necessary if our vendor/ directory carries fixes/patches that are not upstream'ed yet. We don't patch anything right now of course.
Since govendor does not have this feature, we might want to switch at some point.


Add support for the sa-east-1 AWS region

I have some deployments on sa-east-1 and I'd like to be able to ship my logs to Logz.io :)

Hi @kimjoaoun you can now use our extension in sa-east-1 (available from latest version v0.2.0) 🙂


Add ability to pass psql options to chef-server-ctl psql

@marcparadise @andy-dufour Can you get this added to the byop-phase-1 PR please?
Also, it depends on https://github.com/chef/chef-server/pull/423 getting added.

:+1: merge when ready

Note that the parent branch has been rebased due to commit squashing.

byop-phase-1 branch has already been merged so i'm going to open a new PR against master


Gratitude <3

@dezinezync We're glad to inform that we've released an official node sdk package<EMAIL_ADDRESS>The sdk will have all the latest features that we release.
razorNode has served well for few of our customers. We really appreciate your contributions & thanks for your amazing work 💯
Feel free to close the issue

Congratulations. Will update Docs here to mention that. Shall follow up on future stuff on that repo as PRs.
Cheers.


Prepare release 11.0.0

Description
Prepare a new release in order to release a new version of cucumber-ruby
Type of change
Update of dependencies

Note: I've fixed a few rubocop offenses because the upgrade of rubocop issued one. I've take the shot for fixing a few others.


README does not explain what problem crate solves (how crate compares to std)

README.md contains minimal comparisons to similar crates (failure, thiserror), but does not contrast this crate's capabilities with what is possible with std. Some examples of awkward code one would have to write using just std, together with the replacements made possible by this crate would go a long way to doing that. Without this it is not clear what problem this crate is trying to solve.

I reread and I think this is fine as written. The readme describes the highlights of the crate, and if someone does not need those things then they can do without the crate.


Group scripts to deploy system contracts on external chains into a single one.

@andresaiello based on your notes:

Note: If the destination chain will use lock instead of burn for token managment, must be set up as EthNetwork. To do that go to protocol-contracts/lib/contracts.helpers.ts and add it to isEthNetworkName method
Run npx hardhat scripts/deployments/core/deterministic-deploy-zeta-token.ts --network YOUR_NETWORK
Run npx hardhat scripts/deployments/core/deterministic-deploy-zeta-connector.ts --network YOUR_NETWORK
Run npx hardhat scripts/deployments/core/deterministic-deploy-erc20-custody.ts --network YOUR_NETWORK
UPDATE: after the code freeze the three scripts will be compacted into only one.

Complete


cognito-idp client supports filter expressions unsupported by real boto client

I wanted to use list_users function from cognito-idp client API in my code in the following way:
boto3.client('cognito-idp', aws_access_key_id='redacted', aws_secret_access_key='redacted').list_users(UserPoolId=os.getenv('COGNITO_USER_POOL_ID'), Filter='preferred_username=nickname0')

So I started by writing unit test for the function with moto mocks applied. Fixtures were used in the test:
@pytest.fixture(scope='function')
def cognito_idp(aws_credentials):
    with mock_cognitoidp():
        yield boto3.client('cognito-idp', region_name='us-east-1')

@pytest.fixture(scope='function')
def cognito_user_pool(cognito_idp):
    user_pool = cognito_idp.create_user_pool(
        PoolName='test-user-pool',
    )
    user_pool_id = user_pool['UserPool']['Id']

    with mock.patch.dict(os.environ, {'COGNITO_USER_POOL_ID': user_pool_id}):
        yield user_pool

    cognito_idp.delete_user_pool(
        UserPoolId=user_pool_id
    )

Then, I created test with the above fixtures injected for the function that calls the line mentioned in the first code block. Line executes correctly and tests return correct results.
After deploying my code to AWS, the line however returns an error:
[ERROR] InvalidParameterException: An error occurred (InvalidParameterException) when calling the ListUsers operation: Error while parsing filter.

After looking it up in AWS docs I learn that correct filter expression must have double quotas around interpolated value. For example:
{
    "AttributesToGet": [
        "given_name", "phone_number", "email"
    ],
    "Filter": "family_name = \"Reddy\"",
    "Limit": 10,
    "UserPoolId": "us-east-1_samplepool"
}

(notice \" around Reddy)
After changing my code to:
boto3.client('cognito-idp', aws_access_key_id='redacted', aws_secret_access_key='redacted').list_users(UserPoolId=os.getenv('COGNITO_USER_POOL_ID'), Filter='preferred_username= "nickname0"')

both tests with moto mocks and code deployed to AWS execute properly.
In order to fully and properly reflect behavior of AWS API, moto's cognito-idp client should throw the same error while parsing filter expression without double quotas around value.
Versions:
moto~=2.0.5
boto3~=1.17.49
botocore~=1.20.49

In order to fully and properly reflect behavior of AWS API, moto's cognito-idp client should throw the same error while parsing filter expression without double quotas around value.

Yes, it should - marking it as an enhancement to implement some validation here


Pattern-based Generation and Adaptation of Quantum Workflows

Problem Statement:
Currently, the user has to model quantum workflows manually, which is very complex and error-prone, especially when including advanced techniques, such as warm-starting or circuit cutting.
Expected Behavior:
An approach is required to automatically generate quantum workflows based on a set of selected patterns.
Furthermore, it should also be supported to adapt quantum workflows automatically when attaching patterns to activities.
Tasks:

[ ] #95
[ ] Restrict the pattern selection based on defined rules (e.g., currently, exactly one algorithmic pattern must be selected)
[ ] Retrieve the concrete solution defined for the selected algorithmic pattern:

[ ] If the solution is a workflow: Open the workflow in the modeler
[ ] If the solution is a Python file: Invoke script splitter, retrieve resulting workflow, open in modeler

[ ] Enable attachment of patterns to the resulting workflow:

[ ] Enable visualization of patterns attached to activities and subprocesses
[ ] Automatically attach behavioral and augmentation patterns to the workflow generated/loaded in the previous step
[ ] Enable manual adaptation of attached patterns (remove, add new, etc.)

[ ] Transformation of attached patterns:

[ ] Add knowledge base for the transformation
[ ] Transformation must be done before other transformations, e.g., QuantME transformation
[ ] Add example rules:

[ ] REM pattern: Add REM task after circuit execution tasks within the subprocess to which the pattern is attached
[ ] Warm-Starting pattern: Add WS task before VQA starts
[ ] Cutting pattern: Add cutting and combination tasks before/after execution

[ ] Store transformations to enable visualizing a pattern view

[ ] Add tests for attachment/splitting/transformation/etc.
[ ] Add documentation on how to use the feature

@mbeisel, @vietzd: Please refine where required

!!!most important issue!!!
from step 3 on depending on concrete solution connection provided by @GeorgDaniel (and the thesis)

Closed by #161


Clarify behavior of debug statements

See https://github.com/dlang/dmd/pull/7882 and https://issues.dlang.org/show_bug.cgi?id=18407 for discussion.

Yes, https://github.com/dlang/dlang.org/pull/2209.


Should have a customizabe build

Usecase
When integrating JSPdf in other projects, not all features will be necessary. The required feature set depends on the application and on the platform (browser, cli)
Request

[ ] There should be an interactive feature builder which allows to select the intended Features. An initial version of this is already there as builder.html
[ ] the feature Bulider shall be able to save the feature selection file which can subsequently be used to be version controlled, used in a build pipline etc.
[ ] the feature Builder shall be able to load the feature selection file  as a baseline for an updated configuration.
[ ] The feature builder shall load the configuration of available features from a configuration file which might also be used by the custom_builder
[ ] There shall be a custom_builder which takes the aforehead mentioned feature selection file and generates a JSPdf.{featureset}.debug.js
[ ] the generated JSPdf.{featureset}.debug.js shall contain the selected features as comment (maybe even retrievable via the api by JSPdf clients)
[ ] the generated JSPdf shall contain version number and git SHA for reference purposes

Solution approach

[ ] jspdf.features.js - this is a json file which contains the available features and the dependant modules.
[ ] builder.html - this is the editor for the feature selection based on jspdf.features.js. builder.html can upload/download the feature selection file as well as the result of a build (which is a shortcut ...)
[ ] custom_builder.js this script builds a jspdf.{featureset}.debug.js  where featureset is the basename of the featureselection file.
[ ] feature selection file: this file is maintained by builder.html. It takes all the information provided by the user. The feature selection file is intended to be kept in the vcl of integrator projects.

Wouldn't an easier approach be supporting tree shaking? Ie letting module bundlers take the code that is used and remove everything else. Related to this #839

@simonbengtsson
The builder i made was just made as a gimmick. Not really for productive use, but more like a test which parts are maybe depending on each other.
So I will maybe remove the cli.js and other non working builder parts or hide for now, as maybe people will complain that it wont work etc. ;)
Tbh I think jsPDF will be longer a monolith.

There are different requirements depending on the use case that we should have a customizable build providing a monolithic, easy to integrate jspdf. Therefore something like build.cli will be necessary.

Kind of a duplicate of #839.


[T4A2][T15-B4] Huang Zihua

Ready for review

@JamesHuangUC Please use the imperative form of the verb for commit messages. eg., add, delete,  change etc.


Documentation generation automation

Documentation should be automatically generated through TravisCI at each merge on master branch.

Fixed in #19 .


support for bounded setters

It would be useful to be able to set a valid set of options for setters and substitutions
kpt cfg create-setter proj/ image lts,beta.stable

I believe this should be possible via Enumerations

This feature is implemented as part of this PR https://github.com/kubernetes-sigs/kustomize/pull/2496. Next release will have this change.


Compatibility Issue: TypeError for Union Type Hints with Python Versions Below 3.10

when I try to quantize model like this
  from hqq.engine.hf import HQQModelForCausalLM, AutoTokenizer
  model     = HQQModelForCausalLM.from_pretrained(model_id, torch_dtype=compute_dtype)
  tokenizer = AutoTokenizer.from_pretrained(model_id)

  from hqq.core.quantize import BaseQuantizeConfig
  quant_config = BaseQuantizeConfig(nbits=4, group_size=64)
  model.quantize_model(quant_config=quant_config, compute_dtype=model.dtype, device=model.device)

I encountered the error "unsupported operand type(s) for |: 'type' and 'NoneType'" because of this line of code.
https://github.com/mobiusml/hqq/blob/b92ef48a89ecf2bedeae15d4e8621778e5d7f624/hqq/core/peft.py#L370
It appears to be due to using a Python version older than 3.10. Would you consider making it compatible with earlier Python versions?

Hi @hjh0119 , this should fix it https://github.com/mobiusml/hqq/commit/3254f0172d639838f2c28e1951f6749da873a56c
Let me know if there's another issue!


✨ feat(config.ts): add caching mechanism to reduce file I/O operations

A caching mechanism has been added to the getConfig function to improve performance by reducing the number of file I/O operations. The function now checks if the configCache variable is enabled and returns the cached value if it is. If the cache is not enabled, the function reads the configuration file and returns the value. After reading the configuration file, the function stores the value in the cache for future use.

that's a great idea, but opencommit runs as a script which exits the process when done, so all the variables are lost :)

that's a great idea, but opencommit runs as a script which exits the process when done, so all the variables are lost :)

In a single process launch, getConfig() is called multiple times and the .opencommit file is read multiple times unnecessarily.
I think that it should be read only once in the process.

@takuya-o ohh you are right, could you solve the conflict pls and lets merge

@di-sukharev I did solve the conflict. Could you merge this?


Update Get-CmdletXref.ps1 to support input from Get-Command

PR Summary
This PR adds pipeline support for Get-Command, should solve #125.
Worth noting, the function was already able to take input from Get-Command because CommandInfo instances when coerced to a string resolve in their .Name property, but the code as-is, would query the command again making it not very efficient, thus the change to [object[]] in the parameter type and the check for $cmd -isnot [CommandInfo].

PR Checklist

[X] Descriptive Title: This PR's title is a synopsis of the changes it proposes.
[X] Summary: This PR's summary describes the scope and intent of the change.
[X] Contributor's Guide: I have read the contributors guide.
[X] Style: This PR adheres to the style guide.

As aside, Contributors and Style Guides links are pointing to Mikey's repo 😄

@microsoft-github-policy-service agree

Thank you so much for this contribution, @santisq!
I left a few notes on the implementation. I know that those notes would require a nearly full re-write of your implementation - if you're up for it, I'd love to keep working with you on the PR. If you don't have the time, energy, or interest in reworking the PR, I'm also happy to adopt it and make sure your name stays attached to the implementation commits.
One thing I noticed about this PR, separate from the implementation details, is that it is simultaneously a refactor and an enhancement. If possible, it would be really helpful as a reviewer if those changes could be broken into separate commits - the first to add the functionality, the second to refactor. But this is a nit, and not something I would reject a PR for. It's just a note that can make future PR reviews easier.
Thanks again for this submission, just let me know if you're happy to reimplement per the review comments or if you'd like me to pick up the work. 😊

Hi @michaeltlombardi, sure I've reviewed some of the changes and I can work on them just need some time 👍. Reg. this:

If possible, it would be really helpful as a reviewer if those changes could be broken into separate commits - the first to add the functionality, the second to refactor.

 Sorry about that 😅
Btw, in case you didn't see this: https://github.com/microsoft/Documentarian/pull/126#issuecomment-1726822589

As aside, Contributors and Style Guides links are pointing to Mikey's repo 😄

Mikey's working on fixing this. Thanks for letting us know.


Can't load custom class

Sorry for the barrage of questions. I really appreciate all your help!
I'm trying now to load one of our classes, but doppio can't find the class.
https://github.com/ianopolous/DoppioDemo
I've loaded the class files into the BrowserFS from the /classes directory. Then tried to add /classes to the classpath of the JVM. However it still throws loading peergos.user.UserContext class.

You should treat DoppioJVM like a regular JVM. Make a class with a public static void main method, and then just call jvm.runClass(/* Class name */ 'foo.bar.Baz', /* Arguments */ [], function(exitCode) {   /* Called when execution terminates. */ }).
As a side note, when execution terminates, you need to create a fresh DoppioJVM. You cannot re-use it.
If I was better at API design, I would have just exposed a single static method that just ran a class or a JAR file and left it at that.

I'm trying to call a static method that returns something, not a main method. Basically I want to keep the returned object around in javascript and call various methods on it. Is that possible? I'm fine with those methods being wrapped in a promise if need be. I've been following https://github.com/plasma-umass/doppio/wiki/Running-Java-methods-from-JavaScript

No, that breaks a number of internal assumptions. Like a regular JVM, DoppioJVM expects to run a main method. When that method completes, the JVM shuts down. Doing anything else is weird and unexpected, and may break in unknown ways.
What you should probably do is something like this, where you bootstrap DoppioJVM with a simple main method, and then call into a native method that simply never returns:
class MyClass {
  public static native void doStuff(MyObject obj);

  public static void main(String[] args) {
    MyObject obj = SomeClass.staticMethod(...);
    doStuff(obj);
  }
}

You implement doStuff in JavaScript like the other native methods. You should suspend the "thread" that the JVM is running your program on with thread.setStatus(Doppio.VM.Enums.ThreadStatus.ASYNC_WAITING);, otherwise it will expect a synchronous return value from your method.
I cannot immediately recall, but you may need to re-park the thread each time you call a method.

I documented this particular assumption, which is standard for all JVMs, in the updated Getting Started Guide.


callbacks: Allow reporting string macros

This is the minimum necessary change to have a str_macro in analogy to the int_macro callback. Unlike int_callback, this can't change anything about how code is generated, but it is still usable to influence the build system based on it. For example, in the course of making Rust usable on the RIOT embedded operating system, I'd print cargo:rustc-config=riot_board="..." from bindgen with a value from a string define.

BTW, printing stuff from the callbacks is a use-case that I had not thought of, nice one :)

Thanks for the feedback. The updated branch contains tests and fixups for the nits, which can be autosquashed when it's time to merge.

The merge checks have alerted me that this can't automatically merge into master.
It looks like the rebase is trivial and one only needs to remove the markers git inserted (and then tests pass) -- shall I do the rebasing and squashing for further review, or would you rather have it squashed and merged?

It looks good, feel free to rebase and squash, let's get this landed :)

Done.

@bors-servo r+

Ah, right, bors is a bit dead still.

NP! Thanks a lot for contributing :)


Allow for negative score

Rather than just matching for <1  I’m not only matching on 1 or -1

Done!

:tada:

And done, 1.1.5


Fix podspec

There was an error in the Podspec, resulting in the following error when installing:
[!] Unable to find a specification for 'PromiseKit'.
[!] Unable to load a podspec from PromiseKit.podspec, skipping:
Pod::DSLError

Thanks and apologies.


iOS Safari Render Issue

Operating System: Windows 10
Node Version: 10.4.0
NPM Version: 6.1.0
webpack Version: 4.12.0
webpack-serve Version: 2.0.2

Expected Behavior
The page served with webpack-serve or webpack-dev-server works fine on Chrome for iOS but it doesn't work on iOS Safari.
The page stays blank and this is the net log (no errors in the console).

Thank You!

👉🏽 Need support, help, or advice? Don't open an issue! Head to StackOverflow or https://gitter.im/webpack/webpack.

@shellscape You are confident that it isn't the servers fault that the page loads on iOS Chrome and not on iOS Safari?

@shellscape It also works on Firefox iOS, Opera iOS ... on Safari it doesn't get the js files from the server.

It had Javascript disabled .. sigh

😉


Using an arbitrary ID in IOU Details page causes Infinite Loader

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:
Break down in numbered steps

Open Any chat on newDot which has an outstanding Payment.
Click on Payment badge from LHN.
Now change the id from URL to arbitrary value.

Expected Result:
Describe what you think should've happened
Show redirect back to the Recent Chat screen.
Actual Result:
Describe what actually happened
A loader is shown infinitely on the IOU details Modal.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Close the modal and open the chat.
Platform:

Where is this issue occurring?

Web
Desktop App

Version Number: Latest
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
View all open jobs on Upwork

Triggered auto assignment to @ntrepanier (AutoAssignerTriage), see https://stackoverflow.com/c/expensify/questions/4749 for more details.

Proposal

Basically the API is returning undefined and in IOUDetailsModal we're showing a loader for undefined which is resulting in an infinite loader
It can be fixed by adding the below code after line 469

            if(!iouReportObject){
                Navigation.navigate(ROUTES.REPORT)
            }

https://github.com/Expensify/App/blob/588700ee3a8111b44c3312c828098ee5e33e4388/src/libs/actions/Report.js#L467-L473

Triggered auto assignment to @timszot (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

Triggered auto assignment to @SofiedeVreese (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

Posted on Upwork: https://www.upwork.com/jobs/~01519d16416944bf41

Triggered auto assignment to @puneetlath (Exported), see https://stackoverflow.com/c/expensify/questions/7972 for more details.

Proposal

in IOUDetailsModal component we get the data for IOU report here

https://github.com/Expensify/App/blob/588700ee3a8111b44c3312c828098ee5e33e4388/src/libs/actions/Report.js#L467

for both Invalid chat id or invalid IOU report id, it returns undefined which will be set on the Onyx.
https://github.com/Expensify/App/blob/588700ee3a8111b44c3312c828098ee5e33e4388/src/libs/actions/Report.js#L415.

We show the loader until iouReport data is undefined. https://github.com/Expensify/App/blob/588700ee3a8111b44c3312c828098ee5e33e4388/src/pages/iou/IOUDetailsModal.js#L203

To fix this:

We should redirect to the Report Route, when fetchIOUReport API call returns a non-truthy value.

Navigation.navigate(ROUTE.REPORT) //  which is  /r as path

It will take use back default most recent report automatically.
We can safely handle the navigation inside fetchIOUReportByID action via a parameter as this is used by other parts of APP.

@SofiedeVreese Please find the above proposal. Thanks!

Thanks @aman-atg I'll wait for @puneetlath to look into your proposal.

Going to remove @puneetlath 's assignment due to competing priorities and re-add the Exported label.

Triggered auto assignment to @chiragsalian (Exported), see https://stackoverflow.com/c/expensify/questions/7972 for more details.

Hey @chiragsalian when you have a spare min would you mind reviewing the above proposals? Thanks!

Oh odd, this shows up as gray on my K2 so i totally missed this. Anyway i like @parasharrajat solution a little more so @SofiedeVreese can you hire rajat on upwork. Rajat feel free to prepare the PR.

Hey @parasharrajat feel free to submit a quick proposal via Upwork so I can hire you! :)

Ps @chiragsalian I think the "Help Wanted" label grays it out (purple gray). It's a new label we now add to open issues, so you may have more in that weird purply gray!

Hired! @parasharrajat

I'm about to log off and going OOO for a couple of days travelling back to Australia. Reassigning this GH to another contributor to manage it once the PR is merged, adding a hold etc.

Triggered auto assignment to @marklouisdeshaun (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

PR merged

Payment issued, the contract has been completed, and the Upwork post has been closed.


Inspector p doesn't get buffer mapped if p is globally mapped

I use miniyank to handle yanking and pasting in most buffers, and have something like nnoremap p ... in my vimrc.  Vlime's inspector window doesn't map its p buffer-local mapping unless I remove this global one.  Vlime seems to be trying to be "helpful" and not mapping keys that are already mapped, even for windows like the inspector and debugger that aren't editable.
What's the right way for me to work around this?  Unmap my keys, run map foo to see what internal Vlime function it's calling, remap my keys, and remap the Vlime key in an autocommand?  Is there an easier way?

Yes this is expected. Vlime will not map any keys that are already mapped. I try not to assume any key usage.
All Vlime special buffers have file types, you can use the FileType autocmd to forcibly map the key:
augroup LocalVlimeKeys
    autocmd FileType vlime_inspector nnoremap <silent> <buffer> p :call vlime#ui#inspector#InspectorPop()<cr>
augroup end

Or is there a better effortless way?

This way is fine, but it would be good if the documentation could list the function for each key it maps, so I don't need to do the unmap/check/remap dance for all of them.

but it would be good if the documentation could list the function for each key it maps

True, but I thought this is a bit too verbose, and hard to maintain. Maybe I can come up with a unified naming scheme for the mapped functions, and let the users derive the names.

Another option may be that, Vlime throws all skipped keys (and what they should be mapped to) in a global variable, so that you can inspect them easily, just like how v:errors and v:errmsg work.

As of b547007, one can simply say let g:vlime_force_default_keys = v:true to have all the default mappings.


main.jsbundle does not exist. This must be a bug with

This happens only when building the app with EAS namely during the fast lane step.
I've seen it in other react native related issues and they suggested to edit some files in Xcode, but I would like to keep the project expo managed, so I'm not sure how to fix it.
Here's part of the build log, I think is most relevant:
[RUN_FASTLANE] › Linking   Luffarelli » Luffarelli
[RUN_FASTLANE] ⚠  ld: duplicate method '+moduleName' in
┌─[category]: ExpoBridgeModule-51af6d930ad374d100647ad3841ef291.o ExpoModulesCore/libExpoModulesCore.a
└─[class]: ExpoBridgeModule-a5e73f1bbab418e7b2a8cab5f33b1042.o ExpoModulesCore/libExpoModulesCore.a

[RUN_FASTLANE] ⚠  ld: method '+UIStatusBarAnimation:' in category from /Users/daniele/Library/Developer/Xcode/DerivedData/Luffarelli-caqrovrlgcytbshiaqxicjigkuut/Build/Intermediates.noindex/ArchiveIntermediates/Luffarelli/BuildProductsPath/Release-iphoneos/React-CoreModules/libReact-CoreModules.a(RCTStatusBarManager.o) conflicts with same method from another category
[RUN_FASTLANE] › Generating debug Luffarelli » Luffarelli.app.dSYM
[RUN_FASTLANE] › Executing Luffarelli » Bundle React Native code and images
[RUN_FASTLANE]     the transform cache was reset.
[RUN_FASTLANE]
❌  error: File /Users/daniele/Library/Developer/Xcode/DerivedData/Luffarelli-caqrovrlgcytbshiaqxicjigkuut/Build/Intermediates.noindex/ArchiveIntermediates/Luffarelli/BuildProductsPath/Release-iphoneos/Luffarelli.app/main.jsbundle does not exist. This must be a bug with React Native, please report it here: https://github.com/facebook/react-native/issues

[RUN_FASTLANE]     Run script build phase '[CP-User] Generate app.config for prebuilt Constants.manifest' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'EXConstants' from project 'Pods')
[RUN_FASTLANE] ▸ ** ARCHIVE FAILED **
[RUN_FASTLANE] ▸ The following build commands failed:
[RUN_FASTLANE] ▸ 	PhaseScriptExecution Bundle\ React\ Native\ code\ and\ images /Users/daniele/Library/Developer/Xcode/DerivedData/Luffarelli-caqrovrlgcytbshiaqxicjigkuut/Build/Intermediates.noindex/ArchiveIntermediates/Luffarelli/IntermediateBuildFilesPath/Luffarelli.build/Release-iphoneos/Luffarelli.build/Script-00DD1BFF1BD5951E006B06BC.sh (in target 'Luffarelli' from project 'Luffarelli')
[RUN_FASTLANE] ▸ (1 failure)
[RUN_FASTLANE] ** ARCHIVE FAILED **
[RUN_FASTLANE]
[RUN_FASTLANE]
[RUN_FASTLANE] The following build commands failed:
[RUN_FASTLANE] 	PhaseScriptExecution Bundle\ React\ Native\ code\ and\ images /Users/daniele/Library/Developer/Xcode/DerivedData/Luffarelli-caqrovrlgcytbshiaqxicjigkuut/Build/Intermediates.noindex/ArchiveIntermediates/Luffarelli/IntermediateBuildFilesPath/Luffarelli.build/Release-iphoneos/Luffarelli.build/Script-00DD1BFF1BD5951E006B06BC.sh (in target 'Luffarelli' from project 'Luffarelli')
[RUN_FASTLANE] (1 failure)
[RUN_FASTLANE] Exit status: 65
[RUN_FASTLANE]
[RUN_FASTLANE] +-------------+-------------------------+
[RUN_FASTLANE] |           Build environment           |
[RUN_FASTLANE] +-------------+-------------------------+
[RUN_FASTLANE] | xcode_path  | /Applications/Xcode.app |
[RUN_FASTLANE] | gym_version | 2.205.1                 |
[RUN_FASTLANE] | sdk         | iPhoneOS16.0.sdk        |
[RUN_FASTLANE] +-------------+-------------------------+
[RUN_FASTLANE] Looks like fastlane ran into a build/archive error with your project
[RUN_FASTLANE] It's hard to tell what's causing the error, so we wrote some guides on how
[RUN_FASTLANE] to troubleshoot build and signing issues: https://docs.fastlane.tools/codesigning/getting-started/
[RUN_FASTLANE] Before submitting an issue on GitHub, please follow the guide above and make
[RUN_FASTLANE] sure your project is set up correctly.
[RUN_FASTLANE] fastlane uses `xcodebuild` commands to generate your binary, you can see the
[RUN_FASTLANE] the full commands printed out in yellow in the above log.
[RUN_FASTLANE] Make sure to inspect the output above, as usually you'll find more error information there
[RUN_FASTLANE] [!] Error building the application - see the log above
[RUN_FASTLANE] Error: Fastlane build failed with unknown error. See logs for the "Run fastlane" and "Xcode Logs" phases for more information.
Fastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.
[CLEAN_UP_CREDENTIALS] Destroying keychain - /var/folders/yv/415_mqjn13j0c7np7mskxf9r0000gn/T/turtle-v2-2439e84c-47ae-499e-beea-2d3089dc01f3.keychain
[CLEAN_UP_CREDENTIALS] Removing provisioning profile

Build failed
Fastlane build failed with unknown error. See logs for the "Run fastlane" and "Xcode Logs" phases for more information.
Fastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.
    Error: npx exited with non-zero code: 1

There are few potential reasons why this could happen:

You have an error in your typescript and it does not compile. You can check Xcode logs for the actual error, they are available in the last section of logs on the build page.
You might have ejected unintentionally and there is sth broken in the native code. Make sure that you do not have android/ios directories.

If the above does not help please provide link to non local build where  this happens

I'm seeing the same error and I neither have typescript errors nor ejected unintentionally.
The error started appearing after upgrading Expo v0.46 -> 0.47 and I'm now unable to build the app on an M1 Mac.
Can't find any useful info in XCode logs to help me debug the issue.

Upon further digging into the xcode logs I found something:
error hooks/useFilters.ts: Unexpected token name «_000», expected punc «,» in file hooks/useFilters.ts at 27:11.
Error: Unexpected token name «_000», expected punc «,» in file hooks/useFilters.ts at 27:11
    at minifyCode (/Users/expo/workingdir/build/app/node_modules/metro-transform-worker/src/index.js:101:13)
    at transformJS (/Users/expo/workingdir/build/app/node_modules/metro-transform-worker/src/index.js:319:28)
    at transformJSWithBabel (/Users/expo/workingdir/build/app/node_modules/metro-transform-worker/src/index.js:410:16)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async Object.transform (/Users/expo/workingdir/build/app/node_modules/metro-transform-worker/src/index.js:571:12)

I checked this useFilters file, but no issue in sight within the editor or when running the app in debug mode, I suspect something breaks during minification
cc @wkozyra95

Same error after upgrade here.
Copying   ios/iMprovisertest/Supporting/Expo.plist ➜ ./Expo.plist
› Compiling iMprovisertest » SplashScreen.storyboard
› Compiling iMprovisertest » noop-file.swift
› Compiling iMprovisertest » ExpoModulesProvider.swift
› Compiling iMprovisertest » main.m
› Compiling iMprovisertest » iMprovisertest_vers.c
› Preparing iMprovisertest » Info.plist
› Compiling iMprovisertest » AppDelegate.mm
› Linking   iMprovisertest » iMprovisertest
⚠  ld: duplicate method '+moduleName' in
┌─[category]: ExpoBridgeModule-7b46aa804acfb7763ddc0cd6ede4c490.o ExpoModulesCore/libExpoModulesCore.a
└─[class]: ExpoBridgeModule-29c4d6149f00ed24e1c1639cb41e56a7.o ExpoModulesCore/libExpoModulesCore.a
⚠  ld: method '+UIStatusBarAnimation:' in category from /Users/expo/Library/Developer/Xcode/DerivedData/iMprovisertest-gyvhktofygdlsmfnpmlbgjalwuxv/Build/Intermediates.noindex/ArchiveIntermediates/iMprovisertest/BuildProductsPath/Release-iphoneos/React-CoreModules/libReact-CoreModules.a(RCTStatusBarManager.o) conflicts with same method from another category
› Generating debug iMprovisertest » iMprovisertest.app.dSYM
› Executing iMprovisertest » Bundle React Native code and images
    the transform cache was reset.

❌  error: File /Users/expo/Library/Developer/Xcode/DerivedData/iMprovisertest-gyvhktofygdlsmfnpmlbgjalwuxv/Build/Intermediates.noindex/ArchiveIntermediates/iMprovisertest/BuildProductsPath/Release-iphoneos/iMprovisertest.app/main.jsbundle does not exist. This must be a bug with React Native, please report it here: https://github.com/facebook/react-native/issues

I solved my problem by looking at the logs when the app starts on an iPhone. There I saw it tried to import something with errors (SVG related). So I removed @fortawesome/free-regular-svg-icons, @fortawesome/free-solid-svg-icons from my deps, and commented some stuff in the app that used these icons and now the EAS build works

I solved my problem by looking at the logs when the app starts on an iPhone. There I saw it tried to import something with errors (SVG related). So I removed @fortawesome/free-regular-svg-icons, @fortawesome/free-solid-svg-icons from my deps, and commented some stuff in the app that used these icons and now the EAS build works

I'm also seeing this problem and am using various @fortawesome SVG icons in my project. I'm using them in quite a lot of places though so I haven't removed them to be able to verify this is the issue. May I ask where you saw the logs which mentioned an SVG related error? When I start my app using either expo go or a development build (both on the simulator) I don't see any errors.

I am still seeing this problem. I have tried backtracking my package.json and removing everything I can think of.  No love.

I was able to resolve my issue. Instead of removing font awesome, I actually used deep imports. So this:
import { faChevronRight } from "@fortawesome/pro-regular-svg-icons";
Became this:
import { faChevronRight } from "@fortawesome/pro-regular-svg-icons/faChevronRight";
I then repeated this for all my font awesome icon usage across my app. I guess this way, it only adds the icons we're using, rather than all of them.

I was seeing this problem as well but seem to have found a solution. I commented out aws-exports.js in my .gitignore. I am using AWS amplify on my project. This file was not being included when uploaded to eas since it was in .gitignore. You can review your xcode log for more details - this is where I saw the error "error Unable to resolve module ./src/aws-exports from /Users/expo/workingdir/build/App.js". I did also downgrade the SDK to 46 but I don't think that was the solution.

This may potentially be an issue on the M1 workers, but I can't get a spot in the standard queue to see if it fails there too. I've never seen this error before today when I tried using the M1 workers.

This was it for me. Thanks @cmeyer90 !

I was seeing this problem as well but seem to have found a solution. I commented out aws-exports.js in my .gitignore. I am using AWS amplify on my project. This file was not being included when uploaded to eas since it was in .gitignore. You can review your xcode log for more details - this is where I saw the error "error Unable to resolve module ./src/aws-exports from /Users/expo/workingdir/build/App.js". I did also downgrade the SDK to 46 but I don't think that was the solution.

This was it for me. Thanks @cmeyer90 !

Same @tannerabread

I have fixed this just by deleting all files/folders related to this project inside Archives and DerivedData on:
/Users/USERNAME/Library/Developer/Xcode
Hope it helps! I took a long time to find this, I was always creating a new project and copying files over.
Good luck 👋🏽

I was seeing this problem as well but seem to have found a solution. I commented out aws-exports.js in my .gitignore. I am using AWS amplify on my project. This file was not being included when uploaded to eas since it was in .gitignore. You can review your xcode log for more details - this is where I saw the error "error Unable to resolve module ./src/aws-exports from /Users/expo/workingdir/build/App.js". I did also downgrade the SDK to 46 but I don't think that was the solution.

I was wondering how this guy/gal saw the xocde logs, I am new to this whole thing. So I submitted the build to EAS (instead of locally building as it was failing and I didn't know how to get xcode logs, when building online it just lets you download those logs) - then I downloaded the expo logs and voila I saw the output of the script with error that was causing a failure in building main.jsbundle-

error Unable to resolve module ./src/navigation from /Users/expo/workingdir/build/App.js:

Turns out the docs mention this exact error caused by adding index.js in .gitignore like I had:

This particular error means that the app is importing ./src/Routes and it is not found. The cause could be that the filename case is different in Git than the developer's filesystem (for example, routes.js in Git instead of Routes.js), or maybe the project has a build step and it wasn't set up to run on EAS Build. In this case, it turns out that in this case ./src/Routes was intended to import ./src/Routes/index.js, but that path was accidentally excluded in the developer's .gitignore.

I removed index.js from .gitignore and local buils + remote build suceeded.

I was seeing this problem as well but seem to have found a solution. I commented out aws-exports.js in my .gitignore. I am using AWS amplify on my project. This file was not being included when uploaded to eas since it was in .gitignore. You can review your xcode log for more details - this is where I saw the error "error Unable to resolve module ./src/aws-exports from /Users/expo/workingdir/build/App.js". I did also downgrade the SDK to 46 but I don't think that was the solution.

This worked for me


Add command line parameters to configure input

Input method configuration should be overriden by command line parameters that defines them.

Resolved by 4b033a0.


Create release process for publishing new releases to Chocolatey (Windows)

Objective
We currently do not provide a way for Windows users to install the New Relic CLI from the command-line. Chocolatey(cmd: choco) is a package manager for Windows. Unfortunately GoReleaser does not support packaging for Chocolatey, but we can grab the generated binaries to facilitate creating a Chocolatey package.
CircleCI provides a Windows orb that includes Chocolatey, so this may help us with creating packages via choco. CircleCI's Hello World On Windows tutorial might also inform the beginning steps needed, although I think it's missing information related to Chocolatey since that's out of scope for that doc
The Chocolatey Wiki - FAQs seemed quite helpful for finding more information. Some examples are linked below.

What Are Chocolatey Packages?
What kind of package types does Chocolatey support?

To be verified/fixed next release.

https://github.com/newrelic/newrelic-cli/pull/210


get_player_games_by_month_pgn top level attribute 'png'

in client.py, the get_player_games_by_month_pgn has the top level attribute set to 'png' instead of 'pgn'.

Good catch. The issue has been fixed.


Please, clarify how Stream.distinct() handles errors

The description for method dart:async:Stream.distinct() reads:

Stream<T> distinct([
bool equals(
T previous,
T next
)
])
Skips data events if they are equal to the previous data event.
The returned stream provides the same events as this stream, except that it never provides two consecutive data events that are equal.
Equality is determined by the provided equals method. If that is omitted, the '==' operator on the last provided data element is used.
The returned stream is a broadcast stream if this stream is. If a broadcast stream is listened to more than once, each subscription will individually perform the equals test.

Please, clarify how errors are handled:

Errors in the original stream (are they just copied?)
Errors thrown by equals (are they added to returned stream? does first error stops further processing?)

The errors are forwarded, that's part of "the same events" since we generally include errors in events.
Errors in equals is indeed added to the returned stream. It doesn't stop further processing, and it doesn't update what the most recently emitted data event is.

In case of equals throws, please, clarify whether error is considered as equals returns true or equals returns false? I.e. what data will be in returned stream in case of equals throws


Fix missing fmt argument in error message

Without this, the error message would literally be "path {} too long (128 byte limit)" with curly braces in it instead of the path.

Thanks!


Update docs for new Docker Hub image

Repository has been moved from arbourd to linkyard

Apparently I still have write to the original repo. I don't have a problem if you choose to remove that though 😅

no problems with that, just use it responsible ;)


bug: ERROR Failed to run healthcheck for "provider" plugin. Exception:     6   Vim:E15: Invalid expression: "\m[^-.a-zA-Z_/]'' ? shellescape(v:val) : v:val"

Did you check docs and existing issues?

[X] I have read all the LazyVim docs
[X] I have searched the existing issues of LazyVim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
v0.10.0-dev
Operating system/version
wsl
Describe the bug
into command mode,execute checkhealth: export follow errror

Steps To Reproduce
into command mode
:checkhealth

Expected Behavior

Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  "folke/LazyVim",
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here

I fail to see how this is a LazyVim problem. There's something wrong with the npm neovim package. You can either create an issue at Neovim repo itself or in the npm package repo to get this resolved.

Hello @wxzvim,
As @dpetka2001 said, this error is not related to LazyVim.
Could you close this issue?


Problem 1.6

Problem 1.6 solved by manual differentiation for the dTheta.
Additionally, variable naming was cleaned up a bit, and the previous 1.6 solution was removed (since apparently quaternion derivative -> euler derivative is very not trivial..........)

Closing due to double work


Move to OpenSea API to query NFTs

Currently we are using Covalent but it's often slow to resolve. Moving to OpenSea would give us more rich context (like price) and probably a more complete listing.

@bonustrack API to list NFTs requires API key, can you request API key from OpenSea? Looks like they have manual approval process and doing this though Snapshot's email might get us the key faster.

@Sekhmet I've made a request 2 weeks ago with Snapshot email but got no reply, on their Discord there is many others in same situation, we should get the key at some point I'll do another request if no progress. This should not be a blocker for the integration, their API doesn't require API key if you use their testnet which is on Goerli, for us it will be ideal since our testnet is also on Goerli.


Support EXIF orientation (e.g. rotation)

The library currently does not read EXIF data. EXIF orientation is used by Android to a.o rotate images. This causes some images to appear in a wrong orientation when cropping.
Relevant StackOverflow: https://stackoverflow.com/a/57389676/2260402

Hello @MathiasDL!
Thank you for the issue, I had issues with rotation before, so I will try to fix this as I find spare time. Probably not earlier than the weekends.

I'm gonna give this issue a try

@MathiasDL I already fixed it locally, please wait a bit and I will make a PR

@MathiasDL Pushed changes to #20
I will test this a bit before merging, would you like to review the code?

This will be released in 0.1.5


Exclude tests from published files

The files array in package.json is being used to restrict the published files so npmignore is not needed, but test files should be excluded from the list.

Codecov Report

Merging #60 (9d36e9d) into master (4d8bedc) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #60   +/-   ##
=======================================
  Coverage   63.33%   63.33%
=======================================
  Files          12       12
  Lines         270      270
  Branches       81       81
=======================================
  Hits          171      171
  Misses         89       89
  Partials       10       10

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 4d8bedc...9d36e9d. Read the comment docs.


Add custom property for data classification.

As far as we see from #613 it make sense to add a custom attribute for data classification on schema properties and parameters (may be also on schemas, paths, or the whole API as explicit default) to support reasoning about the sensitivity and protection of data for logging, tracing, and monitoring. This would allow to build infrastructure and libraries that automatically filter or protect sensitive data based on API specifications.
Our data classification is following a standard schema consisting of for colors green for public, yellow for internal/general, orange for confidential, and red restricted/highly confidential.
Since API specs defines a general level of protection on each endpoint by authorization, there is already a general classification of endpoints and responses according to the following schema:

No authentication and authorization maps to public (default green),
Authenticated users maps to internal (default yellow), and
Authorized users maps to confidential (default orange/red).

So from and endpoint perspective it would be enough to add a critical classification for endpoints exposing critical data requiring additional access restrictions. We can use this endpoint classification to derive a minimum bound for the data classification of schema properties and parameters, by saying that data is classified on the same level as the endpoint or below.
However, for logging, tracing, and monitoring it would be better to know exactly which data is above the supposed classification level, e.g. authenticated, to filter (or split) the provided data. To enable this, we would need to assign a data classification directly to each schema property and parameter. The available classification levels for this will depend on the required filtering:

If log-files are classified as confidential, we only need to flag restricted properties and parameters. A simple solution could use the tag x-sensitive: <true|false>.
If log-files are supposed to be classified as internal, we need to flag confidential and restricted properties and parameters.

A general tag pattern could look like x-data-class: <public|internal|confidential|restricted>, where internal could be used as default, if no tag is provided.

Thank you @tkrop, this sounds like a great idea! I am very much in support of this, it could significantly help with the issue at hand without degrading the experience for our developers. Please let Katalin and myself know how we can help with this, we'd be very keen to support!

Proposed is a security classification provided as part of the API definition (on level of API scheme elements). The approach is analogous to the path we used to follow for data schemes in the data lake, but meanwhile have been discarded for various reasons. It is an option, but should be discussed in the context of an overall security architecture (not a guideline issue) we align for the future.
For the time being, I understood from our guild discussion the following:
Our mandatory requirement to be solved: If PII data is logged, access must be restricted to the owning team (with max 30 days retention time). For logging via Scalyr the requirement is fulfilled. For logging via Lightstep and Skipper it seems to be not fulfilled in situations where URLs contain personal data. We should analyse and align on the solution options here and then discuss whether / how a guideline change is helpful. One solution option could be logging with anonymization or deletion of ids used in URLs -- either automatic or manual as drafted in https://github.com/zalando/restful-api-guidelines/issues/618.
@msooszalando However, also wrt to the URL logging problem I propose that we start with a security solution narrative (and not with a guideline issue). We are happy to support here.

I agree, that the proposal must be considered within the context of a wider security/privacy architecture.
However, from a simplistic perspective, APIs are the core of such a proposal, since they cover the main paths of data exposition. If we assume that data stores are completely encapsulated by services, the only other path of data exposition is provided by logging/tracing, which is at least partially covered by the API specification. To completely cover all data exposure, we would need to extend the API specification to logging and tracing of calls - which translates to: no logging/tracing without proper specification.
@msooszalando We have touched this problem a couple of times during the last two years in our meetings without consequences. If you can provide a narrative as foundation of a decision, this would be great.

Hi All,
Given what's above, I believe the narrative is indeed the right approach. I will align with Katalin to see what we can do here. In the meanwhile, would https://github.com/zalando/restful-api-guidelines/issues/618 be OK to go ahead with (given some alignment), or must that also be part of such a narrative? That seems like a less intrusive solution to a problem that's more prominent. If we can get issue fixed, I believe this issue, and its associated workload, can be picked up with less urgency. What do you think?
Thanks,
Mate

@msooszalando Thank you for taking care of a narrative. I propose not to start with the 'overall API security architecture' now, but focus on the Personal Data Logging problem (as discussed and sketched above). In context of this narrative, we will clarify if https://github.com/zalando/restful-api-guidelines/issues/618 is the right option to follow.

Waiting for the narrative before we do any guideline changes here.


Stop relying on the old unexpectedType.diff output format

It might be removed in Unexpected 11: https://github.com/unexpectedjs/unexpected/pull/407
Requires: https://github.com/bruderstein/unexpected-htmllike/pull/4

Oh, there's also this one, @bruderstein :)


MSCCLPP integration

MSCCLPP integration

Drop this PR and move to new repo

Drop this PR and move to new repo

Is new repo https://github.com/Azure/msccl-tools ?


composer.json not contain require ext-ctype

My php installation without ctype module crashed yii application.
Call to undefined function yii\db\ctype_digit() in yiisoft/yii2/db/QueryBuilder.php on line 832)
Why composer.json not contain ext-ctype in require section?
Also ctype extension used in https://github.com/yiisoft/yii2/blob/master/framework/caching/Cache.php#L86
Same problem in depedencies cebe/markdown, ezyang/htmlpurifier, swiftmailer/swiftmailer

Adding ext-ctype is a good idea. It's already in requirements checking script.
Other dependencies are there:

https://github.com/yiisoft/yii2-swiftmailer/blob/master/composer.json#L22
https://github.com/yiisoft/yii2/blob/master/framework/composer.json#L59
https://github.com/yiisoft/yii2/blob/master/framework/composer.json#L60


Enum components are being generated as nullable when the property holding it is nullable

Description
I have the following scenario:
const Brand = z.enum(['Ford', 'Toyota', 'Tesla']).openapi('Brand');

const Car = z
    .object({
        brand: Brand.nullable(),
        model: z.string(),
    })
    .openapi('Car');

Expected result
I expected the property Car.brand to be a nullable Brand
components:
  schemas:
    Brand:
      type: string
      enum:
        - Ford
        - Toyota
        - Tesla
    Car:
      type: object
      properties:
        brand:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/Brand'
        model:
          type: string

Actual result
The spec generated declares Brand as nullable, instead of making the property Car.brand nullable
components:
  schemas:
    Brand:
      type:
        - string
        - 'null'
      enum:
        - Ford
        - Toyota
        - Tesla
    Car:
      type: object
      properties:
        brand:
          $ref: '#/components/schemas/Brand'
        model:
          type: string

More info
I understand the rationale behind the way this was generated. The problem is that Brand could be reusable, and in some places it might not be nullable. Is there a workaround this?

@renke0 I can see the problem. If you pass Brand before Car in the OpenApiGeneratorV3 constructor's array of definitions everything works fine. But if you switch their order or simply do not pass Brand at all then what you've described happens.
I am not sure how easy it would be for us to fix this and when we will have the time for it. In the mean time - you can make sure to pass it in order as a workaround.