Encoding of tuples in OpenAPI does not conform to spec

Example; this definition
  val foo: Endpoint[Unit, (String, Long)] =
    endpoint(
      request = get(path / "foo"),
      response = ok(jsonResponse[(String, Long)])
    )

produces this OpenAPI definition for response content (items is an array of SchemaObject)
"content": {
  "application/json": {
    "schema": {
      "type": "array",
      "items": [
        {
          "type": "string"
        },
        {
          "type": "integer",
          "format": "int64"
        }
      ]
    }
  }
}

but, OpenAPI spec is explicitly against that. In this part, it's stated:

items - Value MUST be an object and not an array. Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema. items MUST be present if the type is array.

OpenAPI 3.0 doesn't seem to have a proper encoding for tuples, unfortunately, but it might be better to produce (not perfectly precise) approximation that conforms spec.

Would it be interesting to switch to OpenAPI 3.1 and use its encoding of tuples, instead? I’m not sure how well is OpenAPI 3.1 supported by tools, though…

I think the tooling for 3.1 is not quite there, yet.
But having said that, I'm perfectly fine that this sits until tooling is ready for 3.1 (if there are no plans to support both 3.0 and 3.1, of course).

It seems we will have to wait a bit before 3.1 is supported by tools :-/
I think it’s better to use a representation of tuples that is compatible with OAS 3.0 then. Would you be interested in doing so? I think a reasonable representation would be an array whose items have oneOf the elements’ schemas. Does that make sense?

Would you be interested in doing so?

Sure, I can try.

I think a reasonable representation would be an array whose items have oneOf the elements’ schemas. Does that make sense?

Yes. The closest approximation I could find is like:
type: array
items:
  oneOf:
    - type: integer
    - type: string
minItems: 2
maxItems: 2

That schema does allow invalid value like ["foo", 1], though, so it's not perfect but close approximation.
(such OpenAPI schema would allow invalid values, but Scala server interpreter would obviously reject it)

Thank you! Please note that the code that handles tuples schemas is generated, it lives in directories named src/main/boilerplate/.


How to add back navigation for epub view

What do you mean by "button"?

Sorry my bad I want back navigation from the epub view so that the user will be redirected to my app

The back button is available on iOS but not on android yet.

Will this feature be developed for Android?
We could even change the chapters button for a back button.


creating colunms with ng-repeat fails.

Hi there - first of all - awesome grid :-) thanks a lot for this :+1:
But I'm having an issue.. I'd like to setup the columns for a grid dynamically..
I tried to make that happen by adding

and no fields="" -attribute present.
But then, the items don't get rendered anymore.. no errors in console.
If i add the fields=""-attribute to the grid, the column-definitions are being ignored - but i need these in order to specify the display-name ;-)
Is there a way to do what i'm trying ? or is this a bug ?
any help is appreciated! :)

Let's call it.... an annoying limitation :laughing:
#91 discusses this.


BUG on Windows platform using TOML config files

in config.go file the class path instead of filepath is used to parse the directory and file. This result in an empty directory on windows which uses \ as separator instead of /
changing the following line form
dir, file := path.Split(filePath)
to
dir, file := filepath.Split(filePath)
fixes the issue since 	"path/filepath" is already imported in the beginning of the file

Hi @khalifeserge, send a pull request!


[Project Monitors] Support multiple hosts/urls/ports in lightweight monitors.

Lightweight monitors in the synthetics agent currently do not support the popular multiple hosts feature. When users want to check a list of hosts with the same config, they can use a config like:
- type: tcp
  id: special-monitors
  name: Special Monitors
  hosts: ["<IP_ADDRESS>:8080", "<IP_ADDRESS>:8080", "<IP_ADDRESS>:8080"]
  schedule: "@every 5m"
  tags: ["special"]

and easily monitor all three. We currently prevent that in our Kibana validation, because it would move us from a 1:1 saved object -> monitor relationship to a 1:N relationship. This issue would solve that by having the synthetics agent essentially treat the hosts and urls fields as a macro, expanding it before communicating to the API.
This requires us to also add the host to both the id and name fields to prevent clashes. This is done today in heartbeat by hashing the host then appending it to the ID in wrappers.go. We currently do not do something similar for the name, relying on the UI to show the name and the URL consistently side-by-side. I propose we change this, and include the plain text URL in the name as a suffix, so, in the example above we'd have names like Special Monitors - <IP_ADDRESS>:8080.
ACs:

Add support for multiple urls
Add support for multiple hosts
Add support for multiple ports

Are there any updates about this issue?

Added this is also needed for ports


Deployment failed

While deploying this accelerator (https://github.com/Azure-Samples/chat-with-your-data-solution-accelerator/blob/main/docs/LOCAL_DEPLOYMENT.md)  performing a local deployment i am getting the following error which does not provide much details
{
'code': 'DeploymentFailed',
'target': '/subscriptions/f413fa15-c612-4fd4-85e8-949dd818aeee/resourceGroups/rg-rg-ipas-002/providers/Microsoft.Resources/deployments/backend-qrwpczu6q6ozk',
'message': 'At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-deployment-operations for usage details.',
'details': [
{
'code': 'BadRequest',
'target': '/subscriptions/f413fa15-c612-4fd4-85e8-949dd818aeee/resourceGroups/rg-rg-ipas-002/providers/Microsoft.Web/sites/backend-qrwpczu6q6ozk/host/default/functionKeys/clientKey',
'message': '{\r\n  \'Code\': \'BadRequest\',\r\n  \'Message\': \'Encountered an error (InternalServerError) from host runtime.\',\r\n  \'Target\': null,\r\n  \'Details\': [\r\n    {\r\n      \'Message\': \'Encountered an error (InternalServerError) from host runtime.\'\r\n    },\r\n    {\r\n      \'Code\': \'BadRequest\'\r\n    },\r\n    {\r\n

\'ErrorEntity\': {\r\n        \'Code\': \'BadRequest\',\r\n        \'Message\': \'Encountered an error (InternalServerError) from host runtime.\'\r\n      }\r\n    }\r\n  ],\r\n  \'Innererror\': null\r\n}'
}
]
instructions followed: https://github.com/Azure-Samples/chat-with-your-data-solution-accelerator/blob/main/docs/LOCAL_DEPLOYMENT.md

Hi @yaowilli - Thanks for reaching out to us.
Can you please let us know more details on below points, while we are investigating this issue?

Did you used Dev Container for Local Deployment?
Are you getting this issue post you executed azd up?
Did you try redeploying?
Also, have you tried one click deployment? If yes are you facing similar issue there as well?

Hello

Did you used Dev Container for Local Deployment? [William]: using docker container
Are you getting this issue post you executed azd up?  [William]: Yes
Did you try redeploying? [William]: did try several times
Also, have you tried one click deployment? If yes are you facing similar issue there as well? [William]: tried one click deployment but the template is incorrect I do not to the deployment

From: Roopan-Microsoft @.>
Sent: Thursday, August 1, 2024 10:21 AM
To: Azure-Samples/chat-with-your-data-solution-accelerator @.>
Cc: Yao, William @.>; Mention @.>
Subject: Re: [Azure-Samples/chat-with-your-data-solution-accelerator] Deployment failed (Issue #1195)
Hi @yaowillihttps://github.com/yaowilli - Thanks for reaching out to us.
Can you please let us know more details on below points, while we are investigating this issue?

Did you used Dev Container for Local Deployment?
Are you getting this issue post you executed azd up?
Did you try redeploying?
Also, have you tried one click deployment? If yes are you facing similar issue there as well?

—
Reply to this email directly, view it on GitHubhttps://github.com/Azure-Samples/chat-with-your-data-solution-accelerator/issues/1195#issuecomment-2263575034, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AZAPQCPUC3GGJJAC2ZINFTDZPJU7JAVCNFSM6AAAAABLWXFCC2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRTGU3TKMBTGQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

the error occurs during the execution of azd deploy inside azd up wrapper

Would you please have any suggestion ?
This help page here is not helpful https://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/common-deployment-errors
From: Roopan-Microsoft @.>
Sent: Thursday, August 1, 2024 10:21 AM
To: Azure-Samples/chat-with-your-data-solution-accelerator @.>
Cc: Yao, William @.>; Mention @.>
Subject: Re: [Azure-Samples/chat-with-your-data-solution-accelerator] Deployment failed (Issue #1195)
Hi @yaowillihttps://github.com/yaowilli - Thanks for reaching out to us.
Can you please let us know more details on below points, while we are investigating this issue?

Did you used Dev Container for Local Deployment?
Are you getting this issue post you executed azd up?
Did you try redeploying?
Also, have you tried one click deployment? If yes are you facing similar issue there as well?

—
Reply to this email directly, view it on GitHubhttps://github.com/Azure-Samples/chat-with-your-data-solution-accelerator/issues/1195#issuecomment-2263575034, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AZAPQCPUC3GGJJAC2ZINFTDZPJU7JAVCNFSM6AAAAABLWXFCC2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRTGU3TKMBTGQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

Any news on this topic, i am facing same issue when deploy the pack into our azure environment.

I was able to fix the issue

Hi @yaowilli What did you do to fix this Issue?

add the storage blob data contributor and storage data reader roles to the managed identity of the function app and ensure that when deploying solution you have in bicep file
@allowed(['Enabled', 'Disabled'])
param publicNetworkAccess string = 'Enabled'

Hi @yaowilli - do you fancy putting together a Pull Request and I will review

sure how ?

Hi, I am still getting this issue. I have tried to deploy using the one click deployment and it fails in the same place,

I can see the bicep file has been updated in the code, and I added the storage blob data contributor role for the storage account to the function app:

add the storage blob data contributor and storage data reader roles to the managed identity of the function app and ensure that when deploying solution you have in bicep file @Allowed(['Enabled', 'Disabled']) param publicNetworkAccess string = 'Enabled'

However when I redeploy this section it asks for the clientKey, which I thought was generated. Any ideas?


don't set HOME and run UPDATE as the user

This should resolve some issues with pip not being able to cache,
and is cleaner anyway
Closes #96

I've run it and get
default: cannot touch '/root/.bashrc'
    default: : Permission denied
    default: An error occurred in /home/sirfuser/devel/CCPPETMR_VM/scripts/UPDATE.sh at line 69. Current working-dir: /home/sirfuser/devel/CCPPETMR_VM

The error is originated at this line by touch ~/.bashrc
Apparently ~ is expanded to /root which is not what is expected as the UPDATE.sh script is launched as sudo -u $SIRFUSERNAME bash $userHOME/devel/CCPPETMR_VM/scripts/UPDATE.sh

great. looks good. feel free to merge when you're ready


:seedling:  mock cluster event for e2e test

Summary
Related issue(s)
Fixes # https://issues.redhat.com/browse/ACM-11690

/retest


Kurtosis schedules pods to the same node, even if there are multiple nodes are available

What's your CLI version?
0.80.12
Description & steps to reproduce
I use digitalocean as a kubernetes cluster. The cluster has 2 nodes, with max nodes set to 6.
NAME                       STATUS   ROLES    AGE   VERSION
chaos-ams3-default-f1158   Ready    <none>   2d    v1.27.2
chaos-ams3-default-fzppo   Ready    <none>   92m   v1.27.2

I used the config below to deploy a workload on this cluster:
{
  "participants": [
    {
      "el_client_type": "geth",
      "el_client_image": "ethpandaops/geth:4844-devnet-6-e03b5ad",
      "cl_client_type": "lighthouse",
      "cl_client_image": "ethpandaops/lighthouse:boxed-blobs-d534ac0",
      "count": 8
    }
  ],
  "network_params": {
    "deneb_fork_epoch": 3
  },
  "launch_additional_services": true,
  "wait_for_finalization": false,
  "wait_for_verifications": false,
  "global_client_log_level": "info"
}

Its expected to spin up 8 pairs of ethereum nodes.
However, most of these pods getting killed due to running out of resources.
When inspecting the cluster, I can see that all the pods got scheduled to the same node, which will not be sufficient to run all these containers:
k -n kurtosis-enclave--5f9291d1b4414340a936ee2717bbfd2c get pods -owide
NAME                             READY   STATUS                   RESTARTS   AGE     IP             NODE                       NOMINATED NODE   READINESS GATES
cl-1-lighthouse-geth             1/1     Running                  0          2m22s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-1-lighthouse-geth-validator   1/1     Running                  0          2m10s   <IP_ADDRESS>     chaos-ams3-default-fzppo   <none>           <none>
cl-2-lighthouse-geth             1/1     Running                  0          2m7s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-2-lighthouse-geth-validator   1/1     Running                  0          2m3s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-3-lighthouse-geth             1/1     Running                  0          118s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-3-lighthouse-geth-validator   1/1     Running                  0          114s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-4-lighthouse-geth             1/1     Running                  0          110s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-4-lighthouse-geth-validator   1/1     Running                  0          104s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-5-lighthouse-geth             1/1     Running                  0          100s    <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-5-lighthouse-geth-validator   1/1     Running                  0          96s     <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-6-lighthouse-geth             1/1     Running                  0          92s     <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
cl-6-lighthouse-geth-validator   1/1     Running                  0          87s     <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
el-1-geth-lighthouse             0/1     OOMKilled                0          3m59s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
el-2-geth-lighthouse             0/1     OOMKilled                0          3m51s   <IP_ADDRESS>   chaos-ams3-default-fzppo   <none>           <none>
el-3-geth-lighthouse             0/1     OOMKilled                0          3m47s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
el-4-geth-lighthouse             1/1     Running                  0          3m42s   <IP_ADDRESS>     chaos-ams3-default-fzppo   <none>           <none>
el-5-geth-lighthouse             0/1     ContainerStatusUnknown   1          3m36s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
el-6-geth-lighthouse             0/1     OOMKilled                0          3m28s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
el-7-geth-lighthouse             0/1     OOMKilled                0          3m17s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
el-8-geth-lighthouse             1/1     Running                  0          3m10s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>
kurtosis-api                     1/1     Running                  0          5m21s   <IP_ADDRESS>    chaos-ams3-default-fzppo   <none>           <none>

I have a feeling that kurtosis somehow trying to handle pod scheduling instead of letting the kubernetes scheduler to do this for it.
Desired behavior
Inspect how many nodes there are available, and based on that do Round Robin distribution of the node pairs into different machines.
Working some magic with an autoscaler would be icing on top.
What is the severity of this bug?
Painful; this is causing significant friction in my workflow.

Oh that's super weird; we don't touch the scheduling algorithm at all - just throw Pods at Kubernetes and let it do its thing. I suspect that it's related to your discussion on #952 , where - because the resource limits aren't getting set - Kubernetes thinks "oh these are very light Pods" and just throws them all on the same node, but in reality they're very heavy. If you were to hack in a min_memory requirement to the ServiceConfig that you're using, does that solve the scheduling?

And re.

Working some magic with an autoscaler would be icing on top.

Coming in the next 1-2 months ;)


UAVCAN v1.0 done

The library has been somewhat reworked. Don't look at the diff, it is too large -- this change is impossible to do incrementally in a sensible way.
The new implementation offers hard time complexity guarantees as discussed in https://github.com/UAVCAN/libuavcan/issues/185. The new implementation supports both Classic CAN and CAN FD without the need for compile-time configuration selection (https://github.com/UAVCAN/libcanard/pull/103). The new implementation offers a much simplified API that operates on contiguous memory buffers instead of small fixed-size blocks (https://forum.uavcan.org/t/canardrxtransfer-payload-reading/600).
After this PR is merged, I am going to do the branch swap: master will be v1.0, and the current master will become legacy-v0.
Fixes https://github.com/UAVCAN/libcanard/issues/131
Fixes https://github.com/UAVCAN/libcanard/issues/129 (this case is covered by tests)
Fixes https://github.com/UAVCAN/libcanard/issues/126
Fixes https://github.com/UAVCAN/libcanard/issues/125
Fixes https://github.com/UAVCAN/libcanard/issues/117 (completely new memory management)
Fixes https://github.com/UAVCAN/libcanard/issues/105
Fixes https://github.com/UAVCAN/libcanard/issues/104 (there is no DESIGN.md, the description has been moved into the header file)
Fixes https://github.com/UAVCAN/libcanard/issues/102 (100% test coverage)
Fixes https://github.com/UAVCAN/libcanard/issues/69 (https://forum.uavcan.org/t/platform-specific-components/768)
Closes https://github.com/UAVCAN/libcanard/pull/132

Great News!

Codecov Report

Merging #142 into uavcan-v1.0 will not change coverage by %.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           uavcan-v1.0     #142   +/-   ##
============================================
  Coverage        46.76%   46.76%
============================================
  Files               13       13
  Lines             4965     4965
============================================
  Hits              2322     2322
  Misses            2643     2643

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 b5f1b77...b5f1b77. Read the comment docs.

Codecov Report

:exclamation: No coverage uploaded for pull request base (uavcan-v1.0@c1cf930). Click here to learn what that means.
The diff coverage is 96.67%.

@@              Coverage Diff               @@
##             uavcan-v1.0     #142   +/-   ##
==============================================
  Coverage               ?   46.76%
==============================================
  Files                  ?       13
  Lines                  ?     4965
  Branches               ?        0
==============================================
  Hits                   ?     2322
  Misses                 ?     2643
  Partials               ?        0

Impacted Files
Coverage Δ

libcanard/canard.c
100% <ø> (ø)

tests/test_self.cpp
100% <100%> (ø)

tests/exposed.hpp
100% <100%> (ø)

tests/test_private_rx.cpp
100% <100%> (ø)

tests/test_private_crc.cpp
100% <100%> (ø)

libcanard/canard_dsdl.c
100% <100%> (ø)

tests/test_public_tx.cpp
100% <100%> (ø)

tests/test_dsdl.cpp
100% <100%> (ø)

tests/test_public_rx.cpp
100% <100%> (ø)

tests/test_private_tx.cpp
100% <100%> (ø)

... and 2 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 c1cf930...b5f1b77. Read the comment docs.

Disabled the codecov integration to prevent confusion. SonarQube is already set up to track the coverage correctly.

So, I can approve this based on a cursory reading of the code but I'm not saying I did a "good" code review because it's big. If you want a real code review it'll take longer than this weekend to go though and compile this myself, use it, and dive into the implementation.

That's understandable. I think we can afford some laxity until Libcanard v1.0 is released (the current version is 0.100); I suppose we will have a few months at least to get major API-breaking changes in, shall the need arise. For now, seeing as there don't seem to be any major issues, I would like to have it merged and the branches swapped.


crawl: 0.27.0 -> 0.27.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/crawl/crawl/releases.
meta.description for crawl is: "Open-source, single-player, role-playing roguelike game"
meta.homepage for crawl is: "http://crawl.develz.org/"
meta.changelog for crawl is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

/nix/store/nhcfscg69n0v0vd703z8zvg54vz4mj8r-crawl-0.27.1/bin/crawl passed the binary check.

1 of 1 passed binary check by having a zero exit code.

1 of 1 passed binary check by having the new version present in output.

found 0.27.1 with grep in /nix/store/nhcfscg69n0v0vd703z8zvg54vz4mj8r-crawl-0.27.1

found 0.27.1 in filename of file in /nix/store/nhcfscg69n0v0vd703z8zvg54vz4mj8r-crawl-0.27.1

directory tree listing: https://gist.github.com/c90f50674b93c7343b5e0609f4ce866d

du listing: https://gist.github.com/2d627b4c08a00fb5d3c2a27c5821f802

Rebuild report (if merged into master) (click to expand)

8 total rebuild path(s)

2 package rebuild(s)

2 x86_64-linux rebuild(s)
2 i686-linux rebuild(s)
2 x86_64-darwin rebuild(s)
2 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
crawl
crawlTiles

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/nhcfscg69n0v0vd703z8zvg54vz4mj8r-crawl-0.27.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A crawl https://github.com/r-ryantm/nixpkgs/archive/2caeaca5ff369bc53d133b40eb3aad87b8a35d79.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/nhcfscg69n0v0vd703z8zvg54vz4mj8r-crawl-0.27.1
ls -la /nix/store/nhcfscg69n0v0vd703z8zvg54vz4mj8r-crawl-0.27.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

crawl
crawlTiles

Maintainer pings
cc @abbradar for testing.

Result of nixpkgs-review pr 135077 at 2caeaca5 run on x86_64-linux 1

2 packages built successfully:

crawl
crawlTiles

2 suggestions:

warning: unused-argument
Unused argument: fetchpatch.
Near pkgs/games/crawl/default.nix:1:33:
  |
1 | { stdenv, lib, fetchFromGitHub, fetchpatch, which, sqlite, lua5_1, perl, python3, zlib, pkg-config, ncurses
  |                                 ^

warning: name-and-version
Did you mean to pass pname instead of name to mkDerivation?
Near pkgs/games/crawl/default.nix:10:3:
   |
10 |   name = "crawl-${version}${lib.optionalString tileMode "-tiles"}";
   |   ^

Near pkgs/games/crawl/default.nix:11:3:
   |
11 |   version = "0.27.1";
   |   ^

Result of nixpkgs-review pr 135077 run on x86_64-linux 1

2 packages built:

crawl
crawlTiles


Replicate permissions API doesn't return the model name

Spotted this while working on:

https://github.com/simonw/llm-replicate/issues/11

This API endpoint here: https://replicate.com/docs/reference/http#predictions.get
{
  "id": "rrr4z55ocneqzikepnug6xezpe",
  "version": "be04660a5b93ef2aff61e3668dedb4cbeb14941e62a3fd5998364a32d613e35e",
  "urls": {
    "get": "https://api.replicate.com/v1/predictions/rrr4z55ocneqzikepnug6xezpe",
    "cancel": "https://api.replicate.com/v1/predictions/rrr4z55ocneqzikepnug6xezpe/cancel"
  },
  "created_at": "2022-09-13T22:54:18.578761Z",
  "started_at": "2022-09-13T22:54:19.438525Z",
  "completed_at": "2022-09-13T22:54:23.236610Z",
  "source": "api",
  "status": "succeeded",
  "input": {
    "prompt": "oak tree with boletus growing on its branches"
  },
  "output": [
    "https://replicate.com/api/models/stability-ai/stable-diffusion/files/9c3b6fe4-2d37-4571-a17a-83951b1cb120/out-0.png"
  ],
  "error": null,
  "logs": "Using seed: 36941...",
  "metrics": {
    "predict_time": 4.484541
  }
}

Doesn't include a field telling you the owner and name of the model.
(Reporting it here because I couldn't find a relevant repo for reporting API issues.)

I shipped a tool for recording predictions to a SQLite database here:
https://github.com/simonw/llm-replicate/blob/0.3/README.md#fetching-all-replicate-predictions
That tool will automatically record any future additions to the JSON, so if you add a model_owner and model_name field my tool can start recording those as well.


test: remove external coverage libraries and instead use standard tooling

Signed-off-by: ankitm123<EMAIL_ADDRESS>

/retest


Introduce a clock abstraction, so we don't need to rely on DateTime.U…

…tcNow directly
The GetCurrentDateTimeUtc name is unwieldy, but:

It should be a method not a property, as Eric Lippert describes in http://ericlippert.com/2014/05/19/when-should-i-write-a-property/
The name needs to indicate that it's UTC
The noun part of the name might as well use DateTime as that's what it returns

We could consider using DateTimeOffset instead, although the offset would always be zero.
(In Noda Time 2.0 this is GetCurrentInstant, which is cleaner... but we really need to work with the BCL here...)

LGTM


Wide-screen Support Issue

I don't know how to fix this, does anybody else?:

You have to modify the egg file in someway to support widescreen
My temporary solution for tt galaxy was just to fill the background with a blue color

Also even after you fix the image so its widescreen, honestly should probably remove the rounded squares in the background do we even need them lol

Also even after you fix the image so its widescreen, honestly should probably remove the rounded squares in the background do we even need them lol

Yeah, probably should! I don't know how to do it though.


TwicImg for react-native doesn't seem to get cached

My Expo based React Native app doesn't seem to want to cache the images. Every time I load the exact same image, the network tab in inspector is showing a network request for the same image.
I will note that even the Image imported from react-native behaves this way. But if I use Expo Image, caching works as expected.
Any thoughts on why caching is not working?

Hi @jamiechong
You're right. We don't manage caches.
We are adding this request for a feasibility study and will get back to you with an update.
Thank you for this issue.

Hi @jamiechong
If you're still interested, we've just released version 0.29.0, which manages image caching.
Activating the cache requires you to add expo-image to your project's list of dependencies.
Here's a demo github repo.
Please note the modification made to the component setup here.
If you have any problems or questions, please do not hesitate to contact us.
Happy coding.


“Connected Apps” option not displayed in “Settings” page when user restore account by Resetting Valora earlier

Frequency: 100%
Repro on build version: Android internal build V1.21.0, Playstore build V1.20.4
Does Not Repro on build version: Test Flight Build V1.21.0
Repro on devices: Redmi Note 8 (10.0), One Plus 7T (11.0), Redmi Note 8 (9.0), Samsung Galaxy F41  (11.0)
Does not Repro on devices: iPhone12 (15), iPhone 6+ (12.4.5), iPhone SE (14.2), iPhone SE (13.6.1)
Testing Account:<PHONE_NUMBER>/Recovery Phrase
Pre-condition:

Make sure that the user should have a Restored account by skipping the phone number.
Also make sure that user should have connected any wallet by scanning QR code from desktop & should able to see count in “Connected Apps” section from Settings
Repro Steps:
Launch the application & redirect to the “Settings” page
Tap on the “Reset Valora” option & reset the Valora account
Now again restore the wallet with the same account  by skipping the phone number
Now tap on “Hamburger Menu” & redirect to the “Settings” page
Observe Contents of the Settings page
Current Behavior: “Connected Apps” option not displayed in “Security and Data” section from Settings
Expected Behavior: “Connected Apps” option should be displayed on the “Settings” page
Investigation: Also we have observed in iOS that users able to see the “Connected Apps” section with count as “zero” after restoring the account
Impact: User gets blocked to connect with the wallet as an option  not displaying in Settings
Attachment: “ConnectedApps”OptionNotDisplayed

@ValoraQA this looks to have been a configuration issue with the remote config, Please retest and close if no longer reproducing.

Hey, @MuckT We have retested it on Android internal build V1.21.0 & observed that issue is still reproduced.
Verified On Devices: Redmi Note 8 (9.0)
Attachment: AfterRestoringAccountWhichResetEarlier

@ValoraQA I have retested on mainnet and I am no longer seeing this issue. Directly after restore I am able to view the connect app tab is present; Please retest on mainnet.
After restore

@jeanregisser @gnardini could we set the walletConnectV1Enabled as true in packages/mobile/src/firebase/featureFlagDefaults.ts to address this issue?

@jeanregisser @gnardini this looks like a larger issue with fetching the remote config from reset accounts. In testing I am not able to successfully complete phone verification on an account that was reset and restored.
'KomenciKit/deployWallet attempt#1 error: ', [ [InvalidDeployer: Deployer is not allowed] ]

Workaround

Uninstall the App.
Reinstall and restore.

Originally appeared in 1.18.x.

Hey, @MuckT  We are able to repro this issue on the previous play store build V1.20.4.
Verified on Devices: Redmi Note 8 (9.0)
FYI: Currently we are not able to check it on V1.18.x build as we don't have this build right now

I think this change: https://github.com/valora-inc/wallet/pull/1388/files#diff-f8ce68716c543a1d8aca4b1aad9bc1d28e4dccf5f219688cb463918c5b860bbaL246 might help with this issue.
Can we try again with the current latest version? I think a new build will be put out shortly.

@jeanregisser @gnardini could we set the walletConnectV1Enabled as true in packages/mobile/src/firebase/featureFlagDefaults.ts to address this issue?

Yes, I think that's safe to do

The general problem is remote config stuff are not fetch after a reset. We should re-fetch it when this happens to avoid all these issues.

Hey @MuckT, We have verified this issue on latest Android Internal Build V1.22.1 & observed that the issue is still reproducible.
Devices: Redmi Note 8 (10.0)
CC: @gnardini
Thanks..!!

This should be fixed once #1503 is merged into main. Please retest on the next release or hot-fix.

This should be fixed once #1503 is merged into main. Please retest on the next release or hot-fix.

Sure @MuckT we will retest it when we got the next release/hotfix & will update you here. Thanks..!!

@ValoraQA please retest on 1.22.4.

Hey @MuckT, We have verified this issue using Android Playstore Build V1.22.4 & observed that the issue is fixed now. "Connected Apps" option is displayed in settings screen when user restore account by resetting account earlier.
Observation:

[ ] Connected dapp option is not displayed in connected apps section after we reset the account and restore account using same recovery phrase.

Device: Samsung Galaxy A8+(8.0), Redmi Note 8 (11.0)
Attachment: Connected App option appears.mp4
Thanks..!!

We have verified this issue using Android Playstore Build V1.22.4 & observed that the issue is fixed now. "Connected Apps" option is displayed in settings screen when user restore account by resetting account earlier.

Closing the issue as it is no longer reproducible.


Easily bypass type inference even with guards

TypeScript Version:  4.0.5

Search Terms: guards, arrays types
Code
function isNumberArray(arr: Array<string | number>): arr is number[] {
    return arr.every(x => typeof x === "number")
}

function messUpTheArray(arr: Array<string | number>): void {
    if (isNumberArray(arr)) {
        arr.push(3)
        return
    }

    arr.push(3)
}

const strings: Array<string> = ['foo', 'bar'];
messUpTheArray(strings);

const s: string = strings[2];
console.log(s.toLowerCase())

Expected behavior: Compiler complain about trying to push a number into a string Array. First I tried without guard and obviously the compiler did nothing. This causes on the last line:
"s.toLowerCase is not a function".
Actual behavior: Compiler infer that even after the guard, the arrays is of type (string | number)[] and accepts pushing a number into a string array. Th
Playground Link: https://bit.ly/3lcJBH6 (shortened because the link was giant)

Completely unrelated to type guards:
const strings: Array<string> = ['foo', 'bar'];
const stringsOrNumbers: Array<string | number> = strings;
stringsOrNumbers.push(3);

const s: string = strings[2];
console.log(s.toLowerCase())

See: https://github.com/Microsoft/TypeScript/wiki/FAQ#why-are-function-parameters-bivariant

I don't think variance is even relevant here; the fact that isNumberArray determines that the array only contains numbers does not mean that if that is not true that the array only contains strings.
You can actually get an error here with a more specific types for the arr parameter:
function messUpTheArray(arr: Array<string> | Array<number>): void {
    if (isNumberArray(arr)) {
        arr.push(3)
        return
    }

    arr.push(3) // error TS2345: Argument of type 'number' is not assignable to parameter of type 'string'.
}

This works because the type system now captures the fact that the array only ever contains strings, or numbers, but not both. Whether that is true or not in your situation I cannot tell (based on the implementation of isNumberArray it might not be) but if you can in fact have mixed arrays, then there is no error to be reported for that code.

Ok, now I understand it! These tricky types sometimes confuses me, I'm just getting into now!


RT-5.2 aggregate test : Adding type and clearing aggregate link

Hi ,
I have added the changes for below github issues in this pull request:
https://github.com/openconfig/featureprofiles/issues/239
https://github.com/openconfig/featureprofiles/issues/200
Thanks,
Avaneesh

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 60.202%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
596

Relevant Lines:
990

💛  - Coveralls

/gcbrun

/gcbrun


Issue with AsAsyncValueEnumerable().SingleAsync

Please see the tests here:
https://github.com/Mike-E-angelo/Stash/blob/master/Hyperlinq.SingleAsync/Hyperlinq.SingleAsync/SingleTests.cs#L13-L32
In it, I have Hyperlinq and System.Linq.Async polling an IAsyncEnumerable created from an EF.CompileQueryAsync call with their respective SingleAsync method.
System.Linq.Async passes while Hyperlinq does not, even though Hyperlinq reports that Option<T>.IsSome is true.
This seems wrong to me. 😁

Strange! All my tests are passing...🧐

Maybe I'm not checking it correctly.😰

FWIW EFCore has thrown me for a couple loops in my world, too. 😅

I'm trying to compile your test to reproduce the behavior. I think I have the same packages and namespaces but I'm getting a compile error. It says there's an ambiguous reference for the Where method used in the compiled query.
[CS0121]
The call is ambiguous between the following methods or properties:
'System.Linq.AsyncEnumerable.Where<TSource>(System.Collections.Generic.IAsyncEnumerable<TSource>, System.Func<TSource, bool>)'
and
'System.Linq.Queryable.Where<TSource>(System.Linq.IQueryable<TSource>, System.Linq.Expressions.Expression<System.Func<TSource, bool>>)'

It's strange. Do you know why this is happening?

Wow that is strange.  dotnet clean and dotnet restore --force are my usual go-tos for such oddities.
Are you compiling the project as-is or are you copy/pasting/transplanting it into a new project?

I'm copy/pasting into my tests project

I see that DbSet<TEntity> implements both IQueriable<TEntity> and IAsyncEnumerable<TEntity>.  The unit tests didn't catch it because the test returned ValueTask but looks like xUnit awaits only if the method returns Task. That means exceptions were simply ignored. 😱
I fixed the return type for all asynchronous tests and found a couple more failing tests. Unfortunately, the assertions on one of them have very strange behavior and I'm still trying to understand what's going on.

Glad to hear of your success, @aalmada.  Your pain is my gain. 😁

Fixed by #381


Add ChannelInboundInvoker and ChannelOutboundInvoker

Motivation:
ChannelHandlerContext, ChannelPipeline and Channel share various method signatures. We should provide an interface to share.
Modifications:
Add ChannelInboundInvoker and ChannelOutboundInvoker and extend these.
Result:
Better API abstraction.

@trustin PTAL ... This allows to more easily write impl that works with Channel, ChannelHandlerContext and ChannelPipeline.

@Scottmitch as well ... PTAL

lgtm

LGTM. Nice change.

@trustin thanks! Do we want the same for 4.0 but without adding the promise / future stuff to the ChannelOutboundInvoker interface?

Cherry-picked into 4.1 (27a392b87760a501f1519c0838b44194f236629f)


Fix usage of GenerateEvents annotation in Modelica.Fluid

Reported by fcasella on 12 Mar 2013 14:28 UTC
All GenerateEvents = false instances in Modelica.Fluid can be safely removed (because that is the default option, and the annotation might just be confusing).
The GenerateEvents annotation in Modelica.Media.IdealGases.Common.Functions.s0_T(), s0_Tlow(),and s0Tlow_der could be removed (the functions are smooth enough)
Based on the new definition of the GenerateEvents in Modelica 3.2 rev2, all setState_XX() functions in Modelica.Media.Water.WaterIF97_base should have the annotation GenerateEvents = true, as well as all the chain of functions from setState_XX() down to the functions that contain the conditional expressions in the algorithm.

Migrated-From: https://trac.modelica.org/Modelica/ticket/1017

Comment by fcasella on 12 Mar 2013 15:02 UTC
setState_XX functions in WaterIF97_base and in WaterIF97_fixedregion handle the phase input differently. The reason of that should be made clear, and annotations set up accordingly in the whole function call chain.

Comment by fcasella on 12 Mar 2013 15:04 UTC
setState_XX functions in WaterIF97_base and WaterIF97_fixedregion do not have the Inline = true annotation. Shouldn't they have it?

Comment by fcasella on 13 Mar 2013 09:32 UTC
Hubertus advises to add the Inline = true annotation to all one-liner functions in Media that don't have any Inline or LateInline annotation, as this allows to exploit all equation-based optimization.
This is also important because different tools have different default attitudes towards inlining, so if that can become important for efficiency, it should be explicitly specified.

Comment by fcasella on 13 Mar 2013 22:11 UTC
The last changes in the Modelica Specification 3.2 ver2 regarding GenerateEvents make it only necessary to set the GenerateEvent annotation on three functions in Media (it is no longer necessary to set the annotation through the entire function call chain). All unnecessary or wrong annotations have been removed in cfa31e6d128b7a100836681f47163aed15a7e4ea.
Inline  = true annotations have also been set in cfa31e6d128b7a100836681f47163aed15a7e4ea, for all function of Modelica.Media that can benefit in terms of reduced overhead.


Redirect uri mandatory for client credentials grant type

Summary
For client credentials, you should not need a redirect uri. The below endpoint does not distinguish what grant type you are creating.
Steps To Reproduce
1.create oauth app for consumer
POST http://localhost:8001/consumers/ID/oauth2
{
"name": "Test Application1"
}
2. get 400 Bad request back
{
"redirect_uri": "redirect_uri is required"
}
3.
4.
Additional Details & Logs

Kong version 0.9.8
Operating System OSX

Cheers,
Shane.

I want to take up this issue. Please help me on how to get started.


Walkthrough for AWS Lambda function?

This is a request for a walkthrough on how to setup fluent ffmpeg as an AWS Lambda function. Any chance someone has gone through this flow?

Also need this instruction

Zip up statically built ffmpeg and ffprobe and add them to env variables FFMPEG_PATH and FFPROBE_PATH respectively. Require fluent-ffmpeg and use. I wish there was a walkthrough code for using it to transcode videos but staying within the limits of AWS Lambda.

Zip up statically built ffmpeg and ffprobe and add them to env variables FFMPEG_PATH and FFPROBE_PATH respectively. Require fluent-ffmpeg and use. I wish there was a walkthrough code for using it to transcode videos but staying within the limits of AWS Lambda.

I know its 2020, but this might help anyway https://intoli.com/blog/transcoding-on-aws-lambda/


Some findings don't get added to a PDF report

Please use the following template when submitting issues:
Issue Template
Issue Type

[ ] Bug

Description
Some findings don't get added to a report even though they appear in the findings filter.
If the issue is a bug, please also include the following:
Operating System
Fedore 26
Install

[ ] setup.bash

Steps to Reproduce

Create a New Product
Create an Engagement
Import some scan results to that engagement with some low and medium findings
Go to the custom report generator and add a findings section.
Filter the findings by the product and the severities - Critical, High, Medium, Low.
In the report, only the Low severity vulnerabilities were shown, no mediums were in the report, but did show in the filter.

@TommyJ1994 are you able to retest easily? Most filters have been updated.


Cosmetic discrepancy: Dialogues

Describe the bug
The error appears during the closing of the dialog
To Reproduce
Create a Reflex project and wrap the button with a dialog
Expected behavior
Smooth fade animation without breaks
Video
https://github.com/user-attachments/assets/351ad6a2-b37e-43ab-911c-9fdf66a37c69
Specifics (please complete the following information):

Python Version: 3.12
Reflex Version: 6.4
OS: Windows 11
Browser (Optional): Chrome

Additional context

Are you on version 0.6.4? I had the same issue and it was fixed in 0.6.5. It's because Radix-UI is having some issues in the newest version. https://github.com/reflex-dev/reflex/pull/4370 https://github.com/radix-ui/themes/issues/627


pvs-studio: init at 7.27.75620.346

Description of changes
https://pvs-studio.com/en/pvs-studio
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

pvs-studio-7.27.75620.346-x86_64.tgz> trying https://cdn.pvs-studio.com/pvs-studio-7.27.75620.346-x86_64.tgz
pvs-studio-7.27.75620.346-x86_64.tgz>   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
pvs-studio-7.27.75620.346-x86_64.tgz>                                  Dload  Upload   Total   Spent    Left  Speed
pvs-studio-7.27.75620.346-x86_64.tgz>   0   146    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
pvs-studio-7.27.75620.346-x86_64.tgz> curl: (56) The requested URL returned error: 404
pvs-studio-7.27.75620.346-x86_64.tgz> error: cannot download pvs-studio-7.27.75620.346-x86_64.tgz from any mirror


Auto-detect bad API urls with AS

It's a common mistake for customers and continuum staff to setup the URL wrong when trying to use anaconda-client with an AS install.
Can AS and anaconda client figure out a way to return a nice message when one sets the API url wrong in anaconda client?  This is such a common error, it would be great if it could fix itself.

This can probably be fixed in the same PR as #207


Set-CsTeamsMeetingPolicy -LiveStreamingMode parameter not in the doc

Hi,
Could this RTMP broadcast feature be documented here please?
Additionally, some information on whether this feature uses Microsoft's servers to stream or the user's local machine to stream to the RTMP destination would be good. (if not on this page, on another page)
Kind regards,

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

ID: 919bf080-1e20-1411-0d9e-41f559b883d8
Version Independent ID: 6a37be44-d957-2b7a-a563-53332cf59098
Content: Set-CsTeamsMeetingPolicy (SkypeForBusiness)
Content Source: skype/skype-ps/skype/Set-CsTeamsMeetingPolicy.md
Service: skypeforbusiness-powershell
GitHub Login: @tomkau
Microsoft Alias: tomkau

@dariomws


CLPHelper is undefined

Hi! Thanks for this repo! I was just setting it up and noticed the CLPHelper on the SchemaMigrations does not exist and leads to an undefined error from ts-node. Any ideas what this could be about? For now, I removed the below line and use object definitions for the CLP to get it working. But would love to learn more about this CLPHelper, if it still exists in parse-server.
$ TS_NODE_FILES=true node --require ts-node/register --trace-warnings ./src/index.ts
/home/deniz/dev/examples/parse-server-typescript/src/schema/User.schema.ts:32
        ...SchemaMigrations.CLPHelper.requiresAuthentication(["find", "count", "get"]),
                                      ^
TypeError: Cannot read properties of undefined (reading 'requiresAuthentication')
    at Object.<anonymous> (/home/deniz/dev/examples/parse-server-typescript/src/schema/User.schema.ts:32:39)
    at Module._compile (node:internal/modules/cjs/loader:1105:14)
    at Module.m._compile (/home/deniz/dev/examples/parse-server-typescript/node_modules/ts-node/src/index.ts:1455:23)
    at Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
    at Object.require.extensions.<computed> [as .ts] (/home/deniz/dev/examples/parse-server-typescript/node_modules/ts-node/src/index.ts:1458:12)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/home/deniz/dev/examples/parse-server-typescript/src/schema/index.ts:2:1)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Thanks @isokosan!
I will check upcoming days what was the case with the defined schemas.
I saw that you made some improvements on your fork - it would be great if you open a PR to have them here nodemon, nodule aliases etc. ✌

Would be awesome! Found that most definitions are now added in Migrations.js by the way, I couldn't get code completion to pick them up though.

I changed the linting rules to my preference, so I'll roll those back when I get the time and do a PR!

@isokosan can you check this: https://github.com/dodi-smart/parse-server-typescript/pull/16


Split download update and apply update

The current Client.download_and_apply_update() groups the update download (_download_updates()) and update install (_apply_updates()) into one function. Could this function possibly be better broken up into two separate functions, allowing the client side implementation to perform additional logic between these 2 steps ? For example, the use case I have in mind is to allow for a prompt to be shown to the user, allowing them to save or shut down their work before performing the update.

For example, the use case I have in mind is to allow for a prompt to be shown to the user, allowing them to save or shut down their work before performing the update.

@wickeat It would be more appropriate to do this right after checking for updates using check_for_updates(), so before calling download_and_apply_update().
For this reason, check_for_updates() returns the version info of the latest available update.
Moreover, Client._apply_updates() includes a confirmation step. So, it is always possible to abort before starting the installation, unless you set skip_confirmation=True.
Also see relevant code in tufup-example.

@wickeat I updated tufup-example to make this more explicit.

Thanks for the reply @dennisvang!
I understand that the current flow allows for the update checking as a precursor to performing the actual update. However, the use case I was interested in implementing does the update checking and update download in a background thread, and then only brings it to the user attention once any update download has finished by bringing the update prompting to the main thread, so that there doesn't have to be unnecessary idle waiting time from the user's POV for the update download.
Furthermore, the confirmation step isn't a customizable one, so it requires a console to be shown, which is not a given in my use case.
So, I'm wondering if there is a reason behind the grouping of the update download and update apply steps, and if this justifies their separation.

... However, the use case I was interested in implementing does the update checking and update download in a background thread, and then only brings it to the user attention once any update download has finished by bringing the update prompting to the main thread, ...

@wickeat I see your point.
The reason for the current grouping was simplicity: "if available then download&install" is just a slightly simpler interface than "if available then download then install"
This was sufficient for our own use case, as we only wanted the user to confirm before the download starts. A minimal implementation of install confirmation on the command line was included for convenience, but I agree this is a bit simplistic.
Note, however, that there is an install hook which you could use for more advanced cases. The easiest solution would be to wrap the default install_update function, something like this:
from tufup.utils.platform_specific import install_update

def custom_install(**kwargs):
    # your user confirmation code here
    proceed = ...  # get user input
    # call the default install function
    if proceed:
        install_update(**kwargs)

client.download_and_apply_update(skip_confirmation=True, install=custom_install, ...)

The install function is called here.
I haven't tested this specific case, but I guess it should work.


Make cluster-bucket optional for minikube.

And mandatory for AWS.

Few more changes are required. Closing this PR in favor a new one.


Build process doesn't detect lzma.h from Homebrew

I've installed xz via Homebrew as described by the README, but no matter what i do i can't get the build to see that it's there. I have tried un-installing, re-installing, re-linking, &c.
% brew info xz
xz: stable 5.2.0 (bottled)
http://tukaani.org/xz/
/usr/local/Cellar/xz/5.2.0 (59 files, 1.7M) *
  Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/xz.rb
==> Options
--universal
	Build a universal binary

% ls /usr/local/Cellar/xz/5.2.0/{include,lib}
/usr/local/Cellar/xz/5.2.0/include:
lzma/   lzma.h

/usr/local/Cellar/xz/5.2.0/lib:
liblzma.5.dylib  liblzma.a        liblzma.dylib    pkgconfig/

% ./build.sh | grep -i 'lzma'
checking lzma.h usability... no
checking lzma.h presence... no
checking for lzma.h... no
checking for LZMA... yes

% grep -i 'lzma' Makefile
LZMA_CFLAGS = -I/usr/local/Cellar/xz/5.2.0/include
LZMA_LIBS = -L/usr/local/Cellar/xz/5.2.0/lib -llzma
ag_LDADD = ${PCRE_LIBS} ${LZMA_LIBS} ${ZLIB_LIBS} $(PTHREAD_LIBS)

I am not very familiar with the incantations required to make a C compiler find the right library/header files, but i don't see any obvious problem. The paths in the Makefile seem correct to me. It just doesn't work.

I have no idea what's changed (maybe i just rebooted?) but this is working for me fine now. Guess i'll close ¯_(ツ)_/¯


Bugfix 234

https://github.com/Vonage/vonage-dotnet-sdk/issues/234

Please provide a test file to test this scenario and in the meantime you can review the code as well @slorello89


fix: seeAttributesOnElements check condition

Motivation/Description of the PR

fix: seeAttributesOnElements check condition

    --- STARTED "before each" hook: Before for "this should work, but doesnt @jaja" ---
 › Cannot save user session with empty cookies from auto login's fetch method
    I am on page "https://google.com"
    › [Browser:Info] Autofocus processing was blocked because a document already has a focused element.
    --- ENDED "before each" hook: Before for "this should work, but doesnt @jaja" ---
    I am on page "https://github.com/codeceptjs/CodeceptJS/"
    I see attributes on elements {"css":"a[href=\"/team\"]"}, {"href":"/team"}
https://github.com/team /team
  ✔ OK in 1051ms

Resolves #3170

Applicable helpers:

[ ] Playwright
[ ] Puppeteer

Type of change

[ ] :bug: Bug fix

Checklist:

[ ] Tests have been added
[ ] Documentation has been added (Run npm run docs)
[ ] Lint checking (Run npm run lint)
[ ] Local tests are passed (Run npm test)

@kobenguyent With this update we are seeing issue when we use seeAttributesOnElements, existing tests are failing with below error,
_actual.includes is not a function
      at /tests/node_modules/codeceptjs/lib/helper/Puppeteer.js:1825:22
      at Array.filter (<anonymous>)
      at Puppeteer.seeAttributesOnElements (node_modules/codeceptjs/lib/helper/Puppeteer.js:1821:23)

any solution ?

Eg:
titleInput= 'input[formcontrolname="title"]'
 I.seeAttributesOnElements(titleInput, { disabled: true });

i will setup actual code and let you know.

Eg:
titleInput= 'input[formcontrolname="title"]'
 I.seeAttributesOnElements(titleInput, { disabled: true });

i will setup actual code and let you know.

You are correct, reason being Playwright returns boolean attributes as booleans and this mr started using .includes which is string method.
Change also makes attribute selectors essentially wildcards as any substring match will pass. Which is something likely not wanted.Therefore href should be handled separately from others.


[PyTorch] Normalization ops

Description
This PR extends the operation-based API (see https://github.com/NVIDIA/TransformerEngine/pull/707) with LayerNorm, RMSNorm, and FP8 cast operations.
Compare with the existing module-based API:
# Module-based API
module1 = te.LayerNormLinear(...)

# Operation-based API
module2 = te.ops.Sequential(
    te.ops.LayerNorm(...),
    te.ops.Linear(...),
)

Type of change

[ ] Documentation change (change only to the documentation, either a fix or a new content)
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Infra/Build change
[ ] Code refractor

Changes
Please list the changes introduced in this PR:

LayerNorm operation
FP8 cast operation
RMSNorm operation

Checklist:

[x] I have read and followed the contributing guidelines
[x] The functionality is complete
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

/te-ci pytorch

Merging with approval from @ptrendx and @ksivaman.

Hi one question regarding this new layernorm implementation, my understanding is that this new implementation can support multi-dimension layernorm weight while previous implemenation can only support one-dimension weight.
So I have N different 1-D tensors and previously I have to initiate N different layernorm and apply them separately. But with this new implementation, then we can apply one 2-dimensional layernorm to N stacked different tensors with shape (N, dim)? is my understanding correct?


Allow customizing systemd MountFlags option

Description
This change allows customizing the Systemd MountFlags option when Docker is launched by systemd.
Issues Resolved
Prior to that change, the Systemd MountFlags option was hardcoded to 'private' in the template file.

I think #759 makes more sense since it includes the readme update as well. I'm going to close this PR out. Thanks for putting it together though.


[Windows] Use the same API for all OS_Windows::*_environment functions.

Fixes https://github.com/godotengine/godot/issues/96521

Thanks!

Cherry-picked for 4.3.1.


Reorder tabs#443

Feature #443
Describe the changes you have made in this pr -
We can reorder subcircuit tabs,
Screenshots of the changes (If any) -

Coverage remained the same at 82.582% when pulling e18a6ab17b3b0e81cca6386587d50c9aef99e91e on NavonilDas:reoder_tabs#443 into 49b4895dadb975c708cbe47f1d73bff21a1faa6b on CircuitVerse:master.

This is a great start! We can re-order tabs but will the ordering persist when a circuit is saved and reloaded?


elements with type button should have the same look

a Button

and
<input class="button" type="button" value="a Button" />

should look the same

<input class="button" type="button" value="a Button" /> should now look exactly the same as anchors or button elements. Fixed and committed here: c781c27b97cf0da0f73815caaa1c2d4df7bf32d6

nice, that was fast
thanks

Compare with element a Button
 still look smaller and thinner in safari, chrome and firefox.

It seem related to input type font size issue. Btw, the button font in input element look bolder than a element.

All of the buttons should now be normalized across sizes and styles. Anchors, inputs, and buttons. Committed to master.


Multiple frontend tweaks and fixes

In the Course Import section under Admin

added the missing small arrows to select elements
label text now changes color when in dark mode
made the code much more readable by using CSS grid instead of flexbox
select elements become darker when in dark mode

In the Users section under Admin

change cursor to pointer when hovering over trash icon
fixed same issue like in Course Import: label text now changes color when in dark mode

Open for suggestions about colors, though the design differs from in the different admin sections.
I could try to fix that if it is ok?
In the nav bar

TUM logo svg element now fits it's width
aligned all items so that the margins on all sides nicely fit

The moon and bell icons could stay, also for mobile screens as there is plenty of room?

Open for suggestions about colors, though the design differs from in the different admin sections. I could try to fix that if it is ok?

Absolutely ok! 💯
Regarding colors, there is a color guide available at colors.md in the docs folder.

Open for suggestions about colors, though the design differs from in the different admin sections. I could try to fix that if it is ok?

Absolutely ok! 100
Regarding colors, there is a color guide available at colors.md in the docs folder.

Would you prefer a separate PR for that?

Closing in favor of #673


Added compatibility with v12 condition filters.

Urgent: fixed a bug in v12 token ring batched shader to avoid crashing into a v11 environment.
Added compatibility with v12 filter effects (and thus, invisibility that needed a special treatment)

@arbron @Fyorl I'll merge this PR because it is critical.


set noshowmode in ~/.vimrc doesn't work

yes, set noshowmode

When typing ":set noshowmode" in vim-commandline it works.
But if write to ~/.vimrc it doesn't help.
What am i doing wrong?

" Let airline do the work
set noshowmode

This works for me in my vim setup.
How are you actually writing in in your vimrc?

echo "set noshowmode" >> ~/.vimrc

$cat ~/.vimrc

colorscheme bubblegum
"docs
helptags ~/.vim/doc
helptags ~/.vim/bundle/vim_prj/doc
helptags ~/.vim/bundle/vim_plugmanager/doc

"some settings
set fencs=utf-8,cp1251,koi8-r,cp866
set laststatus=2
set cursorline
set cursorcolumn
"THERE IT IS
set noshowmode

"Airline settings
let g:airline_powerline_fonts = 1
let g:airline#extensions#tabline#enabled = 1
let g:airline#enable#fugitive=1
let g:airline#enable#syntastic=1
let g:airline#enable#bufferline=1
let g:airline_theme='bubblegum'

"Nerdtree settings
nmap  :NERDTreeToggle
let g:NERDTreeChDirMode = 2
let g:NERDTreeShowBookmarks = 1

"ReadOnly check
function CheckRo()
    if &readonly
	nmap  :q
    endif
endfunction
au BufReadPost * call CheckRo()

"**************************************************************************************
"Test vim_lib project
"https://github.com/Bashka/vim_lib
"
filetype off
set rtp=~/.vim/bundle/vim_lib
call vim_lib#sys#Autoload#init('~/.vim', 'bundle') " Адрес до вашего ~/.vim/bundle

"Plugin 'vim_lib'
"Plugin 'vim_plugmanager'
"Plugin 'vim_prj'
"Plugin 'vim_start'
"Plugin 'vim_airline'
so ~/.vim/plugins.vim

filetype indent plugin on

let vim_prj#opt = {'author':  '*****',
			\ 'email':   '***',
			\ 'license': 'GNU GPL v3 (http://www.gnu.org/copyleft/gpl.html)'}

" AirlineRefresh
:map  :AirlineRefresh

" Vim lib
" **************************************************************************************

"silent! echo vim_lib#sys#Publisher#
"function! g:AirlineTheme(...) " {{{
"	AirlineRefresh
	"echom 'Test'
"endfunction " }}}
"call vim_lib#sys#Publisher#.new().listen('VimPrjLoadSession', function('g:AirlineTheme'))

Sorry i pressed wrong button and i closed issue by mistake

Still need a fix? I had the same issue. I moved set noshowmode to the bottom of the .vimrc. It is likely some script from a plugin was overriding the configuration.

Thanks!  It works great!

Does it still work? It doesn't work for me and grep showmode in airline's codebase doesn't find anything:
https://github.com/vim-airline/vim-airline/search?utf8=✓&q=showmode

Never mind, thought by setting noshowmode airline doesn't show mode in its statusbar, after reading more now I know it has nothing to do with airline's statusbar.

You can check where showmode was last set with :verbose set showmode?

Order matters. Make sure you don't have a set showmode after you've set set noshowcode.


pywebview 4.0.1 WebView2 initialization failed with exception Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))

There's an issue in the newest version of pywebview (4.0.1) that might affect Neutron apps.
Now, webview.start by default opens in private mode which throws this exception:
[pywebview] WebView2 initialization failed with exception:  Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))    at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)    at Microsoft.Web.WebView2.Core.CoreWebView2Environment.<CreateAsync>d__3.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Microsoft.Web.WebView2.WinForms.WebView2.<InitCoreWebView2Async>d__25.MoveNext()
Starting from release 4.0 in pywebview, now there are two new parameters to webview.start:
webview.start(private_mode=True, storage_path=None)
As an workarround for the exception, pywebview's owner r0x0r suggested to set private_mode to False (as a webview.start parameter) and also to specify an storage path.
I only assigned private_mode=False in Neutron/init.py:201 and for me, this was enough to solve this exception and run my app correctly.
But I don't know if in other cases, storage_path should be assigned.
So, if anyone of you face this same exception, assigning False to private_mode and defining an storage path may solve your issue.
I won't create a pull request for that, because I don't know if storage_path should be assigned or not. In my case, it didn't break my app, but I don't know in others.
Sorry for my poor English. I wish you all my best regards (:

Thank you very much for the information, I will update init.py to set private_mode to False to avoid any issue for other users. Changing the storage path shouldn't make any difference so I will keep it set to None.


Accidentally removes distro registry

Condition: Installed only single Ubuntu 16.04 distribution
Steps to reproduce: Double click the row to run specific distro
Symptoms: It throws array index overflow error, then accidentally deleted distro registry
Report link: https://www.facebook.com/groups/200708093411111/permalink/1077255282423050/

I cannot reproduce the symptom in Windows 10 1803 (April Update). I will test it against 1709 and lower version of Windows 10.

OS Version: Windows 10.0.17134.48
Pre-condition: WSL was not running while using this program
Result: Registry related to WSL has been deleted (under \CurrentVersion\Lxss key disappears)

I tried to re-install WSL from Windows Store, but it said 'Already installed' yet cannot start.

If I click 'execute', error happens;

As a result of tracking and guessing various problem phenomena, it is estimated that there is a problem that the registry key may be erased when unloading wslapi.dll to FreeLibrary after an unhandled exception occurs.

Related problems

Disable WSL via appwiz.cpl, then try launch WSL shell with this program causes index zero exception
During distro installation, try launch WSL shell with this program causes index zero exception

The cause of the problem is probably caused by the registry key being deleted, but it is not known exactly when and how the registry key is removed. As a workaround for this problem, I want to add the ability to back up the LXSS registry key every time it runs and restore it if necessary.
Once this issue is closed, I will add an issue and a branch for the new feature. Thank you for reporting.