[BUG] Backup NFS - Operation not permitted during mount

Describe the bug (🐛 if you encounter this issue)
Setting backupTarget to an NFS store is giving an Operation not permitted error in the UI
I am using a Synology NAS that only supports up to v4.1
# cat /proc/fs/nfsd/versions
+2 +3 +4 +4.1

ash-4.4# cat /etc/exports
/volume2/k8s-backup	<IP_ADDRESS>/21(rw,async,no_wdelay,no_root_squash,insecure_locks,sec=sys,anonuid=1025,anongid=100)

My kubernetes nodes are within the subnet above
To Reproduce
Manually exec the mount command from within a longhorn-manager:
$ mkdir -p /mnt/nfs
$ mount -t nfs4 -o nfsvers=4.1,actimeo=1,soft,timeo=300,retry=2 <nas url>:/volume2/k8s-backup /mnt/nfs
mount.nfs4: Operation not permitted

Executing the same command directly on a k8s node works fine:
$ sudo mount -t nfs4 -o nfsvers=4.1,actimeo=1,soft,timeo=300,retry=2 <nas url>:/volume2/k8s-backup /tmp/nas
$

Expected behavior
NFS should mount
Log or Support bundle
If applicable, add the Longhorn managers' log or support bundle when the issue happens.
You can generate a Support Bundle using the link at the footer of the Longhorn UI.
Environment

Longhorn version: 1.4.2
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): Helm / Flux
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: K3s

Number of management node in the cluster: 1
Number of worker node in the cluster: 4

Node config

OS type and version: Ubuntu 22.04
CPU per node: 2
Memory per node: 30GB
Disk type(e.g. SSD/NVMe): NVMe
Network bandwidth between the nodes: 1Gbe

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal): Proxmox
Number of Longhorn volumes in the cluster: N/A

Additional context
Add any other context about the problem here.

@adampetrovic
Can you support a support bundle for further investigation?

I have the exact same issue

i also struggle with this issue.. V1.5.1

@ozid @DanielG0721
It looks related to the server or client's permission configuration. Would you able to check  https://longhorn.io/kb/troubleshooting-unable-to-mount-an-nfs-backup-target/?

Hello @derekbit  i checked a bit more and i see this on a tcpdump:

First line is the pod making the request
and second line NFS reply with Operation not permitted so i guess you are right
Find strange this is working on the host itself and not the pod, but after testing on an another privileged pod i have the exact same issue. Ill try to search the issue but on the server side i can only whitelist our IP nothing else

I just notice when the traffic coming from the pod to the NFS server it use as source port a range of unprivileged ports (above 1023),
On the k8s hosts it always use a port below 1023 as source. This is probably why the NFS server answering with Operation not permitted

I just notice when the traffic coming from the pod to the NFS server it use as source port a range of unprivileged ports (above 1023), On the k8s hosts it always use a port below 1023 as source. This is probably why the NFS server answering with Operation not permitted
....
After testing a rule on my gateway to rewrite the source port to use a port between 1-1023 ip daddr (ip nfs server) tcp dport 2049 snat to (my source nat ip) :1-1023 The mount is working :)

@ozid
Cool! We were not aware that it is caused by the port usage in the k8s system.
However, why does it work in most environments?

cc @james-munson

I just notice when the traffic coming from the pod to the NFS server it use as source port a range of unprivileged ports (above 1023), On the k8s hosts it always use a port below 1023 as source. This is probably why the NFS server answering with Operation not permitted
....
After testing a rule on my gateway to rewrite the source port to use a port between 1-1023 ip daddr (ip nfs server) tcp dport 2049 snat to (my source nat ip) :1-1023 The mount is working :)

@ozid Cool! We were not aware that it is caused by the port usage in the k8s system. However, why does it work in most environments without the issue?

I would love to know why also but there is so many ways of doing thing...
Personally i use cilium as CNI without kube-proxy. So maybe the ebpf program rewrite the source port to a random higher range and this is causing the issue.

cc @mantissahz

Hello @dotdiego yes of course, so basically your NFS server expecting your client to  have a source port to be in the privileged port range, in simple term it must be under 1024.
So you must somehow find a way to make sure your client (in this case, the longhorn pod) is making a nfs query with a source port between 1-1023.
In my case, my kubernetes cluster need to go through my gateway server to reach the NFS, good news for me it's fully managed with linux tools so i can manipulate the traffic as i want, this is why i added this line to my gateway:
ip daddr (ip nfs server) tcp dport 2049 snat to (my source nat ip) :1-1023
So after adding this, my gateway rewrite the original source port wich was: 54850 to a random port between 1-1023
Before my command tcpdump was output something like this:
my-longhorn-pod-ip:54850 -> nfs_server-ip:2049 his is not working
After my command on my gateway:
my-longhorn-pod-ip:1022 -> nfs_server-ip:2049 this working
Hope it's more clear for you

@james-munson Please help with the doc as @derekbit mentioned. We need a KB doc.

I stumbled across this as I'm attempting to debug this issue on my own k3s cluster. I'm running into this issue (mount.nfs4: mount(2): Operation not permitted) attempting to mount the NFS backup target from the longhorn manager container. This appears to be working without issue on Ubuntu 22.04, but not Debian 12. Apparmor is disabled, so to not add any complications. From the underlying host, I can mount fine, but not within the longhorn-manager container.
k exec -it -n longhorn-system longhorn-manager-m7ph7 -- sh
sh-4.4# showmount -e <IP_ADDRESS>
Export list for <IP_ADDRESS>:
/volume1/LonghornBackupstore <IP_ADDRESS>/12,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>

sh-4.4# ip a sh eth0
127: eth0@if128: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 56:ae:93:a9:e1:96 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet <IP_ADDRESS>/32 scope global eth0
       valid_lft forever preferred_lft forever

sh-4.4# mount -v -t nfs4 -o nfsvers=4.1,actimeo=1,soft,timeo=300,retry=2 <IP_ADDRESS>:/volume1/LonghornBackupstore /var/lib/longhorn-backupstore-mounts/192_168_0_151/volume1/LonghornBackupstore
mount.nfs4: timeout set for Sun Jan  7 17:07:16 2024
mount.nfs4: trying text-based options 'nfsvers=4.1,actimeo=1,soft,timeo=300,retry=2,addr=<IP_ADDRESS>,clientaddr=<IP_ADDRESS>'
mount.nfs4: mount(2): Operation not permitted
mount.nfs4: Operation not permitted for <IP_ADDRESS>:/volume1/LonghornBackupstore on /var/lib/longhorn-backupstore-mounts/192_168_0_151/volume1/LonghornBackupstore

Nothing is logged in dmesg. I'm also using the most updated kernel in Debian 12 stable (6.1.0-17-amd64). CNI plugin is also Cilium 1.14.5, and I can see that traffic from the longhorn-manager pod has a source port < 1024.
k exec -n kube-system cilium-jxfqt -- cilium monitor -n | grep <IP_ADDRESS>
...
Policy verdict log: flow 0x614bba26 local EP ID 1360, remote ID 16777263, proto 6, egress, action allow, auth: disabled, match L3-Only, <IP_ADDRESS>:842 -> <IP_ADDRESS>:2049 tcp SYN
-> network flow 0x614bba26 , identity 67641->16777263 state new ifindex eth0 orig-ip <IP_ADDRESS>: <IP_ADDRESS>:842 -> <IP_ADDRESS>:2049 tcp SYN
-> endpoint 1360 flow 0x0 , identity 16777263->67641 state reply ifindex lxcd72247c18a9c orig-ip <IP_ADDRESS>: <IP_ADDRESS>:2049 -> <IP_ADDRESS>:842 tcp SYN, ACK
-> network flow 0x614bba26 , identity 67641->16777263 state established ifindex eth0 orig-ip <IP_ADDRESS>: <IP_ADDRESS>:842 -> <IP_ADDRESS>:2049 tcp ACK
...

I will submit a support bundle as well.


Allow customizing month format in year view in datepicker

Bug, feature request, or proposal:
feature request
What is the expected behavior?
be customizable
What is the current behavior?
hard coded here
What are the steps to reproduce?
https://stackblitz.com/edit/angular-material2-issue-1v3qbw?file=app%2Fapp.component.ts
What is the use-case or motivation for changing an existing behavior?

short month in Chinese is just a number followed by a character. long month isn't very long anyway and is more suitable as the month label for the year view.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
beta12
Is there anything else we should know?

Would love an option to render day in pure number. Both numberic and 2-digit day in Chinese, much like short month, are just a number followed by a character. However, we all understand it without the character just fine. The character being there is very annoying and extraneous, but there isn't a format Intl provides that is without the character there.

@princemaple you can accomplish this by extending the NativeDateAdapter and providing your customized adapter in the app module: https://stackblitz.com/edit/angular-material2-issue-afqg57?file=app/app.component.ts


Remove zarr dependency if possible

Based on this thread, it seems the zarr module might be entirely unnecessary. We should try to remove it and check that zarr checksum outputs remain unchanged.

While removing, for harmonization/centralization of implementation of a walker with dand-cli would be important to implement the same logic of skipping known to be irrelevant to zarr files/folders as done in dandi-cli by exclude_from_zarr to exclude .git  etc.


Support streams (azure resources)

The Blob Trigger binding for NodeJS functions always binds data as a Buffer even if 'dataType' is set to 'stream' or 'string'.
Repro steps

Create a node-based function using the blob trigger
Set "dataType" to "stream" in function.json:

{
  "bindings": [
    {
      "name": "fileBlob",
      "type": "blobTrigger",
      "direction": "in",
      "path": "container/{fileName}.csv",
      "connection": "AzureWebJobsStorage",
      "dataType": "stream"
    }
  ],
  "scriptFile": "../dist/myFunction/index.js"
}

Expected behavior
fileBlob input parameter should be some kind of Stream type
Actual behavior
fileBlob input parameter is a Buffer
Known workarounds
None
Related information
Functions runtime ~3
Node ~14

I'm cleaning up the stream issues and will use this to track support for streaming Azure resources. This was finally unblocked for us in the host: https://github.com/Azure/azure-functions-dotnet-worker/issues/1081. The .NET Isolated worker was the first one to use it, but we should be able to benefit in Node.js as well.
Unfortunately I don't have any ETAs. For now we're focused on GA-ing the v4 programming model, but we will keep the roadmap updated with any stream plans: https://github.com/Azure/azure-functions-nodejs-library/wiki/Roadmap
Streaming http will be done separately, tracked by https://github.com/Azure/azure-functions-nodejs-library/issues/97


project: Update year in copyright headers to 2014-2019

Coverage remained the same at 100.0% when pulling 26afbcd44e6b637665076f03415fd46e68189bee on 2019 into 1368894e957eb743f76777707249dd2f50447713 on master.

Coverage remained the same at 100.0% when pulling 26afbcd44e6b637665076f03415fd46e68189bee on 2019 into 1368894e957eb743f76777707249dd2f50447713 on master.


Add deepsource for more security testing

This PR adds deepsource for SAST testing to catch more security and styling problems. This will also allow us to get closer to fulfilling the OpenSSF recommondations.

@matmair LGTM - I have authorized the app too


feat: 🚀 add Tezos for Iran

Separated tag row from fundraise row.
Replaced a tags with buttons (not component yet)


Egress rule must support Mongo/Redis/TCP services

Context: production readiness proposal and plan
The feature “cluster egress” is identified as incomplete test coverage. As a measure to reach Istio production quality in 0.3, this issue is opened to track the progress of providing sufficient test coverage for the feature in question.
This issue is initially assigned to the working group leads.
Recommendations:

Come up with a test plan for how the feature should be tested. Identify and document (in this issue, or a separate document this issue will link to) test cases and whether each will be covered by an integration test (with some level of mocking and/or starting up selected components in test environment), or end to end test (aka system test, which brings up the whole Istio to exercise the feature; currently live in the istio/istio repo).
If you expect the test plan is complex and controversial, consider having it formally reviewed.
State an ETA in the issue, and assign this to a developer who will execute the test plan.
Execute the test plan as the highest priority for 0.3.
For any bug or defect identified by the new test cases, file a new issue and link it from this one.
Close this issue only when the test plan is completely executed, and all additional issues identified in step 3 are fixed.

If you see a risk of not fixing this issue by end of 0.3, please contact<EMAIL_ADDRESS>as soon as possible. We will also periodically ping the issue for update.

Need to be able to specify external mongo/redis or generic TCP services, and be able to collect envoy metrics for connections to these services, and be able to apply circuit breakers for connections to these services

Proposed syntax - using CIDR notation in service field.
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
  name: tcp-egress-rule
spec:
  destination:
      service: <IP_ADDRESS>/24
  ports:
    - port: 30000
      protocol: tcp

This rule will allow tcp connection to port 30000 for tcp protocol. Note that CIDR notation will be allowed for tcp protocol only, for example the following rule will be invalid:
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
  name: tcp-egress-rule
spec:
  destination:
      service: <IP_ADDRESS>/24
  ports:
    - port: 30000
      protocol: tcp
    - port: 80
      protocol: http <-- unable to use http protocol for CIDR.

@rshriram @kyessenov what do you think?

Continuing with https://github.com/istio/pilot/issues/1417#issuecomment-337238578, domain notation could not be used for tcp, so the following rule will not be valid:
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
  name: httpbin-egress-rule
spec:
  destination:
    service: httpbin.org
  ports:
    - port: 80
      protocol: http
    - port: 30000
      protocol: tcp <- unable to use FDQN for tcp rules

@vadimeisenbergibm this sounds pretty good. Also, the restriction applies IF and ONLY If there is a CIDR notation. If user specifies simple IP address, then she should still be able to define HTTP protocol.
Another thing that is missing is mongo, redis. I think for Mongo, the same principle as TCP would apply (use CIDR notation). But for Redis, the client connects to Envoy and envoy picks an upstream redis instance, or client accesses some IP address, we trap it on port 2379 and pick an upstream host based on it.
I think for both of these cases, the user would probably specify service: * and use protocol: mongo or protocol: redis to tell us that its a mongo/redis service. In this case, we should just create a listener on the user specified port, with the appropriate filter.
@nnmnellis is actually using an IP address based egress rule on AWS, to monitor accesses to the metadata service (http).

surprisingly this worked for us when talking to the EC2 metadata service
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
  name: ec2-instance-metadata-rule
  namespace: istio-system
spec:
  destination:
    service: "<IP_ADDRESS>"
  ports:
    - port: 80
      protocol: http

@nmnellis - this is by design, according to the envoy's virtual host configuration. CIDR notation would not work, e.g. "<IP_ADDRESS>/24".

@rshriram I confused with regard to mongo and redis. How the mongo and redis clusters will be configured, in the envoy configuration? Will the istio user provide custom envoy configuration for Istio, that will contain mongo and redis clusters?

We already support Mongo and redis. The user would do something like
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
  name: mongo-rule
  namespace: istio-system
spec:
  destination:
    service: "<IP_ADDRESS>"
  ports:
    - port: 3308
      protocol: Mongo

or in a simpler way:
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
  name: ec2-instance-metadata-rule
  namespace: istio-system
spec:
  destination:
    service: *
  ports:
    - port: 3308
      protocol: Mongo

We would setup a listener on port 3308, with the Mongo filter installed and use the orig_dst cluster. Business as usual :). The benefit is that we get metrics for mongo/redis.
Now, there is one caveat here: using TLS origination. One option is to add a new protocol MONGO-TLS.. Or we just add a simple use_tls: true in the Egress rule. IF set, we setup a cluster with SSL context. IF we use the use_tls: true, we can even get rid of the HTTPS port, and basically ask users to configure standard HTTP, and then set the use_tls: true (makes things much more readable and avoids ambiguity).

@rshriram agreed regarding use_tls: true. With SNI support in Envoy https://github.com/envoyproxy/envoy/issues/1843 we could support real HTTPS.

Can I assign this issue to you ?

@rshriram Sure, please assign the issue to me.

@rshriram I wonder what will be gained by supporting MongoDB and Redis protocols explicitly, instead of plain TCP?

More metrics and control :). If we are supporting TCP, might as well support the other non HTTP protocols as well.

Can the app directly connect to the backend servers instead of going through the sidecar?  It will add additional network overhead. Also, it will use additional resources from sidecar that will cause additional performance impact.  I also don't want the app to go through sidecar to connect to other pods.  ISTIO should be used only when user is accessing to the app.

Issue moved to istio/istio #1476 via ZenHub


No interpolation for instrument response containing a single dec bin

HAL tries to interpolate between dec bins when finding the detector response to convolve a point source with. However, sometimes we will provide a detector response file containing only one dec bin (e.g. for testing, or for specialized analyses). In that case, HAL should never try to interpolate, as the interpolation routine assumes there are at least two dec bins and crashes when provided with only one dec bin. This pull request fixes that problem.

Needs work for extended sources.

Once the tests pass, I will merge this branch. @maloneka verified that this feature works for point sources. This is needed for development work on HAWC.


Connect to running tern server

This is not really an issue, more a question. I'm having some issues with the completion (unable to reproduce) and would like tern_for_vim to connect to a running server (running with --verbose). How can I make tern_for_vim connect instead of starting a new server?

If you run the server in your project dir (the dir where .tern-project lives), it will create a .tern-port file there, and if you start using tern_for_vim on that project, it should automatically connect to the running server (might need to kill existing servers first, if you already had files in that project open).

I'm trying to accomplish this as well. I'm running a standalone tern server and then launching vim (nvim in my case, not sure if that matters?) from the same directory that contains the .tern-port file. I can see that tern works within a nvim session. But if I exit nvim and reopen it, it seems my tern cache has been cleared completely. But maybe I'm understanding how this is supposed to work.

Is the file that you're editing also in that same directory? Tern_for_vim will look for a .tern-port file in what it considers the "project directory" of the file you're editing -- the nearest enclosing directory with a .tern-project file, or failing that, the script file's directory itself.


cannot opt out from version control

Which version of the AzCopy was used?
Note: The version is visible when running AzCopy without any argument
Version is 10.0.4-Preview
Which platform are you using? (ex: Windows, Mac, Linux)
Windows Server 2016
What command did you run?
Note: Please remove the SAS to avoid exposing your credentials. If you cannot remember the exact command, please retrieve it from the beginning of the log file.
param(
[Parameter(Mandatory=$true)][string] $dbname
)
$ErrorActionPreference = "Stop"
$targetPath = "D:"
$containerBasePath =  'NOPE'
$sasToken = 'DOUBLE-NOPE'
$containerPath = $containerBasePath+$sasToken
$blobs = D:\AzCopy\AzCopy.exe list $containerPath
if (!$blobs) { throw "No backups found at all." }
$last = $blobs | select-string "$dbname`_" | sort -Descending | select -First 1
if (!$last) { throw "No latest backup found." }
$last
$srcPath = $containerBasePath+$last+$sasToken
set AZCOPY_CONCURRENCY_VALUE=10
D:\AzCopy\AzCopy.exe cp "$srcPath" "$targetPath" --overwrite --output=json > $null
What problem was encountered?
Always returns error on version 10.0.4-Preview after version 10.0.5-Preview was released. Version update should be done manually by sysadmins and there should be an opt-out settings (maybe configured by azcopy env)
How can we reproduce the problem in the simplest way?
just copy something from an azure blob storage with a version previous to the latest preview.
Have you found a mitigation/solution?
Apart from updating azcopy version, no mitigation/solution is available. There is no documented opt out mechanism.

Hi @gmassari-88, I've fixed this issue in 10.0.8, please give it try! Thanks for your patience!


AutomationId may only be set one time -> Bug?

Repro:

Have two content pages, both with an automationId set
First present only one
Then replace the first by the second

(Real-world scenario: If a user is logged in present them their start page, if not show the login form.)
Result:
2019-05-10 15:57:19.844400+0200 AutomationIdRepro.iOS[27736:75082994] Unable to update view:: System.InvalidOperationException: AutomationId may only be set one time.
  at Xamarin.Forms.Element.set_AutomationId (System.String value) [0x00008] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:56
  at Fabulous.DynamicViews.ViewBuilders.UpdateElement (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.Element target) [0x00457] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:389
  at Fabulous.DynamicViews.ViewBuilders.UpdateFuncElement@ (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.Element target) [0x00000] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:339
  at<EMAIL_ADDRESS>(Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.Element target) [0x00000] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:338
  at Fabulous.DynamicViews.ViewBuilders.UpdateVisualElement (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.VisualElement target) [0x00044] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:526
  at<EMAIL_ADDRESS>(Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.VisualElement target) [0x00000] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:520
  at Fabulous.DynamicViews.ViewBuilders.UpdatePage (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.Page target) [0x00044] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:9210
  at<EMAIL_ADDRESS>(Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.Page target) [0x00000] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:9204
  at Fabulous.DynamicViews.ViewBuilders.UpdateContentPage (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.ContentPage target) [0x00044] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:10252
  at<EMAIL_ADDRESS>(Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.ContentPage target) [0x00000] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:10246
  at Fabulous.DynamicViews.Converters.updateNavigationPages (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevCollOpt, Microsoft.FSharp.Core.FSharpValueOption`1[T] collOpt, Xamarin.Forms.NavigationPage target, Microsoft.FSharp.Core.FSharpFunc`2[T,TResult] attach) [0x00274] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\ViewConverters.fs:556
  at Fabulous.DynamicViews.ViewBuilders.UpdateNavigationPage (Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.NavigationPage target) [0x00339] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:9760
  at<EMAIL_ADDRESS>(Microsoft.FSharp.Core.FSharpValueOption`1[T] prevOpt, Fabulous.DynamicViews.ViewElement curr, Xamarin.Forms.NavigationPage target) [0x00000] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\Xamarin.Forms.Core.fs:9712
  at Fabulous.Core.ProgramRunner`2[model,msg].updateView (model updatedModel) [0x00067] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\ElmishProgram.fs:92
  at Fabulous.Core.ProgramRunner`2[model,msg].processMsg (msg msg) [0x0002e] in C:\projects\elmish-xamarinforms\src\Fabulous.Core\ElmishProgram.fs:68

Complete repro attached: AutomationIdRepro.zip
--
The actual exception is being thrown by Forms here. But I don't know why it's thrown in the first place. I assume that it's set for a nth time is caused by re-using stuff through Fabulous?

@aspnetde Thanks for reporting the issue!
I was able to locate the root of the problem thanks to your repo.
It should be fixed in the next version. :)

Very cool, thanks!


wishlist: textarea enterbox

I'd like to be able to have the user input a block of text, like the textarea input in html.

Could you explain the request a bit more?  Do you want a textbox that is sort of like a Word document with lots of formatting?

no, just multi-line text.


What is this problem

I try curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash in bash command. but fail this command help me
remote: Counting objects: 6504, done.
remote: Total 6504 (delta 0), reused 0 (delta 0), pack-reused 6504
Receiving objects: 100% (6504/6504), 1.94 MiB | 442.00 KiB/s, done.
Resolving deltas: 100% (4031/4031), done.
Checking connectivity... done.
error: unable to create file test/fast/Aliases/"nvm alias" should not accept aliases with slashes (Invalid argument)
error: unable to create file test/fast/Aliases/"nvm unalias" should not accept aliases with slashes (Invalid argument)
error: unable to create file test/fast/Aliases/Running "nvm alias <aliasname> <target>" again should change the target (Invalid argument)
error: unable to create file test/fast/Aliases/Running "nvm alias <aliasname>" should list but one alias. (Invalid argument)
error: unable to create file test/fast/Aliases/Running "nvm alias" lists implicit aliases when they do not exist (Invalid argument)
error: unable to create file test/fast/Aliases/Running "nvm alias" lists manual aliases instead of implicit aliases when present (Invalid argument)
error: unable to create file test/fast/Aliases/Running "nvm alias" should list all aliases. (Invalid argument)
error: unable to create file test/fast/Aliases/lts/"nvm alias" should ensure LTS alias dir exists (Invalid argument)
error: unable to create file test/fast/Listing paths/Running "nvm which 0.0.2" should display only version 0.0.2. (Invalid argument)
error: unable to create file test/fast/Listing paths/Running "nvm which foo" should return a nonzero exit code when not found (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls 0.0.2" should display only version 0.0.2. (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls 0.2" should display only 0.2.x versions. (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls foo" should return a nonzero exit code when not found (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls io" should return NA (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls node_" should return a nonzero exit code when not found (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls stable" and "nvm ls unstable" should return the appropriate implicit alias (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls system" should include "system" when appropriate (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls" should display all installed versions. (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls" should filter out ".nvm" (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls" should filter out "versions" (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls" should include "system" when appropriate (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls" should list versions in the "versions" directory (Invalid argument)
error: unable to create file test/fast/Listing versions/Running "nvm ls" with node-like versioning vx.x.x should only list a matched version (Invalid argument)
error: unable to create file test/fast/Running "nvm alias" should create a file in the alias directory. (Invalid argument)
error: unable to create file test/fast/Running "nvm current" should display current nvm environment. (Invalid argument)
error: unable to create file test/fast/Running "nvm deactivate" should unset the nvm environment variables. (Invalid argument)
error: unable to create file test/fast/Running "nvm install" with "--reinstall-packages-from" requires a valid version (Invalid argument)
error: unable to create file test/fast/Running "nvm install" with an invalid version fails nicely (Invalid argument)
error: unable to create file test/fast/Running "nvm unalias" should remove the alias file. (Invalid argument)
error: unable to create file test/fast/Running "nvm uninstall" should remove the appropriate directory. (Invalid argument)
error: unable to create file test/fast/Running "nvm uninstall" with incorrect file permissions fails nicely (Invalid argument)
error: unable to create file test/fast/Running "nvm unload" should unset all function and variables. (Invalid argument)
error: unable to create file test/fast/Running "nvm use foo" where "foo" is circular aborts (Invalid argument)
error: unable to create file test/fast/Running "nvm use iojs" uses latest io.js version (Invalid argument)
error: unable to create file test/fast/Running "nvm use system" should work as expected (Invalid argument)
error: unable to create file test/fast/Running "nvm use x" should create and change the "current" symlink (Invalid argument)
error: unable to create file test/fast/Running "nvm use x" should not create the "current" symlink if $NVM_SYMLINK_CURRENT is false (Invalid argument)
error: unable to create file test/slow/Running "nvm current" should display current nvm environment. (Invalid argument)
error: unable to create file test/slow/nvm exec/Preamble works and respects "silent" flag (Invalid argument)
error: unable to create file test/slow/nvm exec/Running "nvm exec --lts" should work (Invalid argument)
error: unable to create file test/slow/nvm exec/Running "nvm exec 0.x" should work (Invalid argument)
error: unable to create file test/slow/nvm exec/Running "nvm exec" should pick up .nvmrc version (Invalid argument)
error: unable to create file test/slow/nvm reinstall-packages/Running "nvm copy-packages $(nvm ls current)" should error out (Invalid argument)
error: unable to create file test/slow/nvm run/Running "nvm run --harmony --version" should work (Invalid argument)
error: unable to create file test/slow/nvm run/Running "nvm run --lts" should work (Invalid argument)
error: unable to create file test/slow/nvm run/Running "nvm run 0.x" should error out sensibly when 0.x is not installed (Invalid argument)
error: unable to create file test/slow/nvm run/Running "nvm run 0.x" should work (Invalid argument)
error: unable to create file test/slow/nvm run/Running "nvm run" should pick up .nvmrc version (Invalid argument)
error: unable to create file test/slow/nvm uninstall/Running "nvm uninstall 0.12.6" uninstalls v0.12.6 (Invalid argument)
error: unable to create file test/slow/nvm uninstall/Running "nvm uninstall" with incorrect file permissions fails nicely (Invalid argument)
error: unable to create file test/slow/nvm use/Running "nvm use --lts" uses latest LTS version (Invalid argument)
error: unable to create file test/slow/nvm use/Running "nvm use --lts=foo" uses latest "foo" LTS version (Invalid argument)
error: unable to create file test/slow/nvm use/Running "nvm use iojs" uses latest io.js version (Invalid argument)
error: unable to create file test/slow/nvm use/Running "nvm use node" uses latest stable node version (Invalid argument)
error: unable to create file test/slow/nvm use/Running "nvm use v1.0.0" uses iojs-v1.0.0 iojs version (Invalid argument)
error: unable to create file test/slow/nvm use/Running "nvm use" calls "nvm_die_on_prefix" (Invalid argument)
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry the checkout with 'git checkout -f HEAD'

Failed to clone nvm repo. Please report this!

What shell and OS are you using? Are you overriding any shell builtins in your profile files? What version of git do you have?

I get that issue too. Git version 2.14.1.windows.1 and Windows 10.

@demnodey are you on Windows as well?
If so, it might be a bug in WSL/BashOnWindows.

I use the full version of cmder, which I got to work last time. I did try it on Git Bash, which failed, but that issue was referenced here https://github.com/creationix/nvm/issues/1283

@pastorsj nvm only should work on Windows with BashOnWindows, which claims to be POSIX compliant - it definitely is not supported on git bash. If cmder is POSIX compliant, then I'll support it; if not, then I'm afraid I can't.

@ljharb I believe cmder is POSIX compliant since I have gotten it to work before on a different computer in the past. Where would this error be showing up in the code?

Specifically it looks like git itself is having trouble cloning the repo.

I can replicate the problem when I run git checkout -f HEAD, so I would agree. Is this purely a git problem or something else?

Seems like purely a git/Windows issue :-/

Closing; answered.


not this.arrray, it has to be this.array with two "r"

https://github.com/adarshkannada/shabdha/blob/eec8960685c1fbda59e5632a21ac434ad8267084/searchTechniques.js#L40

fixed


On each new nvim session the commands are shown in random order

Each new nvim session I get a new order of my commands in the command center for ex
open nvim, open command center (:Telescope command_center)

close nvim, open nvim again, open command center

The order of the commands should be fixed and prefereably to the order in which the command_center.add() functions are called

Duplicate of #16. I am gonna ask the same question that I asked in that issue:
Do you have a strong reason for displaying the commands in the same order that they were inserted?

Yes, I usually put the most used commands up top and use up/down navigation most of the time instead of fuzzy finding. Generally I think it is confusing for the user to have them appear in random order on each load.

^ That's a good reason, and I'll add one: I'd like my commands to be ordered by category first, so (for example) I can see everything related to git together, then everything related to system commands, etc.  I don't remember everything that's in the command center, so I look at the list before I start typing, and it's easier to have an idea of what to type if I can quickly scan and see what I want.
I actually thought that's what the sort_by key did in the extension config, but that's different.  Maybe this could be an optional key like order_by that lets you order the commands in different ways?  By category, by insertion order, or if it's not set, however is best for performance?

I have the same workflow as tjkirch, and also initially thought sort_by in the config applied to both the initial loading of the commands as well as filtering. Any reason it doesn't apply to the initial list?

I finally got some time today and added this feature. Please check it out!

thanks, works like a charm!


style: add hover label for gold badge

Currently, mouse hover on gold badge for Turbo spaces displays a "Verified space" label. This is correct for gray badge, but for gold it should instead read "Turbo space".

It's on purpose, Turbo is not something we talk about in our UI, may confuse some.

I see, closing then.


Improve profile layout

Please, go through these steps before you submit a PR.

[x] My Pod Leader knows I'm working on this Pull Request
[X] I've explained what the Pull Request is adding.
[x] I've explained why this is important.

What I have done here:

Improved profile layout
Add header background
Fixed footer icons alignment

Some SS(s) below.

Issues related:
https://github.com/MLH-Fellowship/march-2022-prep-portfolio/issues/3
https://github.com/MLH-Fellowship/march-2022-prep-portfolio/issues/25
https://github.com/MLH-Fellowship/march-2022-prep-portfolio/issues/28

Hey @Hanaffi, great job on that fix :)
I just wanted to echo the same thing @sohamsshah had helped me with this issue. From a design perspective perhaps it's better to have the images at a smaller size in order to have a 2x2 structure. As of now it takes a lot of scrolling to go through everyone's pictures in smaller screens. What do you think?

@Minh-ctrl Well, I thought about removing the whole profile section for tiny screens in another PR.
But lets go with your suggestion , Thanks :)


The download button dissapears after cancelling the download.

Describe the bug :bug:
I found a bug, where if I press the cancel button, the cancel button disappears, and it doesn't appear again.
The download seems to be correctly cancelled, but the button doesn't reappear.
To Reproduce
Steps to reproduce the behaviour:

Upload a torrent
Download a torrent (from another tab)
Cancel the download
See error

Expected behaviour
The button to download should reappear.
Screenshots (if applicable)
After cancelling:

Environment:

Tested on master

@kerzhner this is what I was referring to in you PR


feat: support Diregapic long running operation

Before the implementation, diregapic LRO return unary with compute.v1.Operation. It require manual code to poll the operation until it finish.
async function waitGlobalOperation(operation, project) {
  const globalClient = new compute.GlobalOperationsClient({fallback: 'rest'});
  for (;;) {
    const [getResp] = await globalClient.get({
      project,
      operation: operation.name,
    });
    if (getResp.status === 'DONE') {
      break;
    } else {
      await new Promise(resolve => setTimeout(resolve, 4000));
    }
  }
}

After, the sample code to call insert LRO method
const [operation] = await client.insert({
    project,
    firewallResource: resource,
  });
  const [response, metadata, third] = await operation.promise();
  console.log(response.status === 'DONE') --------> output: true;

It support Compute 4 operation polling service:
GlobalOperations
RegionOperations
ZonalOperations
GlobalOrganizationOperations
This version is not support dynamic diregapic lro, will modify with gapic-generator-typescript recognize diregapic LRO with annotation.

Thanks @summer-ji-eng, it looks great! Left some comment, mostly style+readability.  I'll defer reviewing the DIREGAPIC-specific logic to @vam-google.


CU-4qrkg6 New API that supports calling a script by standardized URL …

…format

Task linked: CU-4qrkg6 New API to call a script by standardized url format

Task linked: CU-4qrkg6 New API to call a script by standardized url format


[Snyk] Security upgrade github-pages from 223 to 224

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `rubygems` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

Gemfile

⚠ Warning
Failed to update the Gemfile.lock, please update manually before merging.

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

558/1000  Why? Proof of Concept exploit, Recently disclosed, Has a fix available, CVSS 3.3
Out-of-bounds Read SNYK-RUBY-COMMONMARKER-3318398
Yes
Proof of Concept

461/1000  Why? Recently disclosed, Has a fix available, CVSS 3.5
Denial of Service (DoS) SNYK-RUBY-COMMONMARKER-3318399
Yes
No Known Exploit

668/1000  Why? Proof of Concept exploit, Recently disclosed, Has a fix available, CVSS 5.5
Denial of Service (DoS) SNYK-RUBY-COMMONMARKER-3318400
Yes
Proof of Concept

461/1000  Why? Recently disclosed, Has a fix available, CVSS 3.5
Denial of Service (DoS) SNYK-RUBY-COMMONMARKER-3318401
Yes
No Known Exploit

(*) Note that the real score may have changed since the PR was raised.
Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Denial of Service (DoS)
🦉 Denial of Service (DoS)
🦉 Denial of Service (DoS)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Add data_template and server_key to firebase configuration (close #134)

Codecov Report

Merging #135 (baef0c9) into master (ad021a5) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #135   +/-   ##
=======================================
  Coverage   57.84%   57.84%
=======================================
  Files          14       14
  Lines        1122     1122
=======================================
  Hits          649      649
  Misses        379      379
  Partials       94       94

Impacted Files
Coverage Δ

app.go
40.00% <ø> (ø)

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


Fix the script skipping issue by not emitting Done in the Servo Providers when already Done

Scripts were acting quite strange, such as skipping frames, not going at the right speed.
After having a look, it seems that the Sequence Provider is running the emit Task Group / update Count and emit multiple times for the same group/count. This will restart that script frame each time it does this - if it spams for the whole length of the frame, then the servo won't ever get a chance to move.
It does this because the Group is emitting Done multiple times.
The Group Provider emits Done multiple times because the Servos emit Done multiple times. This is because the Servos run on Sensors (90 times a second) and once the time is over for the servo it keeps emitting Done... 90 times a second. Causing too many triggers of the Group Provider on the Servo's Done.
The solution in this PR is to add information so that the Servo Providers know that they are already in a Done state and don't need to re-emit Done.
I've tested in Webots and it looks good. Real robot looks good too.
Things left to do

[x] Test real robot

Replaced by #1256.


[UX] Improve the policy publish view

This UI can be added as a modal window on the previous page. The first option is simple dropdown action items. Enable/Disable can be a simple toggle button, policy version can be dropdown list & order is a text filed with default number
IMHO Current UI adds a cognitive overload to the user.

Thank you for your contribution!
We are closing this issue since it has not been prioritized for a long time. Chances are that it has already been solved in more recent versions. If not, we will be re-evaluating this when it becomes a priority.


Pulumi doesn't seem compatible with AGIC

Hey,
I'm trying to spin up a Kubernetes cluster (AKS) on Azure with an Application Gateway and then use something called Application Gateway Ingress Controller to configure the app gateway in future.
To do this, I've created the AKS cluster and a "blank" app gateway on Pulumi. Then was planning to hand off control to AGIC and ignore any changes to the Http listeners, backend pools etc. However, when I do a pulumi refresh and it brings in the new application gateway state, it seems like the business logic rules in Pulumi are unhappy with some the things that AGIC has done (even if I ignore) and so I get stuck when I do a pulumi preview (post the refresh). I get lots of the following errors

For example, it seems like Pulumi requires a backend pool to have an IP address or FQDN set, but there is not a restriction Azure seems to impose (see attached).

I'd ideally like to keep the initialisation of the app gateway in Pulumi, since I want to control the SSL certs, front-end IP and scaling from there. Have added the code for my "blank" app gateway below, for reference
            var publicIpName = $"{context.StackName}-primary-aks-ip";
            var publicIpArgs = new PublicIpArgs
            {
                ResourceGroupName = builderWithNetwork.GetMainResourceGroupName(),
                Name = publicIpName,
                Sku = "Standard",
                AllocationMethod = "Static",
                IdleTimeoutInMinutes = 4,
                IpVersion = "IPv4",
            };
            var ipAddress = new PublicIp(publicIpName, publicIpArgs, customResourceOptions);

            var httpProbe = _GetDefaultHttpProbe();
            var httpsProbe = _GetDefaultHttpsProbe();
            var httpPort = new ApplicationGatewayFrontendPortArgs {Name = "httpPort", Port = 80};
            var httpsPort = new ApplicationGatewayFrontendPortArgs {Name = "httpsPort", Port = 443};
            var frontendIpConfiguration = new ApplicationGatewayFrontendIpConfigurationArgs(){ PublicIpAddressId = ipAddress.Id, Name = "appGatewayFrontendIP" };
            var defaultListener = new ApplicationGatewayHttpListenerArgs()
            {
                Name = "default-http-listener",
                Protocol = "Http",
                FrontendPortName = httpPort.Name,
                FrontendIpConfigurationName = frontendIpConfiguration.Name,
            };

            var defaultHttpSetting = new ApplicationGatewayBackendHttpSettingArgs()
            {
                Name = "defaulthttpsetting",
                Port = 80,
                CookieBasedAffinity = "Disabled",
                PickHostNameFromBackendAddress = false,
                Protocol = "Http",
                RequestTimeout = 30,
                ProbeName = httpProbe.Name
            };

            var defaultBackEndPool = new ApplicationGatewayBackendAddressPoolArgs()
            {
                Name = "defaultaddresspool",
                IpAddresses = "<IP_ADDRESS>" //Something that doesn't exist
            };

            var applicationGatewayRequestRoutingRuleArgs = new ApplicationGatewayRequestRoutingRuleArgs()
            {
                Name = "default-rule",
                HttpListenerName = defaultListener.Name,
                BackendAddressPoolName = defaultBackEndPool.Name,
                BackendHttpSettingsName = defaultHttpSetting.Name,
                RuleType = "Basic"
            };

            var frontEndCertificate = new ApplicationGatewaySslCertificateArgs
            {
                Name = "accurx-dot-com-wildcard-certificate",
                KeyVaultSecretId = "SECRET_ID_HERE",
            };

            var aksAppGateway = new ApplicationGatewayArgs
            {
                Name = $"{context.StackName}-primary-aks-appgatway",
                ResourceGroupName = builderWithNetwork.GetMainResourceGroupName(),
                Sku = new ApplicationGatewaySkuArgs
                {
                    Name = "WAF_v2",
                    Tier = "WAF_v2",
                },
                EnableHttp2 = false,
                Identity = new ApplicationGatewayIdentityArgs
                {
                    Type = "UserAssigned",
                    IdentityIds = builderWithNetwork.Names.BuildAppGatewayIdentity()
                },
                AutoscaleConfiguration = new ApplicationGatewayAutoscaleConfigurationArgs
                {
                    MaxCapacity = 10,
                    MinCapacity = 1
                },
                WafConfiguration = new ApplicationGatewayWafConfigurationArgs
                {
                    Enabled = true,
                    FirewallMode = "Detection",
                    Exclusions = new InputList<ApplicationGatewayWafConfigurationExclusionArgs>(),
                    RuleSetVersion = "3.0",
                    RuleSetType = "OWASP",
                    RequestBodyCheck = true,
                    FileUploadLimitMb = 100,
                    MaxRequestBodySizeKb = 128,
                },
                SslPolicies = new ApplicationGatewaySslPolicyArgs { PolicyType = "Predefined", PolicyName = "AppGwSslPolicy20170401S" },
                FrontendIpConfigurations = frontendIpConfiguration,
                GatewayIpConfigurations = new ApplicationGatewayGatewayIpConfigurationArgs {Name = "appGatewayIpConfig", SubnetId = builderWithNetwork.Network.DmzSubnet.Id},
                FrontendPorts = new [] { httpPort, httpsPort },
                Probes = new [] { httpProbe, httpsProbe },
                SslCertificates = new []{frontEndCertificate},

                //Below are set as defaults, then managed by AGIC
                BackendHttpSettings = defaultHttpSetting,
                HttpListeners = defaultListener,
                RequestRoutingRules = applicationGatewayRequestRoutingRuleArgs,
                BackendAddressPools = defaultBackEndPool,
            };

            var appGateway = new ApplicationGateway($"{context.StackName}-primary-aks-appgatway", aksAppGateway, new CustomResourceOptions()
            {
                Parent = this,
                IgnoreChanges = new List<string>()
                {
                    "backendAddressPools",
                    "requestRoutingRules",
                    "backendHttpSettings",
                    "httpListeners",
                }
            });
        }

        private static ApplicationGatewayProbeArgs _GetDefaultHttpsProbe()
        {
            return new ApplicationGatewayProbeArgs
            {
                Interval = 30,
                Timeout = 30,
                MinimumServers = 0,
                Name = "defaultprobe-Https",
                Protocol = "Https",
                Host = "localhost",
                UnhealthyThreshold = 3,
                Path = "/",
                PickHostNameFromBackendHttpSettings = false,
            };
        }

        private static ApplicationGatewayProbeArgs _GetDefaultHttpProbe()
        {
            return new ApplicationGatewayProbeArgs
            {
                Interval = 30,
                Timeout = 30,
                MinimumServers = 0,
                Name = "defaultprobe-Http",
                Protocol = "Http",
                Host = "localhost",
                UnhealthyThreshold = 3,
                Path = "/",
                PickHostNameFromBackendHttpSettings = false,
            };
        }

Just to make sure I understand correctly - things work fine as long as you don't do a refresh, and doing the refresh itself succeeds, but doing a preview (or presumably update) after the refresh fails?
cc also @mikhailshilkov

Yep that’s exactly right...I could get away without doing the refresh but obviously not ideal!

On 6 Aug 2020, at 17:43, Luke Hoban<EMAIL_ADDRESS>wrote:

Just to make sure I understand correctly - things work fine as long as you don't do a refresh, and doing the refresh itself succeeds, but doing a preview (or presumably update) after the refresh fails?
cc also @mikhailshilkov
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

I guess this would require AGIC support in the upstream TF provider to become available.
https://github.com/terraform-providers/terraform-provider-azurerm/issues/7384

Is there any way I can use "ignore" to make it work for now? When I ignored the HttpListeners etc it didn't seem to work

@lbargery I ran into some issues using Ignore on AGIC last night myself: https://stackoverflow.com/questions/63838596/pulumi-how-to-ignore-changes-made-to-previously-deployed-resources
Same types of errors you're reporting here

Can we get an update on whether we can use ignore to at least make this work? It's quite problematic not being able to do a stack refresh at any point now (without lots of manual editing)

@mikhailshilkov is there any way that you could add a new parameter to "Pulumi refresh" to exlude certain URNs. I notice that you have -t, --target stringArray as an option? A similar one for exclude could be handy here

Any updates on this? Just created an outage on the service we're using with Pulumi because of this change - accidentally wiped away all of our backend targets we use for traffic routing when we were changing a different part of the same stack.

This also happened to me after publishing a net core 5.0 application in an AppService resource via Pipeline AzureDevops.
Changes to the following resources have occurred after "pulumi preview" command:
AppServicePlan:
~ numberOfSites            : 0 => 1
AppService:
~ appSettings                   : {

ConnectionStrings__xxxx: "xxx"
}
~ siteConfig                    : {
linuxFxVersion         : "DOTNETCORE|5.0"
remoteDebuggingVersion : "VS2019"
~ scmType                : "None" => "VSTSRM"
}

siteCredentials               : [
-     [0]: {
- password: "[secret]"
- username: "xxx"
}
]

siteCredentials               : "[secret]"
~ sourceControl                 : {
branch           : "master"
manualIntegration: false

repoUrl          : "VSTSRM"
rollbackEnabled  : false
useMercurial     : false
}

The upstream issue referred above has been fixed a long time ago and shipped in 4.1.0 of this provider. There haven't been any comments since then, so I'll assume it works now and the issue can be closed as resolved. Please report back if it's not.


fix json-basic example

This no longer works with the latest roc nightly, I think the json package json: "https://github.com/lukewilliamboswell/roc-package-explorations/releases/download/0.0.1/cdKMia6cwdRG6Gb0SfXP8cgGF7yTz-i959FV6ZfuS0E.tar.br" needs to be updated.
> ./roc_nightly/roc run ./examples/json-basic/main.roc
Downloading https://github.com/roc-lang/basic-cli/releases/download/0.3.2/tE4xS_zLdmmxmHwHih9kHWQ7fsXtJr7W7h3425-eZFk.tar.br
    into /home/runner/.cache/roc/packages

Downloading https://github.com/lukewilliamboswell/roc-package-explorations/releases/download/0.0.1/cdKMia6cwdRG6Gb0SfXP8cgGF7yTz-i959FV6ZfuS0E.tar.br
    into /home/runner/.cache/roc/packages
 ── INCOMPLETE ABILITY IMPLEMENTATION ─ ...SfXP8cgGF7yTz-i959FV6ZfuS0E/Core.roc ─

This type does not fully implement the EncoderFormatting ability:

41│>           EncoderFormatting {
42│>               u8: encodeU8,
43│>               u16: encodeU16,
44│>               u32: encodeU32,
45│>               u64: encodeU64,
46│>               u128: encodeU128,
47│>               i8: encodeI8,
48│>               i16: encodeI16,
49│>               i32: encodeI32,
50│>               i64: encodeI64,
51│>               i128: encodeI128,
52│>               f32: encodeF32,
53│>               f64: encodeF64,
54│>               dec: encodeDec,
55│>               bool: encodeBool,
56│>               string: encodeString,
57│>               list: encodeList,
58│>               record: encodeRecord,
59│>               tag: encodeTag,
60│>           },

The following necessary members are missing implementations:

    tuple

── INCOMPLETE ABILITY IMPLEMENTATION ─ ...SfXP8cgGF7yTz-i959FV6ZfuS0E/Core.roc ─

This type does not fully implement the DecoderFormatting ability:

61│>           DecoderFormatting {
62│>               u8: decodeU8,
63│>               u16: decodeU16,
64│>               u32: decodeU32,
65│>               u64: decodeU64,
66│>               u128: decodeU128,
67│>               i8: decodeI8,
68│>               i16: decodeI16,
69│>               i32: decodeI32,
70│>               i64: decodeI64,
71│>               i128: decodeI128,
72│>               f32: decodeF32,
73│>               f64: decodeF64,
74│>               dec: decodeDec,
75│>               bool: decodeBool,
76│>               string: decodeString,
77│>               list: decodeList,
78│>               record: decodeRecord,
79│>           },

The following necessary members are missing implementations:

    tuple

───────────────────────────────────────────���────────────────────────────────────

2 errors and 0 warnings found in 3057 ms.

Fixed in #28


Removing buttons line above Jupyter notebook cell

So apparently this is not a Jupyter or Python extension problem but a Visual Studio Code problem which is why I have come here. I am looking for a way to remove the following:

That entire line above the cell with the three buttons on the left and the trash icon on the right. I don't use these at all and it just clutters the entire notebook. Is there a way to remove this so that it looks more like how Jupyter does in the browser? Thank you!

This is not a line numbering issue. The problem every time I start a new line there is a set of shortcut buttons, as pictured above by the initial query, on every line. No one uses these if they know what they are doing with Jupyter notebooks. They use the keyboard, it is quicker as you don't have to leave the keyboard and hold a mouse. pointer device, etc.
Is there a setting in VS Code that will turn off this hindrance to a clean look? As it detracts from being able to view the actions of the previous line.
If not I will stop using  and helping with VS Code Insiders


White space when minimizing width of the window.

Every flexbox layout solution I've seen and tried myself so far had the same issue.
Imagine you minimize the width of the window to the point when content couldn't shrink anymore. In this case the expected behavior would be for content to push the width of container.
But inside a flexbox it is behaving differently. The container width is pushed and stops shrinking but the content is still shrinking further. Which creates a white space to the side of the content.
This behavior completely ruins the use of flexboxes for layouts for now. See attached images. It would be more visible when responsive break points are removed.

This behavior completely ruins the use of flexboxes for layouts for now.

Seems like kind of an exaggeration.
And I don't think this issue is specific to flexbox. If I remove all flexbox declarations from the holy grail layout demo, you see the same problem.
The issue occurs if you have content on your site that's wider than the viewport, so the browser tries to make it visible for you. You could use overflow-x: hidden to remove the scroll bars, but then you couldn't see the content.
Flexbox actually enables a better default behavior here than display: block because flexbox introduces the concept of min-width: auto. Of course that doesn't apply here because the items are in the column direction, but you could add a container around .HolyGrail and see it working.

You are too quick to close the issue. I would recommend to try your solution in real live scenarios as I did. Then you'll find it is not ideal and this issue might become a show stopper.
I can show you several more examples to prove my point.

In the above screenshot I put something inside the content area that should push its width. It could be an image or a table with data. As you can it is not usable this way.
 You can also refer to this Chromium issue about it. (And FWIW, your table example works as expected in Firefox.)
I closed the issue because Solved by Flexbox is a demo site. It's not intended to be a place for reporting bugs or complaints about how flexbox works. For that you can use the www-style mailing list.

I understand. It looks like it is not something you are actively working on. I had spent some time playing with flexboxes a while back but couldn't find a production ready solution for layouts. I hoped somebody had a solution for that.
Thanks for your reply. It gave me some clue that is might be an actual Chrome bug.


Fix typo in execution.md

Replaced kubesystem with kube-system in one command

Fixes
Description

Changelog

Thanks.


explicit representation of dependent variables

(Copied from https://sourceforge.net/p/tulip-control/feature-requests/25/ with creation date 2012-08-09 by @necozay)
GR(1) synthesis tools assume every variable is either environment (input) or system (controlled/output) although transition systems in general might have some dependent variables whose evolution is deterministic given the inputs and outputs. One can imagine these to be "internal states" of a deterministic transition system. Although it is possible to rewrite problems with dependent variables in the GR(1) format (either treating them as environment or system variable and defining all the evolution rules for them explicitly within the spec), might be better to have an explicit representation for them while writing down the problem.

For posterity, in commit c22bfdb9098b91e87f70b74c6e90dd651775fc38 the only test of replace_dependent_vars(), which was introduced in 384b6aa81ed2261b610238b7472381e5967dde19 as stated in a comment above, was moved to tests/form_test.py.


Second test is failing not sure why.

Challenge Map the Debris has an issue.
User Agent is: Chrome/51.0.2704.103.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
function orbitalPeriod(arr) {
var newArr=arr;
var GM =<PHONE_NUMBER>;
var earthRadius = 6367.4447;
var T=0;
for (var i in newArr)
{
var a=newArr[i].avgAlt+earthRadius;
T= 2 * 3.14159 * Math.sqrt(Math.pow(a, 3) /<PHONE_NUMBER> );
newArr[i].orbitalPeriod= Math.round(T);
delete newArr[i].avgAlt;
}
return newArr;
}

Have you reached out to JavaScript Chat Room?

Yup, here. And then it was resolved. The power of the chat in action! 😄

@BKinahan, great.  thanks for let us know.


UX: Store JWT locally

The JWT from the api is currently stored as a variable in JS. We need to store this locally, so users can refresh the page and not have to log in again.

Finished in my react branch.


Add documentation for cache control headers on cloud-backed media

What changes are proposed in this pull request?
Updating documentation to inform customers about how to enable browser caching for our supported cloud media types.
https://voxel51.atlassian.net/browse/TEAMS-3180
How is this patch tested? If it is not, please explain why.
n/a
Release Notes
Is this a user-facing change that should be mentioned in the release notes?

[x] No. You can skip the rest of this section.
[ ] Yes. Give a description of this change to be included in the release
notes for FiftyOne users.

(Details in 1-2 sentences. You can just refer to another PR with a description
if this PR is part of a larger change.)
What areas of FiftyOne does this PR affect?

[ ] App: FiftyOne application changes
[ ] Build: Build and test infrastructure changes
[ ] Core: Core fiftyone Python library changes
[x] Documentation: FiftyOne documentation changes
[ ] Other

Summary by CodeRabbit

Documentation

Added a new section on "Browser Caching" to improve guidance on optimizing performance for cloud-backed media.
Included specific recommendations for configuring cache-control headers for various cloud platforms, enhancing data handling efficiency for users.

LGTM! 🎸

Be sure the docs formatting looks correct before merging. Link here 😄

@benjaminpkane downloaded and reviewed locally it looks correct merging now!


IndexError in judge.py / ClientOSError at getproxy.net

Implementing one of the code examples (or rather just copy pasting it) I encountered the same error I am having for quite a while.
This is the code example I copied:
import asyncio from proxybroker import Broker

async def save(proxies, filename):
    """Save proxies to a file."""
    with open(filename, 'w') as f:
        while True:
            proxy = await proxies.get()
            if proxy is None:
                break
            proto = 'https' if 'HTTPS' in proxy.types else 'http'
            row = '%s://%s:%d\n' % (proto, proxy.host, proxy.port)
            f.write(row)

def main():
    proxies = asyncio.Queue()
    broker = Broker(proxies)
    tasks = asyncio.gather(broker.find(types=['HTTP', 'HTTPS'], limit=10),
                           save(proxies, filename='proxies.txt'))
    loop = asyncio.get_event_loop()
    loop.run_until_complete(tasks)

if __name__ == '__main__':
    main()

When I try to run the code the following error is thrown together with some deprecation warnings:
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning)
/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/aiohttp/client.py:494:
DeprecationWarning: Use async with instead   warnings.warn("Use async
with instead", DeprecationWarning) https://getproxy.net/en/ is failed.
Error: ClientOSError(101, 'Cannot connect to host getproxy.net:443
ssl:True [Can not connect to getproxy.net:443 [Network is
unreachable]]'); https://getproxy.net/en/ is failed. Error:
ClientOSError(101, 'Cannot connect to host getproxy.net:443 ssl:True
[Can not connect to getproxy.net:443 [Network is unreachable]]');
https://getproxy.net/en/ is failed. Error: ClientOSError(101, 'Cannot
connect to host getproxy.net:443 ssl:True [Can not connect to
getproxy.net:443 [Network is unreachable]]'); Traceback (most recent
call last):   File
"/home/sebastian/PycharmProjects/testing/test/test_prox.py", line 27,
in
    main()   File "/home/sebastian/PycharmProjects/testing/test/test_prox.py", line 23,
in main
    loop.run_until_complete(tasks)   File "/usr/lib/python3.5/asyncio/base_events.py", line 387, in
run_until_complete
    return future.result()   File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result
    raise self._exception   File "/usr/lib/python3.5/asyncio/tasks.py", line 241, in _step
    result = coro.throw(exc)   File "/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/proxybroker/api.py",
line 108, in find
    await self._run(self._checker.check_judges(), action)   File "/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/proxybroker/api.py",
line 114, in _run
    await tasks   File "/usr/lib/python3.5/asyncio/futures.py", line 361, in __iter__
    yield self  # This tells Task to wait for completion.   File "/usr/lib/python3.5/asyncio/tasks.py", line 296, in _wakeup
    future.result()   File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result
    raise self._exception   File "/usr/lib/python3.5/asyncio/tasks.py", line 241, in _step
    result = coro.throw(exc)   File "/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/proxybroker/checker.py",
line 26, in check_judges
    await asyncio.gather(*[j.check() for j in self._judges])   File "/usr/lib/python3.5/asyncio/futures.py", line 361, in __iter__
    yield self  # This tells Task to wait for completion.   File "/usr/lib/python3.5/asyncio/tasks.py", line 296, in _wakeup
    future.result()   File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result
    raise self._exception   File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step
    result = coro.send(None)   File "/home/sebastian/PycharmProjects/STW/venv/lib/python3.5/site-packages/proxybroker/judge.py",
line 82, in check
    j=self, code=resp.status, page=page[0], IndexError: string index out of range

I use python3.5.2 and the up to date versions of proxybroker (0.1.4) aiohttp (1.0.2) asyncio (3.4.3).
I'm not sure what causes the error as I did not change the code example and as far as I know I installed all dependencies. Posting the issue on stackoverflow I was asked to create an issue as it seems to be a general problem with proxybroker at the moment.

A quick workaround - not a solution -  would be to add an additional check in the judge.py in line 79 where the exception was raised before. Locally I changed  it to:
        if isinstance(page, type(list())) or isinstance(page, type(dict())):
            log.error(('{j} is failed. HTTP status code: {code}; '
                       'Real IP on page: {ip}; Version: {word}; '
                       'Response: {page}').format(
                j=self, code=resp.status, page=page[0],
                ip=(get_my_ip() in page), word=(rv in page)))
        else:
            log.error(('{j} is failed. HTTP status code: {code}; '
                       'Real IP on page: {ip}; Version: {word}; '
                       'Response: {page}').format(
                      j=self, code=resp.status, page=page,
                      ip=(get_my_ip() in page), word=(rv in page)))

That way I can use proxybroker again.

I'm seeing the same thing with the default Basic code example that prints Found proxy: ....
ProxyBroker 0.1.4, Python 3.5.3, aiohttp 2.0.7.

Please use the latest version which available on github (will be available via pypi/pip in the coming days).


Fix action buttons vertical alignment

Things changed at another place, so this applies now.
Before:

After:

Reviewer: @jfurrow

LGTM! 🚢

THX

i guess we dont need to re-run integration tests for this. 🚢


[BUG] Compile failure with new MLTask Constructor

What is the bug?
https://github.com/opensearch-project/ml-commons/pull/2825 added a new parameter to the constructor.  We use that in a test:

src/test/java/org/opensearch/flowframework/workflow/RegisterLocalPretrainedModelStepTests.java:140: error: no suitable constructor found for MLTask(String,String,,,MLTaskState,,,,,,,,,boolean)

How can one reproduce the bug?
Attempt to compile the code with current upstream dependencies.
What is the expected behavior?
Code compiles.
What is your host/environment?
Multiple environments failed in https://github.com/opensearch-project/flow-framework/issues/856 but you can probably reproduce it anywhere.
Do you have any additional context?
The constructor is annotated @Builder so we should change that line of code to use a builder (omitting the nulls) to be robust to future changes.

Commenting now:)


BRK-650 fix confine logic

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/1966/
Test FAILed.


Backport Steam fix to 17.09

Motivation for this change
This is needed for Steam which expects run.sh to print runtime library paths.
Fixes #32687. Original commit: https://github.com/NixOS/nixpkgs/commit/459e4b78db754872dfbd741e9f136d8998ffcaff
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

Please include the reference to the original commit in the commit message: https://nixos.org/nixpkgs/manual/#idm140737317027664

@orivej Done!

Thank you! And sorry for pinging you back earlier asking to backport this: didn't think through that I could open the PR with backport myself :-)

Note that there is no steam-runtime-wrapped(-i686) in scope so as is this seems to trigger an eval error..

@pbogdan Thank you for such a quick notice, reverted for @yegortimoshenko to fix it.

Hello,
I'm running NixOS 17.09 and I've updated all my systems but am still having this exact same problem.
Any ideas?


Vague error message for SQL password complexity requirements

The error message does not describe how to fix the issue which in my scenario appeared to be due to a password complexity issue:
 Error: creating Flexible Server (Subscription: "22222222-dddd-4444-bbbb-cccccccccccc"
│ Resource Group Name: "rg-kenakams1234-dev"
│ Flexible Server Name: "rg-kenakams1234-dev"): polling after Create: Code="InternalServerError" Message="An unexpected error occured while processing the request. Tracking ID: 'cccccccc-4444-dddd-bbbb-111111111111'"
│
│   with module.postresql_database.azurerm_postgresql_flexible_server.postresql_database,
│   on modules/postresql/main.tf line 37, in resource "azurerm_postgresql_flexible_server" "postresql_database":
│   37: resource "azurerm_postgresql_flexible_server" "postresql_database" {

Stated requirements from Azure portal are:

Your password must be at least 8 characters and at most 128 characters.
Your password must contain characters from three of the following categories

English uppercase letters
English lowercase letters
numbers (0-9)
non-alphanumeric characters (!, $, #, %, etc.).

Your password cannot contain all or part of the login name. Part of a login name is defined as three or more consecutive alphanumeric characters.

Migrated to 1852416


[Feature]: Add an OutboundPacket for deltaV

Is your feature request related to a problem? Please describe.
I'd like to display the remaining deltaV of my rocket on my controler (both stage deltaV and total deltaV).
Describe the solution you'd like
I'd like a new outbout message (similar or even using a resourceMessage) to receive the deltaV from the game.
Describe alternatives you've considered
No alternative considered as the available fuel is not enough to compute deltaV.

Yes, this is certainly high on the list of things to do!

Before tackling this issue, what data seems pertinent to send ? I have the feeling that FlightGlobals.ActiveVessel.VesselDeltaV will give a class that gives all the relevant data. So adding a new function in Telemetry.cs should be straightforward. The question is what to send.
We could send :

Total delta V in current situation
Current Stage deltaV in current situation
Total/Stage delta V in vacuum
Total/Stage delta V in atmosphere (ASL)
Total/Stage burn time
Current TWR/ISP/Thrust in different situation (actual/vacuum/ASL)

What do you think is useful ?
I would suggest

one packet with stage and total delta V in current situation (2 float).
one packet with stage and total burn time in current situation (2 float).

I'm not sure if it is useful to send data for other situation than the current. What do you think ?

As an outsider to the dev of Simpit, but someone who benefits from it, i'd say those first 6 things you listed will be of so much use, and would love to see them all implemented.

I would agree with the seperation of burn time and deltaV. In terms of total data transferred for the average user it certainly is not the most efficient, but from an architectural point of view it certainly does.

In this case my proposition is to create 3 new messages :

DeltaV with 2 float : stageDeltaV and totalDeltaV
DeltaVVacASL with 4 float : stageASLDeltaV, totalASLDeltaV, stageVacDeltaV, totalVacDeltaV
BurnTime with 1 float : stageBurnTime  and totalBurnTime

The idea is that the first message will be the most used I think. The second one for those who wants all the information. And for the burnTime is does not depend on ASL/Vaccum condition.
What do you think ? If you agree, I can implements those.

Hmmm,  Would DeltaVEnviro be clearer? That way it covers both the vacuum and atmospheric environments?
And burn time would need to have 2 floats as well 😄
But by all means, if you would like to have a go at implementing them, be my guest.

See #13 for a proposal. I used deltaVEnv as you suggested. I made a corresponding PR on the Arduino repository.


fix(LIVE-8530): quotes are not readable in light mode

📝 Description
Swap quotes are not readable in light mode. Price component has an optional color prop which determines the text color. If value is not provided text color seemed to be defaulted to white.
Code changes to use theme.colors.palette.text.shade100 as default value the color is not provided.
❓ Context

Impacted projects: LLD
Linked resource(s): https://ledgerhq.atlassian.net/browse/LIVE-8530

✅ Checklist

[ ] Test coverage
[ ] Atomic delivery
[ ] No breaking changes

📸 Demo

🚀 Expectations to reach
Please make sure you follow these Important Steps.
Pull Requests must pass the CI and be internally validated in order to be merged.

This is a generic component (check the path) the text color component is provided by color property. I think you need to change the parent not the component itself (the color props property).

The color prop in the Price component is key of the colors from ~/renderer/styles/theme, rather than a string. By passing the value from parent component, it will require an extra condition to check the current theme mode (Light / Dark) to pass the right value to the Price component.
Code change in this PR use the theme.colors.palette.text.shade100 from the current theme, which is switched by the depending on the mode. (Light / Dark)
Which means, if elsewhere in the code base we pass a color to this Price component, the behaviour should not change. If no color is passed, it will use the color from the theme itself. Switching between dark / light color text.
Let me know what you think of this @sarneijim !!!


MM-23756 Always show unread DMs and GMs in new sidebar

The relevant changes for this are in the accompanying redux PR
Ticket Link
https://mattermost.atlassian.net/browse/MM-23756
Related Pull Requests
https://github.com/mattermost/mattermost-redux/pull/1114

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-5253.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

Thanks @hmhealey
This appears fixed when new sidebar is set on ON in acct. settings, but DM/GMs are not added to LHS when this feature is set to OFF.

@jgilliam17 Huh, good catch. I thought this issue was exclusive to the new sidebar. I'll take a look.

Note: When system setting is "Enabled Default On" and user changes Account Setting for Experimental sidebar to Off.
I retested this morning and saw the DMs are showing up late.
Notification for desktop and browsers are received in real time, but the actual DM on LHS is late and only comes after window is focused.

@jgilliam17 I haven't been able to track down the root cause of this, but I'm going to separate the ticket into two. This fixes the worse problem with the new sidebar (unread DMs never showing up), and I'm pretty sure the problem with the old sidebar is a long-running issue.

New commit detected. SpinWick will upgrade if the updated docker image is available.

Test server creation failed. See the logs for more information.

/update-branch

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit 8a93d58a64fe38148996b0a53ae9e0d198c9a98b.
Access here: https://mattermost-webapp-pr-5253.test.mattermost.cloud

Test server destroyed

@hmhealey
Error trying doing the automated Cherry picking. Please do this manually
+++ Updating remotes...
Fetching upstream
Fetching origin
+++ Updating remotes done...
+++ Creating local branch automated-cherry-pick-of-#5253-upstream-release-5.22-1586362712
Branch 'automated-cherry-pick-of-#5253-upstream-release-5.22-1586362712' set up to track remote branch 'release-5.22' from 'upstream'.
+++ Downloading patch to /tmp/5253.patch (in case you need to do this again)

+++ About to attempt cherry pick of PR. To reattempt:
  $ git am -3 /tmp/5253.patch

Applying: MM-23756 Always show unread DMs and GMs
Using index info to reconstruct a base tree...
M	package-lock.json
M	package.json
Falling back to patching base and 3-way merge...
Auto-merging package.json
CONFLICT (content): Merge conflict in package.json
Auto-merging package-lock.json
CONFLICT (content): Merge conflict in package-lock.json
Patch failed at 0001 MM-23756 Always show unread DMs and GMs
Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

+++ Conflicts detected:

UU package-lock.json
UU package.json

+++ Aborting in-progress git am.

+++ Returning you to the master branch and cleaning up.


Add zip options

The first version of this script actually looked at the contents of a zip folder and ran checksums. It would be great to have a zip option to get the checksums of the contents of a zip file.

For storing the output of ZIP content checksums alongside those of the rest of the target directory contents, would the following example output CSV structure make sense?
filepath,filename,md5
target_dir/docs/file1.txt,file1.txt,<checksum>
target_dir/data/archive.zip,archive.zip,<checksum>
target_dir/data/archive.zip/image1.jpg,image1.jpg,<checksum>

I like the idea that we treat a zip file like both a file and folder, in that it gets its own checksum and the contents get checksums (following rules established in the function call). For instance, we can then see that the structure of the zip has changed without having to compare filepaths even if all the files themselves remain unchanged.


nixos-rebuild switch fails due to ipfs reinitialization

Issue description
nixos-rebuild switch

produces this:
building Nix...
building the system configuration...
stopping the following units: nscd.service
activating the configuration...
setting up /etc...
setting up tmpfiles
reloading the following units: dbus.service
restarting the following units: polkit.service
starting the following units: nscd.service
the following new units were started: ipfs.service, systemd-vconsole-setup.service
warning: the following units failed: ipfs-init.service

● ipfs-init.service - IPFS Initializer
   Loaded: loaded (/nix/store/ic8ci6l87fw4crhkzli4z1q4ll6fnfpb-unit-ipfs-init.service/ipfs-init.service; linked; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2017-05-24 17:46:39 CEST; 27ms ago
  Process: 5866 ExecStart=/nix/store/dlxr5ghak992zqgs04as178a8k9i5c1f-unit-script/bin/ipfs-init-start (code=exited, status=1/FAILURE)
  Process: 5860 ExecStartPre=/nix/store/m9nabb1yjgcl35fl15diklmhnyln6ffs-unit-script/bin/ipfs-init-pre-start (code=exited, status=0/SUCCESS)
 Main PID: 5866 (code=exited, status=1/FAILURE)

Mai 24 17:46:39 terry systemd[1]: Starting IPFS Initializer...
Mai 24 17:46:39 terry ipfs-init-start[5866]: initializing IPFS node at /var/lib/ipfs/.ipfs
Mai 24 17:46:39 terry ipfs-init-start[5866]: Error: ipfs configuration file already exists!
Mai 24 17:46:39 terry ipfs-init-start[5866]: Reinitializing would overwrite your keys.
Mai 24 17:46:39 terry systemd[1]: ipfs-init.service: Main process exited, code=exited, status=1/FAILURE
Mai 24 17:46:39 terry systemd[1]: Failed to start IPFS Initializer.
Mai 24 17:46:39 terry systemd[1]: ipfs-init.service: Unit entered failed state.
Mai 24 17:46:39 terry systemd[1]: ipfs-init.service: Failed with result 'exit-code'.
warning: error(s) occurred while switching to the new configuration

I guess the ipfs initialization script does not work as intended!
Steps to reproduce
Rebuild on unstable ... I guess simply rebuilding a working system with a slight change would trigger this error, if IPFS was enabled before and is still enabled!
Technical details

System: 17.09pre107265.0afb6d789c (Hummingbird)
Nix version: nix-env (Nix) 1.11.9
Nixpkgs version: "17.09pre107265.0afb6d789c"
Sandboxing enabled: build-use-sandbox = true

I guess / hope this will be fixed by https://github.com/NixOS/nixpkgs/pull/26064
Pinging @fpletz FYI.

Hmm, maybe #25531 has something to do with that. In that case #26064 would not fix the problem.  Let me check.

There is a PR to fix this issue: #25782

There was another PR some time ago which tried to fix it, where I confirmed that it worked,... but now it is broken again. Let's hope that #25782 finally fixes this! :smile:

Closed by #25782. The solution is to manually migrate the data (see release notes) or set system.stateVersion = "17.03".


Real data on ExampleUI

Since we merged https://github.com/scaffold-eth/se-2/pull/93 and https://github.com/scaffold-eth/se-2/pull/115, I wanted to put them together, getting real data on example UI + setting the purpose from there.
I noticed a few things with our hooks / utils that I wrote code comments (I'll add some review comments now).
Like we said before, the best way to fine tune our hooks / utils is using them!

Merging this! Still some improvements to make to the hooks, but we'll make them on separate PRs
cc @rin-st Check https://github.com/scaffold-eth/se-2/pull/124/commits/27f7a13bb89220b850ec99d8416d3273534c23f9. I'll explain on https://github.com/scaffold-eth/se-2/issues/118


dylib support

It would be nice to have dylib support for when there is a shared dylib dependency between multiple rust targets, right now this error message is displayed as it ignores dylibs.
found no targets in 197 packages

The idea was to compile a shared rust dependency as a dynamic library because compilation artifacts aren't shared when using corrosion in different catkin packages. This however doesn't work as corrosion will refuse to compile the dylib. Using a cdylib is not an acceptable tradeoff as it would require making the library c-ffi-safe which would not be needed with either shared compilation artifacts or a dylib which was compiled with the same compiler as the bin using it.

Could you elaborate a bit more on the intended usage of this feature?
Do you want to treat the dylib artifact as a regular IMPORTED SHARED library on the CMake side, with the intention of using CMake facilities for packaging / installing of your Rust binary + dylib?
On the cargo side of things - If a bin crate has a dependency on a dylib only library, do you need to call cargo build for the library separately? Intuitively, I would have expected that cargo would compile the dylib dependency and put it somewhere in the build directory of the bin crate.

I would like to save on compilation time, as such it corrosion should probably treat the dylib artifact as a regular IMPORTED SHARED library, yes. Alternatively a respecting rlib as a build option and somehow (re)using those artifacts would be perfect as well.
Yes, if a bin crate has a dependency on a dylib only library, you need to call cargo build for the library separately and provide the libxyz.so beside the bin at runtime. When both are in a single workspace, they both end up in the same folder and it all works out. When using corrosion and specifying the dylib as a dependency, cargo does not build the dylib crate as well (intended behavior) and instead expects the libxyz.so file at runtime. That however does not get installed by corrosion, neither does this work with cdylibs because of #64.
This is what happens when you build a dylib with cargo build.
$ tree dylib
dylib
├── Cargo.lock
├── Cargo.toml
├── src
│   └── lib.rs
└── target
    ├── CACHEDIR.TAG
    └── release
        ├── build
        ├── deps
        │   ├── dylib.d
        │   └── libdylib.so
        ├── examples
        ├── incremental
        ├── libdylib.d
        └── libdylib.so

I set up a test project corrosion-dylib for testing the different options for rust-to-rust catkin compilation with corrosion. I surely got a lot wrong there but I basically tried to build it how I would assume things to hypothetically work.

dylib and cdylib are mutually exclusive so dylib could just be treated like cdylib and then for dynamic libraries only #64 would be a blocker I assume. Out of interest, could rust static libraries, rlibs somehow be supported? That would be the actual solution to the problem of sharing build artifacts with different cmake invocations.

If you are using Rust >= 1.64, you could put cdylib into your Cargo.toml package manifest (so that corrosion imports the crate) and then override the crate type by adding --crate-type=dylib to the build flags (corrosion_set_cargo_flags(target_name --crate-type=dylib)).

I would like dylib support for the usecase of getting corrosion to

copy the dylib to the LIBRARY_OUTPUT_DIRECTORY after users of it are built (staticlib or bin)
for packaging--I use cpack and would like to consume the dependency metadata (ie, make sure staticlib targets that link to dylib targets, (I use -Zstaticlib-allow-rdylib-deps) have proper cpack dependencies setup for them)

Is there interest in this? I'm happy to contribute it.

copy the dylib to the LIBRARY_OUTPUT_DIRECTORY after users of it are built (staticlib, cdylib or bin)

Is the "after users of it are built (staticlib, cdylib or bin)“ bit important? I imagine that would be quite a bit more work than just copying dylibs to the LIBRARY_OUTPUT_DIRECTORY.

for packaging

I would love to see some contributions to improve the packaging story. Ideally this would include some short documentation to help out other users and some tests to ensure installing works as intended.

I use cpack and would like to consume the dependency metadata

Okay, so it seems you do need the dependency information. I see the use case, but maybe you could write a bit more how you would implement this, which edge-cases there are and what is in/out of scope before you start working on a PR.

Also, potentially could pass --crate-type for targets that are both dylib and rlib based on BUILD_SHARED_LIBS?

Until the rlib format is stabilized, corrosion won't use rlibs, so there is no point in ever doing --crate-type=rlib. Do you have any numbers on how much compile-time can be saved by skipping the build of the rlib? I'd imagine it would not be much.


Full node spec

Overview

Checklist

[ ] New and updated code has appropriate documentation
[ ] New and updated code has new and/or updated testing
[ ] Required CI checks are passing
[ ] Visual proof for any user facing features like CLI or documentation updates
[ ] Linked issues closed with keywords

Please the corresponding spec symlink.
Also I think we should include information here about what makes the full node different from the light node, i.e. syncing and storing full blocks.
The table in the Abstract section is good to explain what each component is, I think in the Details section we should explain the how and why more for each component.

Fixed the symlink-related issue and added a note explaining the difference between a light node and full node.
In order to explain each component more, I found it easier to just rid of the table and just add more info and relevant links in the details to reduce redundancy across the codebase.

Merge Activity

Oct 10, 10:33 AM: @Manav-Aggarwal started a stack merge that includes this pull request via Graphite.


Do not require catboost for arm64 builds

Since catboost does not support ARM64 yet, this PR changes autogluon.tabular from noarch to specific builds so that we can specify catboost for non-arm64 only.
https://github.com/conda-forge/catboost-feedstock/pull/95

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@conda-forge-admin, please rerender


Benchmark with olio

Hi,
I use rain to benchmark olio,there is some problem.
I use PHP-version olio 0.2, and json file in config directory.

When I run rain , there is some error like
[Fatal Error] :1:50: White spaces are required between publicId and systemId.
Aug 29, 2011 5:08:35 PM radlab.rain.workload.olio.OlioOperation parseAuthToken
WARNING: Unable to parse for authenticity token
org.xml.sax.SAXParseException: White spaces are required between publicId and systemId.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:242)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:286)
at radlab.rain.workload.olio.OlioOperation.parseAuthToken(OlioOperation.java:181)
at radlab.rain.workload.olio.AddEventOperation.execute(AddEventOperation.java:75)
at radlab.rain.Operation.run(Operation.java:200)
at radlab.rain.LoadGenerationStrategy.doOperation(LoadGenerationStrategy.java:145)
at radlab.rain.PartlyOpenLoopLoadGeneration.doSyncOperation(PartlyOpenLoopLoadGeneration.java:214)
at radlab.rain.PartlyOpenLoopLoadGeneration.run(PartlyOpenLoopLoadGeneration.java:139)

Some kind of operation fail in benchmark(AddEvent EventDetail Login)
I found some error message in Apache log.

[Mon Aug 29 16:36:26 2011] [error] [client <IP_ADDRESS>] File does not exist: /var/www/html/oliophp/public_html/users
[Mon Aug 29 16:36:27 2011] [error] [client <IP_ADDRESS>] File does not exist: /var/www/html/oliophp/public_html/events/new
I would appreciate any help.  Thanks.

Hi,
I have the same problem. Did you solve it?


📚 [Documentation] - Adding video demo of website in ReadMe.md file

Description of the documentation deficiency / workflow suggestion. ✍🏻
A demo video of the website task is listed as to do in README.md
Contributor terms

[X] I agree to follow the Contributing Instructions

https://github.com/CatsInTech/GitHub-ReadMe/assets/111640999/d4822bde-6509-4ca4-b009-b41198256821

But we are changing the complete contents of the landing page mate! 😔

Look at #84

That means it can be done later. Should I close this issue or should I leave it as it is?
As for issue 84, I will try to contribute to it.

Leave it as it is now, we'll look back at this once we are done with the initial Landing page contents. 😊
Amazing thanks @Swastik007sharma

I would like to contribute to this issue please assign me this problem under Gssoc'23. @Swastik007sharma

@ashankritwik07 Let me know what is your plan? Also did you read the comment I put three days ago? 🤔

@praveenscience As it is mentioned in the issue that I have to add a demo video of the website to the ReadMe file so I will drag and drop the demo video to the ReadMe file.
that what I understood from the given issue.