Nightly build failure 2023-01-10

Outputs link
https://console.cloud.google.com/storage/browser/builds.catalyst.coop/2024-01-10-0603-d62dd5c42-main
Relevant logs
==> Building image with Docker
--> docker host: 20.10.12 linux x86_64
#1 [internal] load .dockerignore
#1 transferring context: 2B 0.0s done
#1 DONE 0.0s

#2 [internal] load build definition from Dockerfile
#2 transferring dockerfile: 336B 0.0s done
#2 DONE 0.0s

#3 [internal] load metadata for docker.io/library/python:3.11.0-slim-bullseye
#3 DONE 0.7s

#4 [1/6] FROM docker.io/library/python:3.11.0-slim-bullseye@sha256:b5ee5360b357dcd0ab2e1cc5e22fa589b6734bbd55776df6b1700994febf1527
#4 DONE 0.0s

#5 [internal] load build context
#5 transferring context: 39.35MB 4.3s
#5 transferring context: 90.71MB 9.5s
#5 transferring context: 144.76MB 14.6s
#5 transferring context: 194.28MB 19.7s
#5 transferring context: 243.45MB 24.7s
#5 transferring context: 296.08MB 29.8s
#5 transferring context: 345.25MB 34.9s
#5 transferring context: 394.97MB 39.9s
#5 transferring context: 444.76MB 44.9s
#5 transferring context: 499.75MB 50.1s
#5 transferring context: 550.65MB 55.1s
#5 transferring context: 604.93MB 60.2s
#5 transferring context: 650.33MB 65.2s
#5 transferring context: 696.48MB 70.5s
#5 transferring context: 734.33MB 75.5s
#5 transferring context: 764.45MB 80.7s
#5 transferring context: 796.51MB 85.8s
#5 transferring context: 826.43MB 90.8s
#5 transferring context: 854.75MB 95.9s
#5 transferring context: 884.87MB 101.0s
#5 transferring context: 913.06MB 106.0s
#5 transferring context: 941.97MB 111.1s
#5 transferring context: 969.63MB 116.1s
#5 transferring context: 1.00GB 121.1s
#5 transferring context: 1.03GB 126.3s
#5 transferring context: 1.05GB 131.5s
#5 transferring context: 1.07GB 136.6s
#5 transferring context: 1.10GB 141.8s
#5 transferring context: 1.13GB 146.8s
#5 transferring context: 1.16GB 151.9s
#5 transferring context: 1.19GB 157.1s
#5 transferring context: 1.22GB 162.2s
#5 transferring context: 1.24GB 167.2s
#5 transferring context: 1.27GB 172.3s
#5 transferring context: 1.30GB 177.3s
#5 transferring context: 1.33GB 182.5s
#5 transferring context: 1.35GB 187.6s
#5 transferring context: 1.38GB 192.6s
#5 transferring context: 1.41GB 197.7s
#5 transferring context: 1.44GB 202.8s
#5 transferring context: 1.46GB 207.9s
#5 transferring context: 1.49GB 212.9s
#5 transferring context: 1.52GB 218.0s
#5 transferring context: 1.55GB 223.1s
#5 transferring context: 1.58GB 228.1s
#5 transferring context: 1.60GB 233.3s
#5 transferring context: 1.63GB 238.3s
#5 transferring context: 1.66GB 243.4s
#5 transferring context: 1.69GB 248.4s
#5 transferring context: 1.71GB 253.4s
#5 transferring context: 1.74GB 258.6s
#5 transferring context: 1.77GB 263.7s
#5 transferring context: 1.80GB 268.8s
Error: failed to fetch an image or build from source: error building: failed to receive status: rpc error: code = Unavailable desc = error reading from server: EOF
Traceback (most recent call last):
  File "/home/mambauser/pudl/devtools/datasette/publish.py", line 180, in <module>
    sys.exit(deploy_datasette())
             ^^^^^^^^^^^^^^^^^^
  File "/home/mambauser/env/lib/python3.11/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mambauser/env/lib/python3.11/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/home/mambauser/env/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mambauser/env/lib/python3.11/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mambauser/pudl/devtools/datasette/publish.py", line 151, in deploy_datasette
    check_call(["/usr/bin/env", "flyctl", "deploy"], cwd=fly_dir)  # noqa: S603
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mambauser/env/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/env', 'flyctl', 'deploy']' returned non-zero exit status 1.

Next steps
Seems like there was some issue deploying to fly.io, maybe a network blip? We can try to download job outputs and deploy manually.

I downloaded last night's outputs
> gsutil -m cp -r "gs://builds.catalyst.coop/2024-01-10-0603-d62dd5c42-main" .

Then I added a --build-only flag to mirror the flyctl deploy --build-only flag, to see if the build works.
Then I ran
> PUDL_OUTPUT=~/scratch/2023-01-10/2024-01-10-0603-d62dd5c42-main/ python publish.py --build-only
...

which succeeded. Ignore the fact that I got the year wrong in the containing directory 🤦
So I'll re-run it without the build-only flag, and also make a PR for said build-only flag.

Re-ran the full deploy and it all worked! If we keep running into this we should consider how to retry automatically or perhaps bake less data into the docker image.

I'll keep this open until the QOL fix related to this issue gets merged in.

In general when we get a failure like this do we actually want to do the redeploy? How do we ensure that the data that's showing up in Datasette corresponds to the data that shows up under the /nightly prefix in the distribution buckets and was it generated with the code that's on the nightly branch? If something post-etl and testing goes awry, do we just investigate and make it internally consistent by hand?

Your worry is that whatever outputs are in builds.catalyst.coop for this specific build ID doesn't correspond to the outputs that were verified?
I think if you look in the logs, and:

nothing seems to have gone wrong in the upload to builds.catalyst or pudl.catalyst
nightly points at the correct nightly build tag

Then it's safe to redeploy - of course, assuming nothing goes wrong in the re-download from GCS / the upload to fly.io.

Oh, or are you asking about whether we should automatically try to re-deploy? I think if the error occurs in flyctl deploy it's worth trying again - everything has passed validation up until that point, you know?

I'm trying to think about how our published outputs / repository could end up being inconsistent with each other, depending on which of the individual sub-tasks has failed, and how we impose consistency after the failure has happened
In this case, the only thing that failed was the Fly.io deployment, and nothing depends on it, so re-deploying Fly.io gets everything back in sync.
But if say, copying from builds.catalyst.coop to pudl.catalyst.coop fails, then the s3 outputs would also be out of sync with what got uploaded to Fly.

Hmm, the fly.io deployment process is from the pre-compressed-outputs days. We could actually have it download the compressed outputs from pudl.catalyst.coop instead of uploading directly from PUDL_OUTPUT - maybe that's more robust?


Cannot activate only one exporter

I tried setting up krakend with only influxdb with the config provided by kraken designer.
Got the following config:
  "extra_config": {
    "github_com/devopsfaith/krakend-gologging": {
      "level": "WARNING",
      "prefix": "[KRAKEND]",
      "syslog": false,
      "stdout": true
    },
    "krakendesigner": {
      "endpoint_defaults": {
        "github.com/devopsfaith/krakend-ratelimit/juju/router": {
          "maxRate": 0,
          "clientMaxRate": 0
        }
      }
    },
 "github_com/devopsfaith/krakend-opencensus": {
      "sample_rate": 100,
      "reporting_period": 1,
      "exporters": {
        "influxdb": {
          "address": "http://<IP_ADDRESS>:8086",
          "db": "krakend"
        }
      }
    }
  },

When I try a request through the gateway, I get the following error:
kraken        | panic: runtime error: invalid memory address or nil pointer dereference
kraken        | [signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0xa71e30]
kraken        |
kraken        | goroutine 27 [running]:
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/exporter/jaeger.(*Exporter).ExportSpan(0x0, 0xc4202c7180)
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/exporter/jaeger/jaeger.go:125 +0x30
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/trace.(*Span).End.func1()
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/trace/trace.go:282 +0x14f
kraken        | sync.(*Once).Do(0xc4203d6308, 0xc4203e96c8)
kraken        | 	/usr/local/go/src/sync/once.go:44 +0xbe
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/trace.(*Span).End(0xc4203d62d0)
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/trace/trace.go:268 +0x61
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp.(*bodyTracker).Read(0xc42034ace0, 0xc420318400, 0x200, 0x200, 0x7f30e8daa6c8, 0x0, 0xc42015db00)
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp/trace.go:100 +0x135
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp.(*tracker).Read(0xc4200b7e60, 0xc420318400, 0x200, 0x200, 0xc4203e98f0, 0x66ee34, 0xc7ac40)
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp/client_stats.go:108 +0x56
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp.(*bodyTracker).Read(0xc42034ad00, 0xc420318400, 0x200, 0x200, 0xca2500, 0x100000000000001, 0x0)
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp/trace.go:94 +0x55
kraken        | github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp.(*tracker).Read(0xc4200b7e00, 0xc420318400, 0x200, 0x200, 0x1301900, 0xbec16983b8c9f495, 0xc4203e98c8)
kraken        | 	/go/src/github.com/devopsfaith/krakend-ce/vendor/go.opencensus.io/plugin/ochttp/client_stats.go:108 +0x56
kraken        | net/http.(*cancelTimerBody).Read(0xc42034ad20, 0xc420318400, 0x200, 0x200, 0x0, 0x200, 0x0)
....

It appears as though all the exporters are registered even if they are not present.
I am running krakend on docker, using a docker compose script. The docker image is latest, krakend 0.5.
I tried running with all the exporters configured and present in the docker config ( jaeger, zipkin, prometheus) and all receive data.
Even removing the port config on the prometheus section would cause the same issue.
Is this a bug, or am I doing something wrong?
Thanks!

Hi @andrei1489 ,
You are totally right. This is a bug (fixed on this commit).
We had pending release the 0.5.1 version that fixes this problem (that we have done right now).
Please, check the docker hub or the rpm/deb/tgz repos from the Krakend download page.

Thanks for reporting @andrei1489
Is fixed now after releasing 0.5.1, closing the issue. Feel free to reopen if anything related is not quite what you expected.


[refactor prompt] Add support for show method group (pt 2)

What current issue(s) does this address, or what feature is it adding?

Reference https://github.com/CityOfZion/neo-python/pull/737

This PR supports the last five methods from the show method group (see https://github.com/CityOfZion/neo-python/issues/623#issue-362278030)

How did you solve this problem?
Trial and Error
How did you make sure your solution works?
Unittest
Are there any special changes in the code that we should be aware of?

ShowAllAssets was added so show assets mirrors show contracts

originally implemented here https://github.com/CityOfZion/neo-python/pull/667

Added the ability to use 'neo' or 'gas' to show the corresponding assets

originally implemented here https://github.com/CityOfZion/neo-python/pull/667

Please check the following, if applicable:

[x] Did you add any tests?
[x] Did you run make lint?
[x] Did you run make test?
[x] Are you making a PR to a feature branch or development rather than master?
[ ] Did you add an entry to CHANGELOG.rst? (if not, please do)

Not sure what is going on with coveralls but clicking  on the latest coveralls comment here shows accurate coverage of Show.py. However, I don't understand the "uncovered" lines, I don't think that is accurate.
@ixje @LysanderGG I think this PR is ready for another review.

I'm looking for a word that would neatly express a group of possible input options. I don't think args is a good fit. My current best idea is specifier or identifier but it doesn't feel smooth or accurate. I'm hoping for ideas from you :)

I am thinking "attribute" which is in line with Python

Note to self (cc @ixje): Prior to merging remember to

[ ] Update contractstate to match parody with neo-cli (see https://github.com/CityOfZion/neo-python/pull/750)
[ ] Update Show.py. Specifically,CommandShowContract to remove mention of 'code' key.

#750 is merged, I approved the new changes. Let me know when you think it's ready.

@ixje I think this PR should be good to go 👍

💯


Add configurable Prometheus PodMonitor resource

This PR adds the Prometheus PodMonitor as configurable resource, so you don't need to deploy the PodMonitor extra.
Please ensure your pull request adheres to the following guidelines:

[x] explain your motives to contribute this change: what problem you are trying to fix, what improvement you are trying to make
[x] Document your Changes in the CHANGELOG.md file of the respected chart as well as the Chart.yaml
[x] Bump the Version number of the respected chart

Hello,
I believe it's an excellent idea to provide complete integration with Prometheus. Also, would it be a good idea to add /api/monitoring/metrics endpoint using the monitoring passcode to authenticate?
  - interval: 30s
    path: /api/monitoring/metrics
    scheme: http
    port: http
    bearerTokenSecret:
      name: {{ template "sonarqube.fullname" . }}-monitoring-passcode
      key: SONAR_WEB_SYSTEMPASSCODE

Hello @dpunkturban thanks a lot for taking the time to improve our SonarQube helm chart.
We will try to review and test it in detail during the following weeks.
The initial comment i can make is that the LTS chart is frozen as per our LTS policy, we modify it mostly only for security reason. Could you please remove everything related to the LTS ?
Thanks a lot again for participating in the community !

Hello @dpunkturban, any update on this PR ?
In order for it to be tested and merge, you should rebase from master, remove the LTS related stuff and address @achupryn point.
Then we will be able to validate everything and merge it.
Thanks a lot for taking time to participate in the community !

Hi @jCOTINEAU , sorry for the delay, was quite busy in the latest Q4 Weeks.
I would finish the PR this weekend :)

HI @jCOTINEAU,

Rebased with Master
Removed LTS changed
Added /api/monitoring/credentials target
Set PodMonitor default to false (because you need Prometheus operator for this)

Half Off-Topic:
In the monitoring passcode secret there is this if-statement everywhere, where values are harcoded, if they are not defined in the values:
{{- if and .Values.monitoringPasscodeSecretName .Values.monitoringPasscodeSecretKey }}
      name: {{ .Values.monitoringPasscodeSecretName }}
      key: {{ .Values.monitoringPasscodeSecretKey }}
    {{- else }}
      name: {{ template "sonarqube.fullname" . }}-monitoring-passcode
      key: SONAR_WEB_SYSTEMPASSCODE

Why are these values not set directly in the values.yaml? Then we could delete the if-statement and would save some copy&paste code.
monitoringPasscodeSecretName: monitoring-passcode
monitoringPasscodeSecretKey: SONAR_WEB_SYSTEMPASSCODE

I did not want to modify more for the PR now, so just the question and not directly a commit for it :)
Thanks
Dennis

Hello @dpunkturban i just want to give you an update on that PR.
We have a new chart LTS release coming up.
Which is the reason why we are not yet incorporating your changes.
I deeply thank you for taking the time to participate in the community regarding the time it takes for the PR to be accepted.
I would nonetheless like to highlight from our CONTRIBUTION.md that it is hard for us to deal with external PR and we always prefer feature demand on our community forum.
Huge thanks again, may you excuse us for the inconvenience

Hello @dpunkturban
Thanks again for your contribution. As said before, we will consider your change after the LTS is released, in one of the next hardening sprints.
I have just written a small task about it (SQHELM-107) and we'll make sure to tackle it using the work you did on this feature branch.
For now, I'm closing this PR.


Add the ability to deploy OCP using PXE boot

Feature description
There are some vendors who don't fully support Redfish API. This prevents us from deploying OCP using Crucible in our lab.
Adding to Crucible the ability to deploy OCP clusters using PXE boot can help us to deploy OCP labs faster.
Required statements

[X] I acknowledge that Red Hat does not provide commercial support for the content of this repository.
[X] I acknowledge that any assistance is offered purely on a best-effort basis, as resource permits.

@natifridman just curious which vendors? If this is old kit then it seems like a large code base to maintain going forward when we seem to have all the major bases covered already. Especially as the number of nodes that don't support redfish continues to decrease and a lot of security departments don't particularly like enabling PXE/DHCP/TFTP.

@natifridman just curious which vendors? If this is old kit then it seems like a large code base to maintain going forward when we seem to have all the major bases covered already. Especially as the number of nodes that don't support redfish continues to decrease and a lot of security departments don't particularly like enabling PXE/DHCP/TFTP.

Intel specifically, but it can also be a solution for others like Supermicro that requires a license for Redfish.


[Monitor] Add missing examples, adding config tag for Java code generation, fixing documentation typos

This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.
PR information

[x] The title of the PR is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[ ] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
[x] If applicable, the PR references the bug/issue that it fixes.
[x] Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

[x] I have read the contribution guidelines.
[x] My spec meets the review criteria:

[x] The spec conforms to the Swagger 2.0 specification.
[x] The spec follows the guidelines described in the Swagger checklist document.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.

To be honest I do not know why so many commits are included. Some of them are even merged already...

I am fixing the errors in the new examples.
The missing example for GetUsageMetrics I included it, but it is empty since the operation is about to be deprecated and nobody is using it.
The errors of the type:
"type": "Error",
"code": "DefinitionsPropertiesNamesCamelCase",
"message": "Property named: 'odata.type', for definition: 'RuleCondition' must follow camelCase style. Example: 'odata.type'.",
"id": "R3016",
Are out of my control. I files an incident

Apparently the Python build job failed.

No modification for AutorestCI/azure-sdk-for-node

 https://github.com/Azure/azure-sdk-for-ruby/pull/996

 https://github.com/Azure/azure-sdk-for-python/pull/1470


add support for gitattributes

See https://github.com/github/linguist#using-gitattributes

Hey @smola, now that you're back, what would you like to do with this issue and its PR?

I'm planing to look into this later this 2019Q1

Calling from 2020Q2, it would be really nice to have :wink:
That said, will you pick up what is set for linguist? E.g. would a line like * linguist-documentation in .gitattributes be picked up by enry? That would be really useful for projects e.g. mirrored (or migrated) from Github to Gitea.

There is a bit of a vendor-prefixing situation going on with these attributes, so I think a implementation should support the existing ones and maybe also unprefixed variants. Here is what I gathered:
Language override: linguist-language, gitlab-language
Vendored files: linguist-vendored
Generated files: linguist-generated
Docs: linguist-documentation
Detectable: linguist-detectable
Refs:
https://github.com/github/linguist/blob/master/docs/overrides.md#summary
https://docs.gitlab.com/ee/user/project/highlighting.html


Record the upload time of user files

The upload time (creation time) of user files should be recorded in the database for future reference and sorting purposes.
Currently, the "files" table only has the following fields:
    `uid`         INT UNSIGNED                NOT NULL,
    `fid`         INT UNSIGNED AUTO_INCREMENT NOT NULL,
    `size`        INT UNSIGNED                NOT NULL,
    `name`        VARCHAR(128)                NOT NULL,
    `path`        VARCHAR(512)                NOT NULL,
    `description` VARCHAR(512)                NOT NULL,

For existing files, the upload time can be set to a default value.

A pull request #1590 have been created.

#1590 has merged.


E2E tests: add basic disruption tests

Signed-off-by: Martin Kennelly<EMAIL_ADDRESS>Expecting test named IngressNodeFirewall policy is configurable after daemon deletion to fail - seen with KinD and bare metal server.
INF policy configuration isn't working after daemon deletion.
Executed go mod tidy + go mod vendor
Executed make lint and its clean

/assign @msherif1234

P.S if you want me to add reboot test scenario LMK. I know you wanted to do it previously.

Also, I didnt hide these tests behind a flag because the tests arent adding that much latency to the overall test time. If they get too long later, we can do that.

/retest
Infra failure

/retest

/assign @andreaskaris PTAL

/test ingress-node-firewall-e2e-metal-ipi

/hold

PR #354 will continue this work


No version in minified code.

Most JS libraries have the version in their header.
Found myself a bit confused as to what version I had actually downloaded.
Cool library btw, looking forward to using it.

You can have a look at the releases page, the master and the demo (gh-pages repository) are always the latest SVN code.


Add additional info to template block

In Visual Studio insert our template from the task to index.html file inside the  block
git add index.html
git commit -m "Added additional info to template block"
git push origin patch/content/secondary


Change GSoC page design

When we click on the Kamand Prompt logo in the navbar at the GSoC Page, it redirects to a the same page, IMO it should redirect to the main webpage.
Thanks!

GSoC page hasn't been completely connected to the main website. We'll get on this issue as we start working on it.

Let's club this under change/improve gsoc page design one issue.

We also need to add the navbar and footer to the page.

Everything on the same page, just stacked over one another won't look good. How do you think the GSoC page should be linked to the website?

@akshat157   it will be separate page as is now, only the logo should be hyperlinked to the main page.

@abhigyank is right. We will have separate pages as it is now. We just need to improve the UI and do proper redirections in the page.

Issue isn't solved yet. We'll change the UI and then the issue will be solved.


State values not available in templated values for sub-helmfiles

Operating system
macOS
Helmfile Version
v0.169.1
Helm Version
v3.16.2
Bug description
Current behaviour
When a templated values file is provided to the helmfiles[n].values property, it has no access to the current state-values {{ .Values.xyz }}.
Expected behaviour
I would expect, that the state values are available and can be used in the same way as it works for releases[n].values
Example helmfile.yaml
Example helmfile.yaml:
environments:
  default:
    values:
      - foo: "bar"

helmfiles:
  - path: ./helmfiles/sub-helmfile.yaml
    values:
      - values.yaml.gotmpl # {{.Values.foo}} is not avaliable here within!

Example values.yaml.gotmpl
foo: {{ .Values.foo }} # Does not work

Error message you've seen (if any)
failed to render [/path/to/values.yaml.gotmpl], because of template: stringTemplate:1:15: executing "stringTemplate" at <.Values.foo>: map has no entry for key "foo"

Steps to reproduce
https://github.com/tomraithel/sub-helmfile-demo
Working Helmfile Version
n/a
Relevant discussion
No response

Can I have feedback on this? Is this working as intended?

environments:
  default:
    # here foo is not a key of values?
    # values:
    #   foo: bar
    values:
      - foo: "bar"

helmfiles:
  - path: ./helmfiles/sub-helmfile.yaml
    values:
      - values.yaml.gotmpl # {{.Values.foo}} is not avaliable here within!

@tomraithel

@tomraithel oh. sorry. I got the issue. ignore my answer.

@tomraithel from the code. it is not be supported. maybe it's a bug.

One important aspect of using values here is that they first need to be defined in the values section
of the origin helmfile, so in this example key1 needs to be in the values or environments.NAME.values of path/to/subhelmfile.yaml
Inline state values merged into the nested state's values

@tomraithel the values is used for overriding the nested state.

@yxxhero thanks for your reply.
The thing is, that overriding itself works - but not in combination with a templated values file in the root helmfile.
Take my example repo, If you modify the /helmfile.yaml and replace it with inline values, it works:
    values:
      - foo: "root-foo"

IMHO the behaviour should be the same no matter where the values come from

Helmfile is designed to run independently. If you rely on root status, this will prevent sub-helmfiles from running independently.
@tomraithel

Yeah but sub-helmfile is in my case not depending on root values. It's just that root-helmfile uses a template values file to pass values to the sub-helmfile instead of plain values.
It's basically like a function call where root-helmfile provides the arguments and if root-helmfile would not provide them, the default values from sub-helmfile would be used.


First time use experience

When the app is opened for the first time, it would be good to force users to create a new wallet. Currently a default wallet is automatically created using a hardcoded name default_wallet and password insecure_default_password. This process is not explicit enough and will probably lead to confusion for new users of the app.
This also flows into the need for a way to switch between available wallets, and the send/receive views to clearly show which wallet is active. Starting to feel like a status bar along the bottom (similar to electrum) could be a useful feature to add.

Started this in https://github.com/iancoleman/wallet_gui_for_sn/commit/d88fc1b55abedf64765167574ce36cd6c4ebc3ef
Still need to do

status bar if desired
finish the logic to create new wallets in the 'wallets' tab


Dark Theme

There are dark themes on the SQL editor, but it would be nice if there was a dark theme on the entire OmniDB screen.

Done in 1.6.


auto reCatpcha ??

Checklist

[x] I have read the FAQ
[x] I have checked if this issue already exists (both open and closed issues)
[x] I am using the most recent version of pogom from the master branch
[ ] If this is an installation issue, I am posting my OS, OS version, python version, pip version
[ ] I'm posting the complete log
[ ] I'm using a descriptive title for this issue

My Issue
after security update needed reCaptcha verification in-game all bot account suddenly death/not working. i wish the dev implemented auto reCaptcha in python build api.
...

👍  I dont know if pgoapi is working in a method... we must wait or help :P

after running 1 instance within 2 hours, captcha show up.

Same Problem here. Maybe these ingame captchas Appear  only once? Wehre is the trigger?

@Krooked : No, the problem don't appear only once. The captcha coul be complete successfull on a smartphone, the captcha appear again few minutes/hours after.

Game Over?
Right now,Iam testing with 5 Accounts - no Problems so far (2 hours).

@Krooked733 you always have the option to show the captcha to the user (in the map), but it's very ugly U.u and depends of the users

@WillyMaikowski
How is that possible? Is there a way to get/Print the captcha URL at the console/bash?

I still cannot see any pokemon from the scanner.
Hits "received valid response but without any data. ..."
Any fix on that ?


string_view support for object access

This PR adds support for std::string_view for object access (operator[], at, value, erase).
Todo:

[x] Add tests.
[x] Update documentation.
[x] Add examples.
[x] Check if other functions (e.g., contains) also need adjustment.

Closes #1529.

Coverage increased (+7.0e-06%) to 99.982% when pulling 7742859bd7735b9549414e46056177fb35359745 on string_view into 9d5735117528b6935da62dd29aa57dc811b6f823 on develop.

@jonesmz Thanks for your thorough review!

@jonesmz @CrimsonCodes0 Thanks for the review. I could clean up the code a bit. I will add some examples and overwork the documentation next.

My latest changes do clean up the code, but it now fails to compile with Clang 3.5 and Clang 3.6:
2021-03-30T08:50:14.9326552Z ../../single_include/nlohmann/json.hpp:6048:39: error: call to member function 'erase' is ambiguous
2021-03-30T08:50:14.9327744Z                     ref_stack.back()->erase(it);
2021-03-30T08:50:14.9328426Z                     ~~~~~~~~~~~~~~~~~~^~~~~
2021-03-30T08:50:14.9331084Z ../../single_include/nlohmann/json.hpp:10736:60: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > >::end_object' requested here
2021-03-30T08:50:14.9335732Z                             if (JSON_HEDLEY_UNLIKELY(!sax->end_object()))
2021-03-30T08:50:14.9336284Z                                                            ^
2021-03-30T08:50:14.9337191Z ../../single_include/nlohmann/json.hpp:1557:58: note: expanded from macro 'JSON_HEDLEY_UNLIKELY'
2021-03-30T08:50:14.9338064Z #  define JSON_HEDLEY_UNLIKELY(expr) __builtin_expect(!!(expr), 0)
2021-03-30T08:50:14.9338646Z                                                          ^
2021-03-30T08:50:14.9342477Z ../../single_include/nlohmann/json.hpp:10629:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >, nlohmann::detail::iterator_input_adapter<const char *> >::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > > >' requested here
2021-03-30T08:50:14.9345166Z             sax_parse_internal(&sdp);
2021-03-30T08:50:14.9345568Z             ^
2021-03-30T08:50:14.9348214Z ../../single_include/nlohmann/json.hpp:23640:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >, nlohmann::detail::iterator_input_adapter<const char *> >::parse' requested here
2021-03-30T08:50:14.9350520Z         parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
2021-03-30T08:50:14.9351330Z                                                                                ^
2021-03-30T08:50:14.9353708Z ../../single_include/nlohmann/json.hpp:25727:28: note: in instantiation of function template specialization 'nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >::parse<const char *>' requested here
2021-03-30T08:50:14.9355318Z     return nlohmann::json::parse(s, s + n);
2021-03-30T08:50:14.9355775Z                            ^
2021-03-30T08:50:14.9357220Z ../../single_include/nlohmann/json.hpp:20954:18: note: candidate function [with IteratorType = nlohmann::detail::iter_impl<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > >, $1 = 0]
2021-03-30T08:50:14.9358817Z     IteratorType erase(IteratorType pos)
2021-03-30T08:50:14.9359331Z                  ^
2021-03-30T08:50:14.9360791Z ../../single_include/nlohmann/json.hpp:21165:15: note: candidate function [with KeyT = nlohmann::detail::iter_impl<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > > &, $1 = <>]
2021-03-30T08:50:14.9362270Z     size_type erase(KeyT&& key)
2021-03-30T08:50:14.9362651Z               ^

and
2021-03-30T08:50:14.9374560Z ../../single_include/nlohmann/json.hpp:20411:35: error: no matching member function for call to 'find'
2021-03-30T08:50:14.9375429Z         auto it = m_value.object->find(key);
2021-03-30T08:50:14.9375871Z                   ~~~~~~~~~~~~~~~~^~~~
2021-03-30T08:50:14.9377985Z ../../test/src/unit-user_defined_input.cpp:45:19: note: in instantiation of function template specialization 'nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >::at<int>' requested here
2021-03-30T08:50:14.9379418Z     CHECK(as_json.at(0) == 1);
2021-03-30T08:50:14.9379769Z                   ^
2021-03-30T08:50:14.9380544Z ../../test/thirdparty/doctest/doctest.h:2573:34: note: expanded from macro 'CHECK'
2021-03-30T08:50:14.9381218Z #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
2021-03-30T08:50:14.9381655Z                                  ^
2021-03-30T08:50:14.9382443Z ../../test/thirdparty/doctest/doctest.h:2104:65: note: expanded from macro 'DOCTEST_CHECK'
2021-03-30T08:50:14.9383394Z #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
2021-03-30T08:50:14.9383949Z                                                                 ^
2021-03-30T08:50:14.9384844Z ../../test/thirdparty/doctest/doctest.h:2099:24: note: expanded from macro 'DOCTEST_ASSERT_IMPLEMENT_1'
2021-03-30T08:50:14.9385629Z                     << __VA_ARGS__) DOCTEST_CLANG_SUPPRESS_WARNING_POP
2021-03-30T08:50:14.9386095Z                        ^
2021-03-30T08:50:14.9387726Z /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/stl_map.h:1162:7: note: candidate function not viable: no known conversion from 'const int' to 'const key_type' (aka 'const std::__cxx11::basic_string<char>') for 1st argument
2021-03-30T08:50:14.9388913Z       find(const key_type& __x)
2021-03-30T08:50:14.9389265Z       ^
2021-03-30T08:50:14.9390892Z /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/stl_map.h:1187:7: note: candidate function not viable: no known conversion from 'const int' to 'const key_type' (aka 'const std::__cxx11::basic_string<char>') for 1st argument
2021-03-30T08:50:14.9391877Z       find(const key_type& __x) const
2021-03-30T08:50:14.9392253Z       ^

Any ideas?

I'm wondering if there is a declaration / definition mismatch anywhere in the code that might cause that error?

As everything is in a header, there is no split between declaration and definition.

The recent changes make things work. I won't have time to work this for the next week. maybe someone has a better idea in the meantime. Feel free to create a new branch...

The recent changes make things work.

Nice!

Wow, that is quite the typo 🤣
@jonesmz Would you be interested in forking the PR and attempting to make this work, before the week is over?

I'm traveling at the moment and don't believe I'll be able to make any contributions until mid-next-week.
Please feel free to work on it without fear of duplicate effort from me.

Hey @davidstone! Thanks a lot for the many comments. I tried to apply some of them, but the compilation currently fails. As I (apparently) fail to fully grasp the issue, I think I need some more help on this. :-/

I still need help here. It would be great if someone could pick this up.

Wow - now most of the CI jobs succeed. Seems like Clang 3.5 (and maybe others) have some issues:
FAILED: test/CMakeFiles/test-unicode2.dir/src/unit-unicode2.cpp.o
/usr/bin/clang++-3.5 -DDOCTEST_CONFIG_SUPER_FAST_ASSERTS -DJSON_DIAGNOSTICS=0 -DJSON_USE_IMPLICIT_CONVERSIONS=1 -Iinclude -I../../test/thirdparty/doctest -I../../test/thirdparty/fifo_map -I../../single_include -g -Wno-deprecated -Wno-float-equal -std=gnu++11 -MD -MT test/CMakeFiles/test-unicode2.dir/src/unit-unicode2.cpp.o -MF test/CMakeFiles/test-unicode2.dir/src/unit-unicode2.cpp.o.d -o test/CMakeFiles/test-unicode2.dir/src/unit-unicode2.cpp.o -c ../../test/src/unit-unicode2.cpp
In file included from ../../test/src/unit-unicode2.cpp:35:
../../single_include/nlohmann/json.hpp:6232:39: error: call to member function 'erase' is ambiguous
                    ref_stack.back()->erase(it);
                    ~~~~~~~~~~~~~~~~~~^~~~~
../../single_include/nlohmann/json.hpp:10923:60: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > >::end_object' requested here
                            if (JSON_HEDLEY_UNLIKELY(!sax->end_object()))
                                                           ^
../../single_include/nlohmann/json.hpp:1560:58: note: expanded from macro 'JSON_HEDLEY_UNLIKELY'
#  define JSON_HEDLEY_UNLIKELY(expr) __builtin_expect(!!(expr), 0)
                                                         ^
../../single_include/nlohmann/json.hpp:10816:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >, nlohmann::detail::iterator_input_adapter<const char *> >::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > > >' requested here
            sax_parse_internal(&sdp);
            ^
../../single_include/nlohmann/json.hpp:23877:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >, nlohmann::detail::iterator_input_adapter<const char *> >::parse' requested here
        parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
                                                                                ^
../../single_include/nlohmann/json.hpp:25964:28: note: in instantiation of function template specialization 'nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > >::parse<const char *>' requested here
    return nlohmann::json::parse(s, s + n);
                           ^
../../single_include/nlohmann/json.hpp:21191:18: note: candidate function [with IteratorType = nlohmann::detail::iter_impl<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > >, $1 = 0]
    IteratorType erase(IteratorType pos)
                 ^
../../single_include/nlohmann/json.hpp:21402:15: note: candidate function [with KeyT = nlohmann::detail::iter_impl<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > >, $1 = <>]
    size_type erase(const KeyT& key)
              ^
../../single_include/nlohmann/json.hpp:21444:10: note: candidate function not viable: no known conversion from 'nlohmann::detail::iter_impl<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char>, bool, long, unsigned long, double, std::allocator, adl_serializer, std::vector<unsigned char, std::allocator<unsigned char> > > >' to 'const size_type' (aka 'const unsigned long') for 1st argument
    void erase(const size_type idx)
         ^
../../single_include/nlohmann/json.hpp:21304:18: note: candidate function template not viable: requires 2 arguments, but 1 was provided
    IteratorType erase(IteratorType first, IteratorType last)
                 ^

Any ideas?

So there seems to be a confusion between
    IteratorType erase(IteratorType pos)

and
    size_type erase(const KeyT& key)

Apparently, the first option is the correct one. The second one has this restrictions on KeyT:
    template < class KeyT, typename detail::enable_if_t <
                   detail::is_usable_as_key_type<basic_json_t, KeyT>::value > ... >
    size_type erase(const KeyT& key)

with
template<typename BasicJsonType, typename KeyType>
struct is_usable_as_key_type
{
    static constexpr bool value =
        is_key_type_comparable<typename BasicJsonType::object_comparator_t, typename BasicJsonType::object_t::key_type, KeyType>::value &&
        !std::is_same<KeyType, typename BasicJsonType::iterator>::value &&
        !std::is_same<KeyType, typename BasicJsonType::const_iterator>::value;
};

For some reason, this seems not to have excluded
KeyT = nlohmann::detail::iter_impl<nlohmann::basic_json<>

My guess would be that at least part of the problem is that there are now two erase functions that can match an intergal parameter type as a key. But I'm not deep enough in the codebase or c++ rules around overload resolution/conversion sequences to really understand whats going on.

I tried to exclude iter_impl explicitly.

No, excluding iter_impl explicitly in is_usable_as_key_type did not help. :-/

The error only occurs with Clang 3.5, 3.6, 3.7, and 3.8. The code compiles fine with Clang 3.9, 4.0, etc.

Does it depend on the c++ version?

No, the error also occurs when compiling in C++14 mode (Clang 3.x does not yet support -std=c++17).

Also in c++11? Sorry for not checking myself. I just didn't find the time to properly understand the ci scripts. I hope I'll have time this weekend to take a proper look at this problem.

Also in c++11? Sorry for not checking myself. I just didn't find the time to properly understand the ci scripts. I hope I'll have time this weekend to take a proper look at this problem.

The CI only tests these compilers in C++11 mode. But I tested manually that the error also occurs in C++14.

No, the error also occurs when compiling in C++14 mode (Clang 3.x does not yet support -std=c++17).

that is odd, I remember using clang before to compile in C++ 17 mode back in 2017.

The switch was -std=c++1z in Clang 4 and earlier.

I see, I think my code uses features from Clang 6 or 7 or 8 or later if I remember right.
(feel free to look at https://github.com/AraHaan/bin2c) I also just noticed I forgot to update the linux makefile as well.

Hello all,
I gave it a try and think I found a way to fix the remaining compiling issues. You can have a look at the changes I made here: https://github.com/Minipeps/json/pull/1/commits/dd4eef346036f3865e447e883166950c7578d022
Basically, I have made this change everywhere  is_usable_as_key_type is used:

Hi @Minipeps, this is great news! I will give it a try.

Awesome @Minipeps - your fix works! Now I can add some remaining tests and examples and finally merge this!

@gregmarr @davidstone Going from at(Key&&) to at(const Key&) breaks the windows build. Any ideas?

commit: https://github.com/nlohmann/json/commit/15e45981ead5ca64a963d79c5dd5b6d18b2c7a3f
failed CI: https://github.com/nlohmann/json/runs/4303965262?check_suite_focus=true

Ugh, just saw the failure on Windows.  Will take a look.

Looks like it's failing with the string literal lookups.  I think these two functions were here to handle the string literals.  https://github.com/nlohmann/json/pull/2685/files#diff-b56a00981d8f3b87e3ce49a7eb27d36f4586d9c54c3fb628a88cfc000aa5fed4L3813-L3903

Here is the issue where they were added to fix this problem: https://github.com/nlohmann/json/issues/171

@nlohmann Have you tried putting back in those two functions?

@nlohmann Have you tried putting back in those two functions?

I'll try, see https://github.com/nlohmann/json/pull/2685/commits/253f39c03e529c240a3af8b37c6bbc3b7dc9f268.

The CI still fails. Any ideas?

(I had to resolve the conflicts)

See https://github.com/nlohmann/json/issues/1529#issuecomment-1003733316.


use column names in sql inserts

I would like to be able to extend the jobs table with additional columns (instead of having to join to other tables etc).  I believe all of the sql except for the INSERTs should work.
Eg, from:
let query = "INSERT INTO apalis.jobs VALUES ($1, $2, $3, 'Pending', 0, $4, NOW() , NULL, NULL, NULL, NULL)";

To:
let query = "INSERT INTO apalis.jobs
(job,id,job_type,status,attempts,max_attempts,run_at,last_error,lock_at,lock_by,done_at)
VALUES ($1, $2, $3, 'Pending', 0, $4, NOW() , NULL, NULL, NULL, NULL)";

Or would it best to implement a custom backend?

I am open to a PR as long as it doesn't break anything.

I ended up implementing my own storage.


SIM Number in webhook

It would be great if you could send the sim number in the web-hook.

Pleas let me know how to sponsor & how much.

Thanks


bug?: github prs may not be working for github enterprise

I know @jessesuen had intended for PRs to GitHub Enterprise to work, as evidenced by the predicate used when registering the GitHub implementation of the GitProviderService interface:
https://github.com/akuity/kargo/blob/2d4aaf579625fd723ea4b3941c226ec9bea23d5e/internal/gitprovider/github/github.go#L22-L32
However, this function is used several places throughout that implementation and appears that an error will result for any URL not beginning with https://github.com:
https://github.com/akuity/kargo/blob/2d4aaf579625fd723ea4b3941c226ec9bea23d5e/internal/gitprovider/github/github.go#L149-L156

yuck. definitely looks like a bug to me. Probably should switch to using golang's url.Parse instead of the regexp and extract the paths parts. By the time we've gotten here, we've already decided the host is github/github enterprise and don't care about the hostname.

Happy to fix it.


macOS support for snapshot

Hey @SemenovAlexander! Would you mind signing our Google Contributor License Agreement so we can get this PR over the finish line? 🚀  Thanks!

No problem. I've signed CLA and can see Google Individual CLA, when go to the link, provided by @googlebot.
Is this enough?

Yup! Thanks @SemenovAlexander ! Excited to get this change in there!

If the Google bot is confused it's usually because the commit is authored (in Git) with a different email address than the one used to sign the CLA. @SemenovAlexander can you check that those are in agreement? Thanks!

          2 Warnings

:warning:
Big PR

:warning:
Please provide a changelog summary in the Pull Request description @ohayon

  Generated by :no_entry_sign: Danger

Hey @ohayon :wave:
Thank you for your contribution to fastlane and congrats on getting this pull request merged :tada:
The code change now lives in the master branch, however it wasn't released yet to RubyGems.
We usually ship about once a week, and your PR will be included in the next one.
Please let us know if this change requires an immediate release by adding a comment here :+1:
We'll notify you once we shipped a new release with your changes :rocket:


ability to return any type from controller

Hi,
Could it be possible to have a parameter to not specify a type in a response entity ?
present:
@RequestMapping(value = "", method = RequestMethod.GET)
    public ResponseEntity<List<com.test.samples.model.SampleUnit>> getSampleUnits();

expected:
@RequestMapping(value = "", method = RequestMethod.GET)
    public ResponseEntity<?> getSampleUnits();

It'll allow, in the controller, to return something like following in case of an exception:
...
   }catch(Exception ex){
        return new ResponseEntity<>(ex.getMessage, HttpStatus.BAD_REQUEST);
    }

Thanks.

Currently we are achieving this by having our code throw exceptions, and then using @ExceptionHandler (https://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc) to transform those exceptions into HTTP requests. The benefit of this approach is that it does not clutter controllers with a lot of similar try catch blocks to convert errors into say HTTP 400/500/etc. Also the approach is a bit more standardised and less prone to human error
To achieve what you want we can probably create a configuration which will omit response types in the plugin, however i'm not sure we can do it selectively

This solution works if I use an external class and the @ControllerAdvice annotation.
When I try the @ExceptionHandler annotation in my controller, nothing happens. It's maybe because the handler method is not located into the ...ControllerDecorator class which has the annotation @RestController.
I tried this code from the doc:
  @ExceptionHandler(Exception.class)
  public ModelAndView handleError(HttpServletRequest req, Exception exception) {
    logger.error("Request: " + req.getRequestURL() + " raised " + exception);

    ModelAndView mav = new ModelAndView();
    mav.addObject("exception", exception);
    mav.addObject("url", req.getRequestURL());
    mav.setViewName("error");
    return mav;
  }

Yes it needs to either be in a class with @RestController or the @ControllerAdvice. We have classes specific to this since usually the way exceptions are translated  is not controller specific
We also use custom exceptions for 40x responses to allow for error codes/reasons.

ok, thanks for the explanation


⚠ Bofrost.lu has degraded performance

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

HTTP code: 200
Response time: 1230 ms

Resolved: Bofrost.lu performance has improved in 4af396e after 6 minutes.


Exclusion of Android intermediates needs a test

This commit:
https://github.com/dwmkerr/react-native-icon/commit/98b4e0a4225ff7f223dc4187b91d50111b0640e1
makes me a little nervous. Could there legitimately be a /build/ in a path which will lead to interference? This should also be covered in tests.

There could be, so we need a way to override this if necessary


Support High Efficiency Image File Format

Is your feature request related to a problem? Please describe.
Source decoding error: Error: Couldn't decode image on a HIF image: https://s.natalian.org/2023-04-05/milan2023.HIF
Describe the solution you'd like
Support for https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format
Does other service/app have this feature?
Google Photos https://photos.app.goo.gl/JEadX4KBqViVFXdm9

Dupe of https://github.com/GoogleChromeLabs/squoosh/issues/733

#733 was closed citing licensing, but there's an unaddressed follow-up noting the license is free for non-commercial use. Since Squoosh is free and open source, could this still be done? Or "no", because some use of Squoosh by Google would be considered Commercial?


[docs] Docstring Extraction has a Python-side Clang dependency - CI Workflow?

@michdolan after pushing my branch for a PR (https://github.com/scoopxyz/OpenColorIO/tree/feature/python_docstrings)
I realized that the Python script that extracts the docstrings from the headers and creates the string-literals that get referenced in the PyBind11 bindings requires Python Clang in order to traverse the source headers.
First off, that would make the Clang (https://pypi.org/project/clang/) Python package a dependency of the Python bindings. Are we ok with that? If not then we'd have to replicate the mkdoc.py behavior without the Clang package. Which I'd definitely ask for help with...
Looking at the CI GitHub workflow, I don't see a place where we control Python dependencies of our CI. I see that the bash scripts are run for the analysis_workflow.yml to install things like numpy for this setup, but there is no equivalent step in ci_workflow.yml

This seems like a larger imposition than I originally foresaw...
This would mean that we would likely have to limit docstrings embedded into Python functions to Clang/Python3 builds. For now at least.

This is the code I'm talking about:
https://github.com/AcademySoftwareFoundation/OpenColorIO/pull/1074


Remove 'Deduplication' Request State

Title of ticket: Remove Deduplication Request State
Description
After the Gathering Records release (7.0) is released, we will need to remove the request state of 'Deduplication', as it will be redundant/unnecessary (as dedupe will be done automatically through the 'Records' tab).
Dependencies
Are there any dependencies?
DOD

[ ] Deduplication State Removed

@lmullane @m-prodan - task for capturing the removal of the 'Dedupliction' state after the Gathering Records release (7.0)

code reverted


Apply criteria in findEntity() based on route params should not be always automatic

I think it's a bad idea apply automatic criteria based on route params. If someone uses a custom query provide, he expects to use his query builder.
I suggest to add some parameter in doctrine-connected configuration do disable this feature.
What do you think?

You're suggesting the addition of the :id required by Apigility to access a fetch route be configured to not execute.  So all filtering would be done in a Query Builder.  I see why you'd want to do that but I'll need other supporters of the idea before not using a different abstract for the resources is prefered.

I mean that findEntity apply automatic criteria. If I remember correctly, it's used by RpcController, but it's not intended to be used for REST resources. This doesn't respect Single Responsibility Principle and it could be confusing for some users (I am the first) because you allow routing params in for single entities but not for collections. We could force the user to use RPC service to do that. Also, the worst problem, the resource could apply criteria the user doesn't expect when mixing route params and query builders
If someone would want to use route params, he could use them in his custom query builder.
I'm suggesting to handle route params criteria somewhere else to be used just in RpcController.
Pros:

More consistency
Better clean code
More testable (for real unit tests)
Cons:
BC break for who using route params for fetching single entities (needs a minor release)

To provide an elegant interface a collection should not have route parameters.  You can add filters using zfcampus/zf-doctrine-querybuilder or query filters and with those two there's not a need for route parameters on collection end points.
Because of get based query builder filters with zf-doctrine-querybuilder I can't see a reason to need route parameters.  Can you speak to this?  And a PR with your idea would help too.


Permissions reset after registering a new user

Okay so, every time I register a new user I go back into my old user, I go into Manage Permissions and all of my old permissions reset and are gone.
EDIT: It only goes to one specific person like when you logout register a new user and go back in to the first one it would be a possibility if you have multiple users that the Permissions don't disappear.

This issue will be temporarily closed as it is likely solved. If the issue reappears again the conversation will open back up and we will take a further look at it.

This issue has been resolved in the current version 1.0.408. If the issue still persists for some reason, however, it will be reopened. Thank you for your cooperation.


Issue with broken links in ko documents

This is a Bug Report

Problem:
There are some broken links in the Korean translated documents:

[ ] content/ko/docs/concepts/configuration/pod-priority-preemption/
[ ] content/ko/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/
[ ] content/ko/docs/reference/access-authn-authz/controlling-access/
[ ] content/ko/docs/reference/glossary/pod-lifecycle/

Proposed Solution:
Fix the broken links.
Page to Update:
https://kubernetes.io/...

/language ko

/assign


Add LocationChangeAction type

Hi, any updates on this?

Oops. I just forgot to re-check this PR. @OliverJAsh, can you rebase and resolve the conflict? I'll merge then.

@supasate Done

Thanks!


EDGAPIUTL-5: Upgrade dependencies

This also upgrades dependencies that have security vulnerabilities. While FOLIO modules are not affected by them (false positive) other modules might be affected depending how they use edge-api-utils.
Upgrades that fix security vulnerabilities:

Upgrade org.apache.logging.log4j:log4j-core from 2.17.1 to 2.17.2 fixing Arbitrary Code Execution: https://nvd.nist.gov/vuln/detail/CVE-2021-44832
Upgrade com.fasterxml.jackson.core:jackson-databind from 2.12.1 to <IP_ADDRESS> fixing Denial of Service (DoS): https://nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-36518 , https://app.snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-2326698
Upgrade com.fasterxml.jackson.dataformat:jackson-dataformat-cbor from 2.6.7 to 2.13.2 fixing Denial of Service (DoS): https://nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-28491
Upgrade org.apache.httpcomponents:httpclient from 4.5.5 to 4.5.13 fixing Improper Input Validation: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13956
Upgrade commons-codec:commons-codec from 1.10 to 1.15 fixing Information Exposure: https://app.snyk.io/vuln/SNYK-JAVA-COMMONSCODEC-561518

@ Spring Force: Please code review and merge, I don't have write permission for this repository.


Add custom validation options for the search field component

Summary
Currently, the search bar has no ability to add custom validation. Providing this function would make the component more felxible for more use cases.
💬 Description
Allow a status message to be displayed with the search bar showing any of the default status types. Allow the message to be customized and the validation logic to be specified.
This would align with the same approach provided on text field.
💰 User value
Allows search bar to be used in more use cases and enhances flexibility of component.
📚 User Stories
If relevant, describe the high-level functionality as user stories.
As an ICDS user:
I need to set a custom validation rule and status message on a search bar
So that  I can message users about any errors, warnings or success info in same way as other ICDS components.
📝 Acceptance Criteria
If relevant, describe in full detail the different interactions and edge cases that the component or patterns needs to fulfil.
Given
When
Then
✏ Designs
If there's a Figma design file (or other mock-up), include it here.
## 🧾 Guidance
If there's written guidance or documentation, include a link to it here.
Additional info
Tell us anything else useful to help us understand your suggestion.

How would this display?


IdentityManager.AspNetIdentity vs IdentityServer3.AspNetIdentity

I understand that IdentityManager.AspNetIdentity is designed to provide an admin web UI to manage, users, roles, claims etc., and is in Beta. Is this the replacement for IdentityServer3.AspNetIdentity??
The IdentityManager.AspNetIdentity samples and the videos in the wiki page https://github.com/IdentityManager/IdentityManager/wiki work fine with the beta version of IdentityManager.AspNetIdentity but the moment I switch to the dev branch i.e. source code and add project references, there are issues with Microsoft.Owin <IP_ADDRESS> and other references. Even after adding the assembly redirect bindings, it fails to load other Microsoft.Owin.* assemblies.
If I want to use IdentityManager.AspNetIdentity with ASP.NET 5.0, which is using ASP.NET Identity 3.0x, then there are conflicts with UserManager, RoleManager classes since the runtime is confused  because of the conflicting assmblies Microsoft.AspNet.Identity.Core v <IP_ADDRESS> and Microsoft.AspNet.Identity v <IP_ADDRESS> both containing definitions for UserManager, RoleManager etc.

No this is unrelated to IdentityServer, but it could be used in conjunction with IdentityServer.


Release v0.1.1

Fixed #20

[x] Update version

[ ] Wait for pephub release.

[ ] https://github.com/pepkit/peppy/pull/453

can you: put the __version__ variable into a file called _version.py, and then import that? this is just a small standard thing we do in all the lab python packages


is_wrapper function breaks when passed a binary filename

For some reason, the wrapper is checking whether the binary under "/opt/vagrant/bin/vagrant" (on OS X) is a wrapper. When passed to the "grep" command, it errors out with:
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:179:in `==='
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:179:in `each'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:179:in `grep'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:179:in `is_wrapper?'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:147:in `block in find_vagrant'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:144:in `each'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:144:in `find_vagrant'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:166:in `exec_vagrant'
/Library/Ruby/Gems/2.0.0/gems/vagrant-wrapper-2.0.2/lib/vagrant-wrapper.rb:70:in `execute'```

Maybe it would be good to put a check to ensure the file is not a binary file prior to running grep on it? Or just catch the error and return "false".

Versions I'm running are:
rake 10.3.2
vagrant-wrapper 2.0.2
bundler 1.10.3
Vagrant 1.7.3
ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]
OS X 10.10.4

A lame workaround is to modify the function is_wrapper?() by adding a rescue for ArgumentError:
  def is_wrapper?(file)
    File.readlines(file).grep(/#{WRAPPER_MARK}/).any?
  rescue ArgumentError
    false
  end

This is happening on Ubuntu 12.04 as well.
The latest release of vagrant changed /opt/vagrant/bin/vagrant from a shell script to a binary, causing this problem.

:+1: for me too, Arch Linux and Vagrant 1.7.3.

paging @binarybabel -- Can you see about fixing this sooner rather than later? It's frustrating.

@docwhat re: "paging binarybabel -- Can you see about fixing this sooner rather than later?"
This bug report is three days old, and as @sewhyte pointed out is caused by a recent change to vagrant.
Considering this is a free and open source project, do you honestly think snarky comments are a good way to ask for help?

@srkiNZ84 thanks for the report, and @sewhyte for the added info. An updated version of the gem should be available within the next 24 hours to address this issue.

I apologize. I didn't intend to be snarky.
I appreciate you work.

To those watching this issue, it has come at a very inconvenient time. I apologize sincerely for not being able to release a patch sooner. It is coming, it is a priority. If any of you will be able to test the new version, that would be excellent given the scope of pushing out a gem update that affects many thousands of users.

@binarybabel FYI, I'm hitting this too. My local fix (possibly more universal) was to modify readlines to binread thus:
  def is_wrapper?(file)
    File.binread(file) =~ /#{WRAPPER_MARK}/
  end

@binarybable I went ahead and submitted a PR for my fix. I'll probably reference my branch from our project until it's released. Happy merging!

Thanks @jkeiser for the PR. We had to evacuate temporarily due to wildfires in Cali and this issue admittedly slipped my mind. Your patch looks good, I should be able to publish a new gem today.

Thanks!  I'm glad you are OK, sorry to hear about scary evacuations!

Version 2.0.3 is now life at rubygems.org


Fix polygon native asset address

Description
The native asset address on Polygon has always been wrong. This didn't matter previously as when fetching prices the SDK had a check for if it's a native asset and to pull from a different Coingecko API, and the balances code just calls this.provider.getBalance for the native asset. The default Coingecko API doesn't work with the 0xEee address:
> curl "https://api.coingecko.com/api/v3/simple/token_price/polygon-pos?contract_addresses=0x0000000000000000000000000000000000001010&vs_currencies=usd"
{"0x0000000000000000000000000000000000001010":{"usd":0.971639}}
> curl "https://api.coingecko.com/api/v3/simple/token_price/polygon-pos?contract_addresses=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&vs_currencies=usd"
{}

This is needed for switching to the Beets API.
Type of change

[x] Bug fix (non-breaking change which fixes an issue)

How should this be tested?

Ensure prices in pools and on claim page for MATIC related things look correct.
Ensure useTokenPricesQuery is returning the correct price for this address.

Checklist:

[x] I have performed a self-review of my own code
[x] I have requested at least 1 review (If the PR is significant enough, use best judgement here)
[x] I have commented my code where relevant, particularly in hard-to-understand areas
[x] If package-lock.json has changes, it was intentional.
[x] The base of this PR is master if hotfix, develop if not

For most other networks we reference the native asset address as 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE so I'm against changing this actually, we should do the conversion at the source of the issue.

The source of the issue is that this address is wrong though. Other networks use the EEE address because they use Ether as their native asset (and Gnosis Chain doesn't have a native asset address).
I'll try joins and swaps, it seems most things work because the address is self referential.

I tried a few different ways of joining/exiting/swapping and all seem to work correctly.


Attach file ids to spans

What was wrong?
https://github.com/ethereum/fe/blob/bfeffe82b4f8623330c1ebb1950ca981449c9e86/crates/common/src/diagnostics.rs#L8-L11
We also can't get a list of diagnostics with labels pointing to different source files.
How was it fixed?
Refactored things.
To-Do

[ ] OPTIONAL: Update Spec if applicable

[ ] Add entry to the release notes (may forgo for trivial changes)

[ ] Clean up commit history

Codecov Report

Merging #587 (6e2dc4a) into master (49e2ce9) will increase coverage by 0.08%.
The diff coverage is 79.59%.

@@            Coverage Diff             @@
##           master     #587      +/-   ##
==========================================
+ Coverage   88.16%   88.25%   +0.08%
==========================================
  Files          87       87
  Lines        7013     7074      +61
==========================================
+ Hits         6183     6243      +60
- Misses        830      831       +1

Impacted Files
Coverage Δ

crates/common/src/span.rs
73.33% <50.00%> (-8.49%)
:arrow_down:

crates/test-utils/src/lib.rs
89.65% <50.00%> (ø)

crates/common/src/diagnostics.rs
78.12% <71.42%> (+0.70%)
:arrow_up:

crates/parser/src/lib.rs
76.92% <75.00%> (ø)

crates/parser/src/parser.rs
77.01% <94.11%> (+1.49%)
:arrow_up:

crates/analyzer/src/traversal/call_args.rs
94.73% <100.00%> (+0.07%)
:arrow_up:

crates/common/src/files.rs
71.69% <100.00%> (ø)

crates/driver/src/lib.rs
72.50% <100.00%> (ø)

crates/lowering/src/utils.rs
100.00% <100.00%> (ø)

crates/parser/src/grammar/module.rs
82.55% <100.00%> (+0.60%)
:arrow_up:

... and 17 more

Continue to review full report at Codecov.

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


Launching sfa_app don't work

Hi,
Unable to launch the container correctly, package problem with yarn.
Here is what is displayed after a docker-compose up.
root@ip-XX-XX-XX-XX:/var/www/storefront-api# docker-compose -f docker-compose.yml up -d
Building app
Step 1/9 : FROM node:10-alpine
---> 955e0e1f1a41
Step 2/9 : ENV VS_ENV prod
---> Using cache
---> f0662d5d6ca5
Step 3/9 : WORKDIR /var/www
---> Using cache
---> 4fbd3d19fdd7
Step 4/9 : RUN apk add --no-cache curl git
---> Using cache
---> c20adfc485a4
Step 5/9 : COPY package.json ./
---> Using cache
---> 373136d9f3cc
Step 6/9 : COPY yarn.lock ./
---> Using cache
---> 327f2f1f48ce
Step 7/9 : RUN apk add --no-cache --virtual .build-deps ca-certificates wget &&     yarn install --no-cache &&     apk del .build-deps
---> Running in a01da6e43b48
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
(1/2) Installing wget (1.20.3-r0)
(2/2) Installing .build-deps (20200212.020116)
Executing busybox-1.31.1-r9.trigger
OK: 24 MiB in 25 packages
yarn install v1.21.1
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz: Request failed "404 Not Found"".
info If you think this is a bug, please open a bug report with the information provided in "/var/www/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
warning<EMAIL_ADDRESS>Invalid bin field for "url-loader".
warning<EMAIL_ADDRESS>Invalid bin entry for "sha.js" (in "sha.js").
ERROR: Service 'app' failed to build: The command '/bin/sh -c apk add --no-cache --virtual .build-deps ca-certificates wget &&     yarn install --no-cache &&     apk del .build-deps' returned a non-zero code: 1

Hey,
That looks like a problem with yarns Package registry and I just have tested the URL and it works for me.
So is it still a problem for you or is it gone?

Still a problem, but not with the link anymore.
Now the container is build without some packages, "url-loader" and "sha.js"
here is the error in build process.
yarn install v1.21.1
[1/4] Resolving packages...
[2/4] Fetching packages...
warning<EMAIL_ADDRESS>Invalid bin field for "url-loader".
warning<EMAIL_ADDRESS>Invalid bin entry for "sha.js" (in "sha.js").
info<EMAIL_ADDRESS>The platform "linux" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
Done in 38.15s.
WARNING: Ignoring APKINDEX.70f61090.tar.gz: No such file or directory
WARNING: Ignoring APKINDEX.ca2fea5b.tar.gz: No such file or directory
(1/2) Purging .build-deps (20200212.100841)
(2/2) Purging wget (1.20.3-r0)
Executing busybox-1.31.1-r9.trigger
OK: 24 MiB in 23 packages
Removing intermediate container 44e48cdd9f50
---> 7cd2729fa70a
Step 8/9 : COPY docker/storefront-api/storefront-api.sh /usr/local/bin/
---> 44e3f1c5cbe7
Step 9/9 : CMD ["storefront-api.sh"]
---> Running in 519a59ad9759
Removing intermediate container 519a59ad9759
---> 40c6848e58da
Successfully built 40c6848e58da
Successfully tagged sfa_app:latest
WARNING: Image for service app was built because it did not already exist. To rebuild this image you must use docker-compose build or docker-compose up --build.
Creating elasticsearch ... done
Creating sfa_redis_1   ... done
Creating sfa_app_1     ... done

The warnings are normal due to a new version of yarn and can be ignored according to https://github.com/yarnpkg/yarn/issues/7803
It says that all the images have been built successfully.
Try looking at the logs via docker logs sfa_app_1 to see if there are additional errors.

the error is coming when I want to empty the default index.
node scripts/db.js new
internal/modules/cjs/loader.js:796
throw err;
^
Error: Cannot find module '/var/www/storefront-api/scripts/db.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:793:17)
at Function.Module._load (internal/modules/cjs/loader.js:686:27)
at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10)
at internal/main/run_main_module.js:17:11 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}

the error is coming when I want to empty the default index.
node scripts/db.js new
internal/modules/cjs/loader.js:796
throw err;
^
Error: Cannot find module '/var/www/storefront-api/scripts/db.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:793:17)
at Function.Module._load (internal/modules/cjs/loader.js:686:27)
at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10)
at internal/main/run_main_module.js:17:11 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}

I found db.js in src/, and I modify the command like that
node src/db.js new
import config from 'config'
^^^^^^
SyntaxError: Cannot use import statement outside a module
at Module._compile (internal/modules/cjs/loader.js:891:18)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
at Module.load (internal/modules/cjs/loader.js:811:32)
at Function.Module._load (internal/modules/cjs/loader.js:723:14)
at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10)
at internal/main/run_main_module.js:17:11

Now, that is actually a bug.
We used to have a db.js in the vue-storefront-api project, but it is now replaced by db7.ts.
@ResuBaka Since we're starting out this project with ES7, how about we keep using db.js without the 7 to avoid future version problems?

@Abdoul19 That file just shares a similar name and is actually different in code.
The file that the script is trying to refer to is https://github.com/DivanteLtd/vue-storefront-api/blob/master/scripts/db.js which was built for ES5, but now we're using ES7, so we need to fix it.

Ok, but how can I empty the default index without that ?

See the command used here: https://github.com/DivanteLtd/storefront-api/blob/bbf2ebf6979102aaafd0bf64fc2168af393030b2/docs/guide/modules/tutorial.md

@themreza yea we should move the script for such cases back to .js and look that they work with calling them from node directly.
Here we need to even look into it a bit as we want in the feature that developer don't use this Repository directly. So we need to thing about moving these scripts to a @storefront-api/cli package maybe?
In develop branch most packages are already moved to there own packages. So you can just install them them when you need them.
@Abdoul19 to run the db7.ts you can just call yarn db7. That will run the scripts/db7.ts

/var/www/storefront-api# yarn db7
yarn run v1.21.1
$ export TS_NODE_PROJECT="tsconfig.json" && ts-node -r tsconfig-paths/register scripts/db7.ts
/bin/sh: 1: ts-node: not found
error Command failed with exit code 127.

Do you have the devDependencies installed?

I have npm, yarn, git, docker & docker-compose installed

Do you have an node_modules/ts-node folder?

Do you have an node_modules/ts-node folder?

Don't see that anywhere

Can you try if that works for you docker-compose exec app yarn db7.
As the node_modules with the docker setup are all installed in the docker container that is running.

Can you try if that works for you docker-compose exec app yarn db7.
As the node_modules with the docker setup are all installed in the docker container that is running.

$ export TS_NODE_PROJECT="tsconfig.json" && ts-node -r tsconfig-paths/register scripts/db7.ts

this work for empty the default index
docker exec -it sfa_app_1 yarn restore7


Server throwing "Error: Can't set headers after they are sent"

After every request, I'm receiving this error:
frontend ERR: Unhandled rejection Error: Can't set headers after they are sent.
    at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:346:11)
    at ServerResponse.header (/Users/kincaid/bearserver/node_modules/express/lib/response.js:718:10)
    at ServerResponse.send (/Users/kincaid/bearserver/node_modules/express/lib/response.js:163:12)
    at ServerResponse.json (/Users/kincaid/bearserver/node_modules/express/lib/response.js:249:15)
    at ServerResponse.send (/Users/kincaid/bearserver/node_modules/express/lib/response.js:151:21)
    at /Users/kincaid/bearserver/modules/routes/schedules.js:40:22
    at tryCatcher (/Users/kincaid/bearserver/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/Users/kincaid/bearserver/node_modules/bluebird/js/release/promise.js:510:31)
    at Promise._settlePromise (/Users/kincaid/bearserver/node_modules/bluebird/js/release/promise.js:567:18)
    at Promise._settlePromise0 (/Users/kincaid/bearserver/node_modules/bluebird/js/release/promise.js:612:10)
    at Promise._settlePromises (/Users/kincaid/bearserver/node_modules/bluebird/js/release/promise.js:687:18)
    at Async._drainQueue (/Users/kincaid/bearserver/node_modules/bluebird/js/release/async.js:138:16)
    at Async._drainQueues (/Users/kincaid/bearserver/node_modules/bluebird/js/release/async.js:148:10)
    at Immediate.Async.drainQueues (/Users/kincaid/bearserver/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:570:20)
    at tryOnImmediate (timers.js:550:5)
    at processImmediate [as _immediateCallback] (timers.js:529:5)

Which isn't fatal, but I get a similar error that is fatal after I send multiple requests in very quick succession:
frontend ERR: /Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/async.js:43
        fn = function () { throw arg; };
                           ^

Error: Can't set headers after they are sent.
    at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:346:11)
    at ServerResponse.header (/Users/kincaid/bearserver/node_modules/express/lib/response.js:718:10)
    at ServerResponse.send (/Users/kincaid/bearserver/node_modules/express/lib/response.js:163:12)
    at /Users/kincaid/bearserver/modules/routes/schedules.js:47:20
    at tryCatcher (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/util.js:26:23)
    at Promise.successAdapter (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/nodeify.js:23:30)
    at Promise._settlePromiseAt (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/promise.js:579:21)
    at Promise._settlePromises (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/promise.js:697:14)
    at Async._drainQueue (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/async.js:123:16)
    at Async._drainQueues (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/async.js:133:10)
    at Immediate.Async.drainQueues (/Users/kincaid/bearserver/node_modules/ioredis/node_modules/bluebird/js/main/async.js:15:14)
    at runCallback (timers.js:570:20)
    at tryOnImmediate (timers.js:550:5)
    at processImmediate [as _immediateCallback] (timers.js:529:5)

I'm using redis 3.2.3 and running src/redis-server to start it up. As for the backend, I'm just running cake build and then cake host.
The errors occur after sending normal GET requests via Postman to localhost:3000/api/week/2016-09-07, with no special headers.
Any ideas on what could be causing this?

This only happened for /week, right? I forgot the closing else statement, so express would always send two responses.

Yes, /day doesn't cause the issue.
However, with the fix now /week returns null for each day (if a {date} parameter was sent)...

I'll attach a debugger and see what's going on.

It works for me, so any problems are on your end at this point. Check the latest commit, it has some logic revisions that may fix it.

Looks good! Even spamming it with requests works great.


Sanity check-/resources/references

Hi Team,
I have noticed a few observations which are given below. Please look into the below and do the needful.
Reference Links:-
Franklin Site:- https://main--aldevron--hlxsites.hlx.page/resources/references
Existing Site:- https://www.aldevron.com/resources/references

Href text issue in the accordion
Accordion effect issue

Detailed:-

Href text in the accordion, please look into the below snap.

Accordion effect issue, please follow the below steps and observe.

Open the provided URL
Expand the first accordion
Now, open the second or third accordion and observe.

Hi Team,
This is working as expected. Hence closing the ticket


Convert SurfaceBlur kernel to custom filter in MetalPetal

How would I go about converting the following custom kernel to a metal petal filter in a pipeline?
float normpdf(in float x, in float sigma)
{
    return 0.39894*exp(-0.5*x*x/(sigma*sigma))/sigma;
}

float normpdf3(in vec3 v, in float sigma)
{
    return 0.39894*exp(-0.5*dot(v,v)/(sigma*sigma))/sigma;
}

kernel vec4 filterKernel(sampler inputImage, float bsigma) {
    const int SAMPLES_COUNT = MACRO_SAMPLES_COUNT;

    float GAUSSIAN_WEIGHTS[SAMPLES_COUNT];
    MACRO_SETUP_GAUSSIAN_WEIGHTS
    /*
        float sigma = float(kSize);
        for (int j = 0; j <= kSize; ++j)
        {
            GAUSSIAN_WEIGHTS[kSize+j] = GAUSSIAN_WEIGHTS[kSize-j] = normpdf(float(j), sigma);
        }
    */

    const int kSize = (SAMPLES_COUNT-1)/2;
    vec3 finalColor = vec3(0.0);

    vec3 c = sample(inputImage,samplerCoord(inputImage)).rgb;

    float Z = 0.0;

    vec3 cc;
    float factor;
    float bZ = 1.0/normpdf(0.0, bsigma);

    for (int i=-kSize; i <= kSize; ++i)
    {
        for (int j=-kSize; j <= kSize; ++j)
        {
            cc = sample(inputImage,samplerTransform(inputImage, destCoord().xy + vec2(float(i),float(j)))).rgb;
            factor = normpdf3(cc-c, bsigma)*bZ*GAUSSIAN_WEIGHTS[kSize+j]*GAUSSIAN_WEIGHTS[kSize+i];
            Z += factor;
            finalColor += factor*cc;
        }
    }

    return vec4(finalColor/Z, 1.0);
}

☝ The following kernel exists in your old repo Vivid and I'd like to move into a .metal file. You were also computing the gaussian weights during runtime and injecting it via a string which is probably not efficient.

@YuAo how would you suggest I go about tackling this myself?

You can try to just convert the shader code to metal shader code. Subclass MTIUnaryImageRenderingFilter. Using MTIVector to pass GAUSSIAN_WEIGHTS as device float *.
Pass SAMPLES_COUNT as Int32. To improve performance, consider using function constants to pass the SAMPLES_COUNT value.

I believe a CIColorKernel is different from say fragment float4 function(...) in Metal. Wouldn't the performance be subpar in a fragment shader given the two for loops you are utilizing?
Thanks for the update YuAo.

For the first question, yes, however they share the same idea. A CIColorKernel and a fragment shader both run once per pixel, and you need to return the new color for that pixel.
For the second one, the two loops will be a performance subpar, unless you made the loop counter kSize a function constant. Making the loop counter a function constant allows the back-end shader compiler aware of the loop count and compile the specialized function when you create the render pipeline.

@ZkHaider take a look at https://github.com/MetalPetal/SurfaceBlur


scrabble-score: add tests for optional extensions? (:double/:triple letter values)

In the scrabble-score exercise, there is the optional section to implement the double-letter-value mechanism. However, there are no tests to guide one when doing this.
I stumbled over this while implementing scrabble-score for the rust-track.
My pull-request against xrust was redirected here for broader discussion.
Should we add tests for this optional section? Or are those intentionally not included to encourage the exerciser to try his/her hand at test-writing?

Should we add tests for this optional section?

No
I also wrote about this here: https://github.com/exercism/x-common/issues/512#issuecomment-275047297

The main problem that should be well described and covered by the canonical-data tests is just the word scoring.

The discussion about how to implement the extensions is part of the extended work and should not be specified in the problem description.

Thanks for the feedback! I'll stop work in that direction then.


Allow attributes to be passed through on images

It would helpful if you could assign attributes like height, width, or data-* when using this component and have those pass through to the lazy loaded image.

:+1: would be handy to pass data-no-retina

@twokul thanks!


GitLens diff window not viewable

GitLens Version: 2.23.0.windows.1
VSCode Version: 1.53.2 622cb03f7e070a9670c94bae1a45d78d7181fbd4 x64
OS Details

Description
Information

Edition
Windows 10 Enterprise

Version
20H2

Installed on
8/31/2020

OS build
19042.804

Experience
Windows Feature Experience Pack 120.2212.551.0

Steps to Reproduce:
https://user-images.githubusercontent.com/5862477/109225409-3ea39700-778b-11eb-811f-e4995de452e2.mp4

@frankmit11 That seems like a VS Code bug, are you still seeing that behavior?

@eamodio Problem appears to be resolved now, not entirely sure why....if I encounter this again I will open an issue with VS Code.

Sounds good thanks!


Prepare compose modules to be converted to Kotlin DSL

WHAT
Preparing the compose modules to be converted to Kotlin DSL
WHY
Following up #846  relating to #833
HOW
Following https://docs.gradle.org/current/userguide/migrating_from_groovy_to_kotlin_dsl.html#prepare_your_groovy_scripts to make the modules easy to convert to Kotlin DSL
Checklist :clipboard:

[x] Add explicit visibility modifier and explicit return types for public declarations
[x] Run spotless check
[x] Run tests
[x] Update metalava's signature text files

Rebase with main ☝

Is CI cancelled after 30 min? :)

Is CI cancelled after 30 min? :)

yup, we might have to review this, it seems to be cancelling more frequently

Aha okay, well good to know  :) Thanks! :)


Create a guide for contributors

Create a document for setting up the project for development.
We could use the text of the Contributing page for AppSignal as a basis:
https://github.com/appsignal/appsignal-docs/pull/48

I made a careful start at AppSignal writing a contributor guide you linked. It's a high level description of how to contribute to basically any kind of (open source) project. We should, along with #808, describe how to report an issue, what kind of information we need, how to submit a PR and what standards it needs to follow.

#809 has a first pass at implementing a CONTRIBUTING.md, loosely based on your AppSignal guide, and the one for factory_girl_rails, which : https://raw.githubusercontent.com/thoughtbot/factory_girl_rails/master/CONTRIBUTING.md. I also looked at the CONTRIBUTING file for Rust: https://raw.githubusercontent.com/rust-lang/rust/master/CONTRIBUTING.md

I've now merged PR #809, which provides a CONTRIBUTING.md, and have opened #812 to specifically track work on a longer DEVELOPING.md document.


implemented multi state support

hi @ruslan-volyanyk , could you please provide some use case here. thanks

yeah, sure. P.S. sorry for so late response
Model
attr_accessor :aasm_state_event   enum aasm_state: %i(unknown performing success)   aasm :performing_transaction, column: :aasm_state, enum: true do   .....   .....   .....   attr_accessor :editing_status_event   enum editing_status: %i(changes_approved pending_changes)   aasm :editing_info, column: :editing_status, enum: true do   .....   .....   .....
rails_admin
  .....   list do     field :aasm_state, :state do       state_machine_name :performing_transaction     end     field :editing_status, :state do       state_machine_name :editing_info     end  end  .....

tested and merged.
If there could be a readme file udpate pull request, it will be better.
Thanks


rename c# to csharp

closes #260
closes #243

@bacongobbler,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

Codecov Report

Merging #262 into master will increase coverage by 0.1%.
The diff coverage is 66.66%.

@@            Coverage Diff            @@
##           master     #262     +/-   ##
=========================================
+ Coverage   31.06%   31.16%   +0.1%
=========================================
  Files          27       27
  Lines        1732     1739      +7
=========================================
+ Hits          538      542      +4
- Misses       1116     1118      +2
- Partials       78       79      +1

Impacted Files
Coverage Δ

cmd/draft/create.go
43.8% <66.66%> (+0.95%)
:arrow_up:

Continue to review full report at Codecov.

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


Support HTTP server along with the current websocket server

          As discussed, received message:

curl -F<EMAIL_ADDRESS>ws://localhost:8080
curl: (1) Protocol "ws" not supported or disabled in libcurl

Originally posted by @kanjoe24 in https://github.com/rdkcentral/ut-control/pull/2#discussion_r1636226220

e.g. sending data via binary curl command
curl -X POST -F<EMAIL_ADDRESS>\
    -F "description=This is a lovely photo" \
    https://api.example.com/upload

or sending data via an octet stream
curl -X POST --data-binary<EMAIL_ADDRESS>\
    -H "Content-Type: application/octet-stream" \
    https://api.example.com/upload

json formatted data can be sent this way
curl -X POST -H "Content-Type: multipart/form-data" \
    -F "metadata=@/path/to/your/metadata.json;type=application/json" \
    -F<EMAIL_ADDRESS>\
    https://api.example.com/upload

or yaml this way
curl -X POST -H "Content-Type: multipart/form-data" \
    -F<EMAIL_ADDRESS>\
    -F<EMAIL_ADDRESS>\
    https://api.example.com/upload

While application/x-yaml is sometimes used for YAML files, there isn't an official MIME type specifically called application/yaml.
Using type=application/x-yaml in multipart form uploads (like the examples I provided) is generally acceptable, and many servers will understand it. However, it's not strictly standardized.
Here are some alternative approaches for sending YAML data:

Multipart Form with application/x-yaml (Most Common):
-F "config=@/path/to/your/config.yaml;type=application/x-yaml"

Raw Body with application/x-yaml (For APIs That Support It):
-H "Content-Type: application/x-yaml" -d @/path/to/your/data.yaml

Raw Body with text/plain or text/yaml (If the Server is Flexible):
-H "Content-Type: text/plain" -d @/path/to/your/data.yaml

or
-H "Content-Type: text/yaml" -d @/path/to/your/data.yaml


It also gives back the same results (we compared the tiles.txt).
Would never have suspected this but even if we optimize the PostgreSQL like crazy (like by avoiding recursion by storing the tiles into a table and join it). I don't think we can come close to the speed we have with tilecover now.
The performance increase is due to the different approaches.
With tilecover we just calculate the tiles for the dirty shapes
while in PostgreSQL in the essence we check for each tile whether the shape touches the tile (the geometry && CDB_XYZ_Extent part of the query).

This also resolves #141

Please check #153 @lukasmartinelli


Download function throws regex error

The download function throws this error when I pass in a correct youtube link

Edit: fixed image

This has been fixed in the 0.7.11 release.


Add rollForward to the global.json config

Currently exactly the same version of .net core as defined in the global.json is required.

The roll-forward policy to use when selecting an SDK version, either as a fallback when a specific SDK version is missing or as a directive to use a higher version.

https://docs.microsoft.com/en-us/dotnet/core/tools/global-json?tabs=netcore3x#rollforward
With, for example, rollforward = feature those who have newer version of SDK than one that is specified will be able to load project without error.

Hi there,
added rollForward now to the global.json.
Does that work for you now?

Yep, thanks


Tekton Task acceptance tests

Implements acceptance tests for the verify-enterprise-contract Tekton Task. The acceptance test harness launches a Kind cluster, installs from Kustomization from hack/test the required components: image registry, Tekton Pipelines & Webhooks, EnterpriseContractPolicy custom resource.
The current implementations of feature steps allow for creation of a working namespace provisioned via hack/work Kustomization, EnterpriseContractPolicy object creation, launching the verify-enterprise-contract Tekton Task via TaskRun, and asserting that the Task succeeded.
The ec-cli and the verify-enterprise-contract Tekton Task bundle images are built and pushed to the cluster. The Tekton Task bundle image is tagged with the version from the directory it is placed in, e.g.:
registry.image-registry.svc.cluster.local:46859/ec-task-bundle:0.1

And the ec-cli image is tagged with the latest-<os>-<arch>, e.g.:
registry.image-registry.svc.cluster.local:46859/ec-cli:latest-linux-amd64

Ref. https://issues.redhat.com/browse/HACBS-1420

In draft, the current to-do list is:

[ ] build ec image and v-e-c task bundle, push them to the cluster registry
[ ] make sure Kind cluster's name is unique (seed the random)
[ ] better diagnostics on task failure
[ ] code comments

The acceptance test now runs the Task with STRICT=true and using a policy with the single rule (slsa_provenance_available). A new commit was added needed to fix an issue when the policy includes the public key:
Remove default for PUBLIC_KEY parameter
Given that the policy itself can provide the public key needed for signature verification we should not have a default for the PUBLIC_KEY parameter. Having the default there will override the public key from the policy and the signature would be deemed invalid.

Running this:
go test -v -tags=acceptance ./internal/acceptance -args -persist -tags=@focus

It worked nicely.
Then I ran it again and hit this failures:
--- Failed steps:

  Scenario: Golden container image # /home/sbaird/dev/ec-cli/features/task.feature:8
    Given a cluster running # /home/sbaird/dev/ec-cli/features/task.feature:6
      Error: could not find a log line that matches "Reached target .*Multi-User System.*|detected cgroup v1"

If I use make acceptance it passes and doesn't leave the kind controller container running, so I can run that multiple times and get multiple passes.
The time taken on my system is around 85 seconds.

I managed to get the same error Simon got above, from docker daemon logs:
Dec 19 19:09:45 zregvart dockerd[69135]: time="2022-12-19T19:09:45.403804715+01:00" level=info msg="No non-localhost DNS nameservers are left in resolv.conf. Using default external servers: [nameserver <IP_ADDRESS> nameserver <IP_ADDRESS>]"
Dec 19 19:09:45 zregvart dockerd[69135]: time="2022-12-19T19:09:45.404105415+01:00" level=info msg="IPv6 enabled; Adding default IPv6 external servers: [nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844]"
Dec 19 19:09:45 zregvart dockerd[69165]: time="2022-12-19T19:09:45.474304799+01:00" level=info msg="loading plugin \"io.containerd.event.v1.publisher\"..." runtime=io.containerd.runc.v2 type=io.containerd.event.v1
Dec 19 19:09:45 zregvart dockerd[69165]: time="2022-12-19T19:09:45.474491735+01:00" level=info msg="loading plugin \"io.containerd.internal.v1.shutdown\"..." runtime=io.containerd.runc.v2 type=io.containerd.internal.v1
Dec 19 19:09:45 zregvart dockerd[69165]: time="2022-12-19T19:09:45.474506949+01:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.task\"..." runtime=io.containerd.runc.v2 type=io.containerd.ttrpc.v1
Dec 19 19:09:45 zregvart dockerd[69165]: time="2022-12-19T19:09:45.474636374+01:00" level=info msg="starting signal loop" namespace=moby path=/run/docker/containerd/daemon/io.containerd.runtime.v2.task/moby/d122277e9252f8d00dc3bfd2a162ee91dfabda11b76bf110d2bdacb1cef1f089 pid=329338 runtime=io.containerd.runc.v2
Dec 19 19:09:45 zregvart dockerd[329387]: time="2022-12-19T19:09:45+01:00" level=info msg="Firewalld: docker zone already exists, returning"
Dec 19 19:09:45 zregvart dockerd[69165]: time="2022-12-19T19:09:45.709065334+01:00" level=warning msg="error from *cgroupsv2.Manager.EventChan" error="failed to create inotify fd"
Dec 19 19:09:45 zregvart d122277e9252[69135]: INFO: ensuring we can execute mount/umount even with userns-remap
Dec 19 19:09:45 zregvart d122277e9252[69135]: INFO: remounting /sys read-only
Dec 19 19:09:45 zregvart d122277e9252[69135]: INFO: making mounts shared
Dec 19 19:09:45 zregvart d122277e9252[69135]: INFO: detected cgroup v2
Dec 19 19:09:45 zregvart d122277e9252[69135]: INFO: clearing and regenerating /etc/machine-id
Dec 19 19:09:45 zregvart dockerd[69135]: time="2022-12-19T19:09:45.738792727+01:00" level=error msg="Error streaming logs: error getting journald fd: Too many open files" container=d122277e9252f8d00dc3bfd2a162ee91dfabda11b76bf110d2bdacb1cef1f089 method="(*Daemon).ContainerLogs" module=daemon
Dec 19 19:09:45 zregvart d122277e9252[69135]: Initializing machine ID from random generator.
 Odd...

I'm now getting Failed to allocate directory watch: Too many open files when I try systemctl restart. Odd...

Might have to bump the inotify values. Here's what I have:
$ sysctl fs.inotify
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 512
fs.inotify.max_user_watches = 524288

I'll merge this, created HACBS-1523 to followup on -persisted issues.

Actually I didn't intentionally want it to -persist, when I was trying the focus test - I think just copy/pasted the command without paying enough attention.