Secure Websocket Transport Issue

Describe the bug
I can't get the Websocket Transport to work properly in secure mode.
When testing builds, I'm getting in one scenario the following error on the server:
TlsException: Handshake failed - error code: UNITYTLS_INTERNAL_ERROR
While in another scenario I'm getting on the client:
TlsException: Handshake failed - error code: UNITYTLS_INTERNAL_ERROR, verify result: UNITYTLS_X509VERFIY_FLAG_NOT_TRUSTEDTlsException: Handshake failed - error code: UNITYTLS_INTERNAL_ERROR, verify result: UNITYTLS_X509VERIFY_FLAG_NOT_TRUSTED
When testing with the editor however, when it starts as server it always hangs/freezes when a client connects.
Repro project
I was able to produce this mwe:
https://drive.google.com/open?id=1eioGuSSMYT1EE4KSYd3hMdbfaug23cFw
Unfortunately I can't share the certificate I used and I couldn't generate or find one for testing.
To Reproduce
Steps to reproduce the behavior:
(Windows server, WebGL client)

Build for windows
Copy certificate in build's *_Data/Resources folder
Build for WebGL
Run two built instances
Start as "server only" in windows instance
Start as "client" in webgl instance
Windows server instance outputs error TlsException: Handshake failed - error code: UNITYTLS_INTERNAL_ERROR

(Windows server, Windows client)

Build for windows
Copy certificate in build's *_Data/Resources folder
Run two built instances
Start as "server only" in one instance 1
Start as "client" in the other instance 2
Client outputs error TlsException: Handshake failed - error code: UNITYTLS_INTERNAL_ERROR, verify result: UNITYTLS_X509VERFIY_FLAG_NOT_TRUSTEDTlsException: Handshake failed - error code: UNITYTLS_INTERNAL_ERROR, verify result: UNITYTLS_X509VERIFY_FLAG_NOT_TRUSTED
7: Start as "client" again in instance 2
8: Instance 2 completely hands/freezes

(Editor server, Windows client)

Build for windows
Run both the built instance and the editor
Start server in editor
Start client in built instance
Editor completely hangs/freezes

Expected behavior
Everything sould work without "not trusted" errors or freezing.
Desktop (please complete the following information):

OS: Windows 10
Build target: Windows, WebGL
Unity version: 2018.4.19f1
Mirror branch: release 11.4.2

Additional context
In order to create the certificate for the server, I had these three files (that work fine in another context):
cert.cer   (certificate signed by intermediate CA)
cert.key   (certificate private key)
CA.cer     (intermediate to root CA certificates chain)
I used the command:
openssl pkcs12 -export -in cert.cer -inkey cert.key -out cert.pfx -certfile CA.cer
To make cert.pfx so that .NET could read it. Is this correct?

Sorry for posting again, can anyone help?

The exception complains about TLS, so if there's an issue with your certificate, then it may not be possible for us to find a solution only based on this information. Just to make sure, did the certificate work in any other project?

Thank you for the reponse and yes, the certificate works in other projects. However it's in a different format (the three files I mentioned). Maybe I messed up the conversion to .pfx? Is the procedure I used correct?
What about the unity editor freezing when a client tries to connect? That doesn't seem to be related to the certificate.

What about trying the .pfx with a different transport other than Websocket first? I've omitted the "-certfile CA.cer" switch myself. And I'm not very experienced with Mirror yet, but I'm having a similar issue of client freezing when trying to connect a client using secure = true to an unsecure server. I'm able to connect otherwise, though there seem to be other Websocket issues that I'm still figuring out, which aren't related to your certificate problem.

Okay, for the record I've tried to generate a self-signed certificate for "localhost" at selfsignedcertificate.com, and it behaves just as you explained. When I try to connect using a client, the server freezes. When I try to connect again, the client also freezes. Does anyone know how to the enable support of self-signed certificates in WebsocketTransport during development?

What about trying the .pfx with a different transport other than Websocket first? I've omitted the "-certfile CA.cer" switch myself. And I'm not very experienced with Mirror yet, but I'm having a similar issue of client freezing when trying to connect a client using secure = true to an unsecure server. I'm able to connect otherwise, though there seem to be other Websocket issues that I'm still figuring out, which aren't related to your certificate problem.

The other transports do not require a certificate, how can I try?
I have experienced the issue you described too: a secure client freezes when connecting to an unsecure server

Oh you're right, idk why I thought that I saw a Secured option in another Transport, well in that case testing the pfx using some different software seems to be the best way. You can also open and verify the .crt directly on Windows to make sure it's valid using its CA, and of course, you have to connect using the domain even if you're testing on a localhost. Either way, you can try to further discuss the issue on Mirror's Discord channel. It seems this Transport far from production ready, so hopefully the docs will be updated to reflect the current state as soon as possible.

So the server needs to be accessed at the domain the certificate is for?
And do you know of any external software I could use to test the .pfx?
When I have time I'll try myself with a self signed certificate for localhost and report back.

Well pfx is a universally used certificate type, so there shouldn't be an issue finding another hosted web application. I don't have too much SSL experience myself, but for example the ASP.NET Core back-end uses it :) I have no idea what's your hosting/domain situation, and I have to assume that you know how certificates work, i.e. how is the validation performed. I got a Let's Encrypt certificate using manual DNS validation at my domain provider via sslforfree.com, and I pointed the domain's A record to the server IP (or to a CNAME record of a DDNS service domain in order to perform switching when dynamic IP addresses are in place).

@Jackal93 you need to access the server by the hostname in the certificate. If your certificate is for mycoolgame.com but you’re connecting to the server which is identifying itself as localhost, the localhost hostname does not exist on the certificate and it will be untrusted due to CN mismatch.
If you want self signed to work correctly then you will need to trust the certificate in your OS. That way it should hopefully silence the untrusted error.

Thanks everyone for the help!
I have made some progress but it still doesn't work completely.
I have created a self signed certificate for localhost and now clients are able to connect to the server without runtime exceptions! However there are issues with player prefabs not spawning on clients.
Here's the problem, note that player prefab is set to auto create in the Network Manager:

server starts
client 1 connects and his prefab is spawned on both server and client as expected
client 2 connects, his prefab is spawned everywhere as expected (i.e. on server, client 1 and client 2)
client 3 connects but he only spawns the prefab of client 1 (he does NOT see either client 2 or himself); his prefab is spawned correctly on server, client 1 and client 2 though
client 4 connects but he doesn't spawn any prefab (he doesn't see himself or any other player); his prefab is spawned correctly everywhere else though, even on client 3
client 1 disconnects and reconnects but he doesn't spawn any prefab (like client 4); his prefab is spawned correctly only on server, client 2 and client 3

Should I open another issue for this?

Hello, any eta on the fix?

Hello, any eta on the fix?

Im working on fixing websocket. Message in newwebsocket or websocket discord. I have maybe a fix. So far its working on my end but need more testing done.

Closing as the original issue has been resolved by having the correct certificate file in place.


Custom validation messages ignores label value passed from quickField

I have a custom validation message like this
SimpleSchema.messages({
  required: "[label] " + mf('validation_message_is_required', 'is required'),
});

and I'm passing a label value from quickField using a helper:
{{> afQuickField name='fullName' label=mfFullName template="bootstrap3" }}

  'mfFullName': function() {
    return mf('shipping_address_full_name', 'Full Name');
  },

But it seems like the [label] value in the custom validation message is coming from the schema, not from my overridden value. When I create a Japanese translation in messageFormat, the is required field still says "Full Name"; not the Japanese text.
Is this perhaps a subtle bug?
As a workaround it seems I can just define the mf function inside the schema:
  fullName: {
    type: String,
    label: mf('shipping_address_full_name', 'Full Name'),
    max: 80,
  },

Cheers!
Max

I can see where this is confusing, but label=mfFullName is an AutoForm thing, allowing you to provide specific label element text, whereas the label in the schema is a SimpleSchema thing, used to provide a readable name for the error messages. (AutoForm also borrows the SS label as a default, adding to the confusion.)
So there is no bug here.


mxisd: 1.4.5 -> 1.4.6 ☺ ma1sd: init at 2.1.1

Motivation for this change
mxisd is now EOL: https://github.com/kamax-matrix/mxisd/blob/master/EOL.md
@ma1uta forked to https://github.com/ma1uta/ma1sd, NixOS supports both :champagne: :tada:
Things done

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

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg test mxisd

@fpletz :point_up:


Add support for Japanese vaccination passport app

Hello🙂
This PR proposes to add a new key for the Japanese vaccination passport app. This app was published officially on December 20 by the Japanese government agency (website: https://www.digital.go.jp/policies/posts/vaccinecert (in Japanese)). I think currently this repository has only the keys from the Canadian municipalities but I think this web app has the best UI among similar programs so I'd be happy to be able to use it to test and learn the Japanese vaccination data too.
I got the keys from this URL: https://vc.vrs.digital.go.jp/issuer/.well-known/jwks.json. Maybe you are not familiar with the Japanese government website but the domain digital.go.jp is under the control of the Digital Agency of the Japanese Government (Digital Agency - Wikipedia) so I believe you can also think of this as reliable keys.
Here is the first part of the decoded code of my card:
{
    "iss": "https://vc.vrs.digital.go.jp/issuer",
    "nbf":<PHONE_NUMBER>.349618,
    "vc": {
        "type": [
            "https://smarthealth.cards#health-card",
            "https://smarthealth.cards#immunization",
            "https://smarthealth.cards#covid19"
        ],
        "credentialSubject": {
            "fhirVersion": "4.0.1",
            "fhirBundle": {
                "resourceType": "Bundle",
                "type": "collection",
                "entry": [
                    {
                        "fullUrl": "resource:0",
                        "resource": {
                            "resourceType": "Patient",
                            "name": [
                                {
                                    "use": "usual",
                                    "family": "\\u9ad8\\u6a4b",
                                    "given": [
                                        "\\u5b97\\u53f2"
                                    ]
                                },
                                {
                                    "use": "official",
                                    "family": "TAKAHASHI",
                                    "given": [
                                        "SHUUJI"
                                    ]
                                }
                            ],

Also, I tested it using my own vaccination certification QR code and it works without issues.
Before

After

Thanks!

Hello @shuuji3 ! Thank you for your contribution, it looks good to me !
I will merge your PR 👍

Thank you! 😀
I confirmed that it works on production environment too.

@obrassard Sorry, I forgot to update README.md. Could you take a look at #29? Thanks.


tcmu_rbd_handle_timedout_cmd:669 rbd/rbd.vmware01: Timing out cmd.

During our nightly Ceph scrubbing window, our ESXi hosts regularily (almost every night) lose the iSCSI connection and basically lock up completely (hard reset needed).
Looking at the logs, I found the following in the tcmu-runner logs appearing before the connection is lost.
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: tcmu_rbd_handle_timedout_cmd:669 rbd/rbd.vmware01: Timing out cmd.
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: tcmu_notify_conn_lost:176 rbd/rbd.vmware01: Handler connection lost (lock state 1)
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: 2017-10-18 02:03:29.987 1650 [ERROR] tcmu_rbd_handle_timedout_cmd:669 rbd/rbd.vmware01: Timing out cmd.
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: 2017-10-18 02:03:29.987 1650 [ERROR] tcmu_notify_conn_lost:176 rbd/rbd.vmware01: Handler connection lost (lock state 1)
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: 2017-10-18 02:03:29.988 1650 [INFO] tgt_port_grp_recovery_thread_fn:253: Disabled iscsi/iqn.2017-01.com.domain.ceph:iscsigw/tpgt_1.
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: tgt_port_grp_recovery_thread_fn:253: Disabled iscsi/iqn.2017-01.com.domain.ceph:iscsigw/tpgt_1.
Oct 18 02:03:30 node1.ceph tcmu-runner[1650]: tgt_port_grp_recovery_thread_fn:278: Enabled iscsi/iqn.2017-01.com.domain.ceph:iscsigw/tpgt_1.
Oct 18 02:03:30 node1.ceph tcmu-runner[1650]: 2017-10-18 02:03:30.154 1650 [INFO] tgt_port_grp_recovery_thread_fn:278: Enabled iscsi/iqn.2017-01.com.domain.ceph:iscsigw/tpgt_1.
Oct 18 02:03:33 node1.ceph tcmu-runner[1650]: tcmu_rbd_lock:446 rbd/rbd.vmware01: Acquired exclusive lock.
Oct 18 02:03:33 node1.ceph tcmu-runner[1650]: 2017-10-18 02:03:33.841 1650 [WARN] tcmu_rbd_lock:446 rbd/rbd.vmware01: Acquired exclusive lock.

System Info:
Running on the first 3 of our Ceph OSD nodes
CentOS 7.4
Kernel 4.13.4 with the Patches from the release note
tcmu-runner 1.3.0-rc4
Ceph 12.2.1

What version of ESX is this with and what version is the wmfs being used for the VMs?
Did you use the ceph-iscsi-* tools to setup the iscsi targets, and did you make the necessary changes to the ESX host described here http://docs.ceph.com/docs/master/rbd/iscsi-initiator-esx/ (there is just the one setting the iscsi RecoveryTimeout to set to 25 secs).
It looks like commands are taking longer than normal due to the scrub activity. On the iscsi target side it looks like we recovered quickly and ESX relogged in right away, so IO should have continued on this target or one of the other ones if it acted similarly.
Maybe we hit a ESX guest or host timer that set the device offline. Could you attach the ESX kernel log (/var/log/vmkernel.log) and the system log (/var/log/messages) for the iscsi gw where you see the above messages?

I'm using 2 ESXi 6.5 Hosts controlled by a vCenter 6.5 Appliance with VMFS 6
I created the iscsi target on 3 of my ceph hosts with the ceph-iscsi-* tools.
Since I created the hosts a while back and the documentation didn't exist back then, I did NOT have the RecoveryTimeout set to 25, I changed that now on both hosts.
The documentation talks about setting the Path to "Most Recently Used (VMware)", however I can't find that anywhere, did they remove that in 6.5?
One thing I've noticed is that the performance of the ESXi Webinterface decreased extremely after adding the Ceph iSCSI Target, especially when clicking on "Storage" on the left side (I',m guessing every time it queries/reloads the Storage)
Since my scratch partition stopped working after enabling iSCSI (a known bug with the Dell customized image) I don't have any log from before the crash. I applied the workaround and will provide a log when it happens again.

I'm using 2 ESXi 6.5 Hosts

Are you doing vsphere clustering? If so there is a bug in the ceph iscsi code where if you have a LUN that has VMs running on different hosts and a path to only one of them goes down then perf will be very bad because the backend iscsi target is going to be failing over in the background.
As a temp workaround you need to put VMs on different LUNs.

The documentation talks about setting the Path to "Most Recently Used (VMware)", however I can't find that anywhere, did they remove that in 6.5?

I also have not seen it in the web interface for 6.5. MRU is the default so you should be ok. You can view/change it with the cmd line. ssh into the host and do:
// get devices.
esxcli storage  nmp device list
then
// get multipath info for a device
esxcli storage nmp path list -d your_device_ide_from_list_command.
and it should show info including the path policy.

I applied the workaround and will provide a log when it happens again.

The recovery timeout is not a workaround. It will just delay failover so the targets have time to recover.
If the host is locking up, I think you might be hitting a APD timeout issue. Commands might be slow through all paths during the scrub and so we get ceph iscsi rbd timeouts on all of them and all paths go down. The default timeout for that scenario is 140 seconds. We should not normally be hitting this plus the normal timeout for a command during scrub though.
Have you by any chance lowered the APD timeout:
https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.storage.doc/GUID-5CC5A990-AC23-4D51-80DD-37F09175E255.html
Send me the logs for when you hit this issue and I will check it out.
Also, if you can send me the target side and esx logs during the web interface slow down, I will look into that too.

Are you doing vsphere clustering?

Yes, I am. So for now I can not use clustering/HA and have to use different LUNs for different hosts instead of sharing one between all of them? Is there any estimate on when this will be fixed?
But - this does not explain the general slowness and the problems/lockup happening when the ceph cluster is just under scrubbing load, since no path is actually going down, right?

esxcli storage nmp path list -d your_device_ide_from_list_command

This is the output from the path command:
iqn.1998-01.com.vmware:esx01-78928ec7-00023d000004,iqn.2017-01.com.domain.ceph:iscsigw,t,1-naa.60014059731a7108ea74de29e8c1c55f
   Runtime Name: vmhba64:C0:T0:L0
   Device: naa.60014059731a7108ea74de29e8c1c55f
   Device Display Name: LIO-ORG iSCSI Disk (naa.60014059731a7108ea74de29e8c1c55f)
   Group State: active
   Array Priority: 0
   Storage Array Type Path Config: {TPG_id=1,TPG_state=AO,RTP_id=1,RTP_health=UP}
   Path Selection Policy Path Config: {current path; rank: 0}

iqn.1998-01.com.vmware:esx01-78928ec7-00023d000006,iqn.2017-01.com.domain.ceph:iscsigw,t,3-naa.60014059731a7108ea74de29e8c1c55f
   Runtime Name: vmhba64:C2:T0:L0
   Device: naa.60014059731a7108ea74de29e8c1c55f
   Device Display Name: LIO-ORG iSCSI Disk (naa.60014059731a7108ea74de29e8c1c55f)
   Group State: active unoptimized
   Array Priority: 0
   Storage Array Type Path Config: {TPG_id=3,TPG_state=ANO,RTP_id=3,RTP_health=UP}
   Path Selection Policy Path Config: {non-current path; rank: 0}

iqn.1998-01.com.vmware:esx01-78928ec7-00023d000005,iqn.2017-01.com.domain.ceph:iscsigw,t,2-naa.60014059731a7108ea74de29e8c1c55f
   Runtime Name: vmhba64:C1:T0:L0
   Device: naa.60014059731a7108ea74de29e8c1c55f
   Device Display Name: LIO-ORG iSCSI Disk (naa.60014059731a7108ea74de29e8c1c55f)
   Group State: active unoptimized
   Array Priority: 0
   Storage Array Type Path Config: {TPG_id=2,TPG_state=ANO,RTP_id=2,RTP_health=UP}
   Path Selection Policy Path Config: {non-current path; rank: 0}

The recovery timeout is not a workaround. It will just delay failover so the targets have time to recover.

with "workaround" i meant Dell's fix of the scratch partition, so the logs are persisted again, but I also applied the recovery timeout of 25.

Have you by any chance lowered the APD timeout

No, it's set to 140 on both hosts.

Also, if you can send me the target side and esx logs during the web interface slow down, I will look into that too.

I attached the logs, captured after clicking around, stopping and starting VMs, rescanning the storage devices, ... to cause some load. Hope it helps. I'll post a more detailed log tomorrow, after our nightly scrubbing time!
vmkernel.log
The only thing I'm currently seeing on the target side is in dmesg:
[1382567.124995] ABORT_TASK: Found referenced iSCSI task_tag: 123417
[1382575.529050] ABORT_TASK: Sending TMR_FUNCTION_COMPLETE for ref_tag: 123417
[1382575.529056] ABORT_TASK: Found referenced iSCSI task_tag: 243245
[1382575.529057] ABORT_TASK: Sending TMR_TASK_DOES_NOT_EXIST for ref_tag: 243245
[1382575.530324] ABORT_TASK: Found referenced iSCSI task_tag: 243255
[1382575.532547] ABORT_TASK: Sending TMR_FUNCTION_COMPLETE for ref_tag: 243255

Thank you so much for your time and help!

Is there any estimate on when this will be fixed?

Yes, correct sharing the lun between multiple hosts is not supported right now.
It is the next item on the TODO after this release. Maybe a month.

But - this does not explain the general slowness and the problems/lockup happening when the ceph cluster is just under scrubbing load, since no path is actually going down, right?

It might explain it. It does not explain why commands are taking so long initially, but once commands start taking a long time (longer than the rados osd op timeout of 30 seconds) paths will go down temporarily. So if commands started getting slow on all paths at the same time then all paths could go down temporarily. However, from the log snippet it looked like we were recovering really quickly so we should not have got into the situation where you had to hard reset.
Here is what we are seeing from the target logs in the original message:
// This log message it means a command took longer than 30 seconds to complete. We did not think it would take more than 30 secs to complete a command even with scrub in progress, so the code assumes it might be a connection to the ceph cluster issue. We are going to fail the command and ask for a retry while we try to reconnect the rbd image to the ceph cluster. (Note that in your case this assumption might be wrong and for some reason it really is taking the OSD longer than 30 secs to complete the command).
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: tcmu_rbd_handle_timedout_cmd:669 rbd/rbd.vmware01: Timing out cmd.
// Here we disabled the iscsi target port while we try to reopen the image
Oct 18 02:03:29 node1.ceph tcmu-runner[1650]: tgt_port_grp_recovery_thread_fn:253: Disabled iscsi/iqn.2017-01.com.domain.ceph:iscsigw/tpgt_1.
// We reopened the image and are now renabling the iscsi target port. It looks like it was not a issue with the connection to the ceph cluster because we were able to reopen the image in 1 second.
Oct 18 02:03:30 node1.ceph tcmu-runner[1650]: tgt_port_grp_recovery_thread_fn:278: Enabled iscsi/iqn.2017-01.com.domain.ceph:iscsigw/tpgt_1.
// ESX relogged into the iscsi target port pretty quickly (3 seconds) and started to send IO to this path. This path grab the rbd lock so it can execute IO.
Oct 18 02:03:33 node1.ceph tcmu-runner[1650]: tcmu_rbd_lock:446 rbd/rbd.vmware01: Acquired exclusive lock.

maybe the additional load by the flapping OSDs makes it even worse?

If OSDs are going down while a scrub is in progress then it could explain why commands are taking a long time. We might not be detecting this and failing over to other OSDs in time. On your OSDs in your /etc/ceph/ceph.conf  did you set these settings (it is mentioned in the doc I referenced so if you did not have the doc initially you missed it):
[osd]
osd heartbeat grace = 20
osd heartbeat interval = 5
?

[1382567.124995] ABORT_TASK: Found referenced iSCSI task_tag: 123417
[1382575.529050] ABORT_TASK: Sending TMR_FUNCTION_COMPLETE for ref_tag: 123417

These messages mean ESX's command timer has fired. It sent an abort, but the command completed shortly after that (so this just means nothing was permanently hung). Depending on the command type that could be 8 - 15 seconds. So during a scrub if IO is going to take a long time then these are expected. If OSDs are crashing we would also expect them. If you you just doing normal IO and/or just opening the storage part of the gui we should not see them. When we see these on the target side, we want to check if the ESX vmkernel log is mentioning something about APD and/or failovers. See below for info on how to increase the ESX logging for this and the scrub issue.
Oh yeah, for the path selection policy info it would just be in the
esxcli storage  nmp device list
command output. For your device naa.60014059731a7108ea74de29e8c1c55f you should see this for the type and policy:
Storage Array Type: VMW_SATP_ALUA
Path Selection Policy: VMW_PSP_MRU

vmkernel.log

There was nothing interesting in here. There is one failed command during probing but that it is expected because we do not support it. ESX will ignore it.
Can you enable some extra logging. It will give more info about what is happening when we see those ABORT messages on the target.
In the Software Advanced Settings screen in the GUI under Scsi, set:
Scsi.LogCmdErrors 1
Scsi.LogScsiAborts 1
Scsi.LogMPCmdErrors 1
Could you also tell me the value for
Scsi.FailVMOnAPD
that you have.

Thank you so much for your time and help!

No problem.

Thanks for explaining everything, it really helps to understand the issue! 😄

did you set these settings

yes, I have:
osd client watch timeout = 15
osd heartbeat grace = 20
osd heartbeat interval = 5
the first line is from an older version of the docs, is this still needed?

For your device naa.60014059731a7108ea74de29e8c1c55f you should see this for the type and policy

got that :)

Can you enable some extra logging

just enabled it, I attached the logs from tonight, lockup happened again (seems to have stabilized now), many errors. There's also an NFS Storage attached, but it's only used for ISO images.
logs.zip
FailVMIOonAPD is set to 0

the first line is from an older version of the docs, is this still needed?

You do not need to change the watch timeout anymore. We have not udpated the docs. Do not worry about it. The other 2 settings are needed.
For the target side logs, could you attach the same file you saw the tcmu_rbd_handle_timedout_cmd log messages in? Was that /var/log/messages?

Yes, I have the messages from around oct 20th attached:
messages-20171022.zip

Just a FYI,
I am doing some experimenting here with different timers/settings which might work around the issue.
Will try to get back to you by Thurs/Fri.

Hey @mikechristie, any news on the issue? Everything went relatively smooth the last couple of days (only problems during the nightly scrubbing time) but today one of the ESXi server "locked up" (webinterface shows root password wrong, so no login possible, restart via F12 on console hangs forever) during the scrubbing time again.

Hey,
Sorry. I am still testing.
Right now to work around the timeout issue I think we just need to increase these timers:

increase the rados osd op timeout (this is set for the iscsi gw in

/etc/ceph/iscsi-gateway.cfg
by adding
[target]
osd_op_timeout = N-in-seconds
and then restarting the gw.

decrease the osd heartbeat and interval settings like above.
increase the guest OS disk/command timeout per the guest OS docs.

It looks like a lot of times the first timer is just a little too short, so maybe setting it to around 60 - 90 seconds would be long enough so that we do not fire off the error handler when we do not need tol. #2 is probably ok for now, but dropping it down a little might help when we see the osd crashes. However, dropping too low is going to cause a lot of warnings in the logs, so I would leave it for now. And I am not yet sure about #3 when 1 - 2 are adjusted. #3 should be at least as long as #1 plus some settle/adjustment time. Because the entire host hung we never saw if the guest OS started to see errors too, so I would leave this for now.
I think we are also hitting something like this:
https://kb.vmware.com/s/article/2113956?language=en_US
There are so many ATS miscompare errors in the logs. We do not see the vmkernel errors mentioned  in the KB though, but I think it is worth trying. Note that for HA we do not support completely disabling ATS heartbeats because we do not support distributed reservations yet, so you should only disable ATS for heartbeats by doing (ignore the wmfs versions in the command):
esxcli system settings advanced set -i 0 -o /VMFS3/UseATSForHBOnVMFS5
Note that I am still testing this stuff though. You can try this out if this is not a production system.

I'll hold on for now and leave everything as is (since I don't want to break anything), please let me know if you find someting out.
Thanks again for your help, I really appreciate it!

Any news on this? My boss is breathing down my neck, since the 2 servers are sitting here, doing nothing 😆

We are working on it.
Jason is implementing offloaded ATS to avoid so many ATS errors:
https://github.com/open-iscsi/tcmu-runner/pull/330
and upstream we have changed our queueing:
https://www.spinics.net/lists/target-devel/msg16162.html
I think those combined with the updated settings will fix the issues. Those patches are being reviewed.

Thanks again :) sorry for being such a nag, you guys are doing awesome work 👍

@mikechristie ,sorry for bother you.

Are you doing vsphere clustering? If so there is a bug in the ceph iscsi code where if you have a LUN that has VMs running on different hosts and a path to only one of them goes down then perf will be very bad because the backend iscsi target is going to be failing over in the background.

Is this bug fixed?

No. For now, you would have to limit your setup to a VM per lun to work around the problem.
Just FYI, I do not think this is the issue you are hitting with gwcli. The problem here only affects the IO path and should not cause gwcli to be slow.

@mikechristie  I have a environment which has this scenario, VMs in different hosts use the same LUN, and the performance is very poor :(
gwcli is another performance issue.

@mikechristie I have a environment which has this scenario, VMs in different hosts use the same LUN, and the performance is very poor :(

You would only hit the performance issue I mentioned above if one host has failed the active-optimized path, but the other host can still access its active-optimized path. The problem is the rbd exclusive lock for that lun will bounce between the 2 gws.

If you are not hitting #1, you might be hitting a issue with ESX queue throttling and adaptive queueing. We are only starting to do performance work now. 2 things we know with ESX is that its the ESX SIOC adaptive queueing is causing the ESX device queue depth to be lowered too low. If you watch ESXTOP, you will see the DQLEN fluctuate. As a temp workaround you would have to disable this.

There is another issue where with the RHEL/Centos kernel the memory a tcmu devices uses is limited to 8 MB per device by default. Because the buffer used is small it can easily cause excessive QUEUE FULLs and the ESX queue full throttling might kick in.  For this you want to disable ESX queue full throttling and/or increase a setting on the ceph iscsi gw.
We are documenting this now and will update the ceph.com ESX info with the details.
In general performance is low right now. With nvme/ssds and 10 gig ethernet, throughput might be as low as 200-400 MB/s and latencies can be in the 50-70 ms range depending on IO sizes, workloads, etc.

Sorry forgot to update this issue. The last comments in it made me forget the root issue.
The needed pieces for CAW/ATS offloading are in ceph v13 and up and tcmu-runner 1.3.0. Note that tcmu-runner must be rebuilt against the updated librbd and updated librbd headers (so if you are using  prebuilt rpms make sure you also get the devel rpms) to take advantage of the feature.
Internally engineering has tested, but our QE team has not fully tested it yet.


Formatting and phrases

Pretty similar to #4935.
A little bit related to https://github.com/microsoft/PowerToys/pull/32351/files, which is still in draft at this moment. Release 0.81 is expected around MS Build (late May) but as there are only a few changes which are in both the UI and in the Docs, I don't see a problem changing this earlier.

FYI @ethanfangg

done :)


remove cffi from python installation

the cffi package isn't used in a normal workshop (only in the MMA lesson?)

That's correct. Let's remove it.

done in ba05b797


TypeScript support

index.d.ts file for TypeScript support.  Thank you for this great plugin

Thank you


CSS min() function breaks syntax highlighting

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.60.2 (with --disable-extensions)
OS Version: Ubuntu 20.04

Using CSS min() or clamp() functions seems to break syntax highlighting.
Steps to Reproduce:

Copy-paste the following css rule, and observe the different highlighting for the first 1fr and the second 1fr value:

.test {
  grid-template-columns: 1fr min(1024px, 100%) 1fr;
}

@stefanprobst you are correct that atom/language-css is the upstream repo for this issue! I have copied the issue there. https://github.com/atom/language-css/issues/186


How to close the debug info?

Debug sql info like this, how to close it?
10:54:10.023 [system-akka.persistence.dispatchers.default-plugin-dispatcher-5] DEBUG s.async.AsyncConnectionPool$ - Borrowed a new connection from scalikejdbc.async.internal.mysql.MySQLConnectionPoolImpl@1ed13381
[WARN] [01/08/2016 10:54:10.024] [system-akka.persistence.dispatchers.default-plugin-dispatcher-6] [akka.serialization.Serialization(akka://system)] Using the default Java serializer for class [actor.PersistenceBasicObj$ExampleState] which is not recommended because of performance implications. Use another serializer or disable this warning using the setting 'akka.actor.warn-about-java-serializer-usage'
10:54:10.031 [system-akka.persistence.dispatchers.default-plugin-dispatcher-6] DEBUG s.async.AsyncConnectionPool$ - Borrowed a new connection from scalikejdbc.async.internal.mysql.MySQLConnectionPoolImpl@1ed13381
10:54:10.038 [system-akka.persistence.dispatchers.default-plugin-dispatcher-5] DEBUG scalikejdbc.async.TxAsyncDBSession - [SQL Execution] 'INSERT INTO test_journal (persistence_key, sequence_nr, message) VALUES (?, ?, ?)' with (2,11,[B@6d8b440c)
10:54:10.043 [system-akka.persistence.dispatchers.default-plugin-dispatcher-6] DEBUG scalikejdbc.async.TxAsyncDBSession - [SQL Execution] 'INSERT INTO test_snapshot (persistence_key, sequence_nr, created_at, snapshot) VALUES (?, ?, ?, ?) ON DUPLICATE KEY UPDATE created_at = ?, snapshot = ?' with (2,10,1452221650023,[B@beaa9fc,1452221650023,[B@beaa9fc)
10:54:10.046 [system-akka.persistence.dispatchers.default-plugin-dispatcher-5] DEBUG s.async.AsyncConnectionPool$ - Borrowed a new connection from scalikejdbc.async.internal.mysql.MySQLConnectionPoolImpl@1ed13381
10:54:10.055 [system-akka.persistence.dispatchers.default-plugin-dispatcher-5] DEBUG scalikejdbc.async.TxAsyncDBSession - [SQL Execution] 'INSERT INTO test_journal (persistence_key, sequence_nr, message) VALUES (?, ?, ?)' with (2,12,[B@7fb8247f)

@cookeem akka-persistence-sql-async logs information by using ActorLogging.
So you can configure the loglevel in application.conf.
Please refer to this sample.

Hi okumin, thanks for your reply, but I have already set akka.loglevel = "WARNING" or akka.loglevel = "INFO",but the log still show there. My akka version: 2.4.1, scala version: 2.11.7.
Here is my application.conf:
akka.log-dead-letters = off
akka.loglevel = "WARNING"
akka.actor {
provider = "akka.cluster.ClusterActorRefProvider"
}
akka {
remote {
log-remote-lifecycle-events = off
netty.tcp {
hostname = "localhost"
port = 0
}
}
cluster {
seed-nodes = [
"akka.tcp://cluster@localhost:2551"]
auto-down-unreachable-after = 10s
}
}
akka.persistence {
journal.plugin = "akka-persistence-sql-async.journal"
snapshot-store.plugin = "akka-persistence-sql-async.snapshot-store"
}
akka-persistence-sql-async {
journal.class = "akka.persistence.journal.sqlasync.MySQLAsyncWriteJournal"
snapshot-store.class = "akka.persistence.snapshot.sqlasync.MySQLSnapshotStore"
user = "root"
password = "man8080"
url = "jdbc:mysql://localhost/akka_persistence"
max-pool-size = 4
wait-queue-capacity = 10000
metadata-table-name = "test_metadata"
journal-table-name = "test_journal"
snapshot-table-name = "test_snapshot"
}

@cookeem I have tried that configuration, but it seems to work correctly.
akka-persistence-sql-async-sample
Debug logs appear on logging-debug project, but not on logging-warning project.
I tried on sbt console.
Could you try to reproduce the problem on akka-persistence-sql-async-sample and show me that code?


WITH FORMAT: "The existing contents of the volume become invalid, because any existing media header and backup sets are overwritten", the existing contents are not just invalid, its actually deleted

When you say that using "WITH FORMAT" causes "The existing contents of the volume become invalid, because any existing media header and backup sets are overwritten", it seams that the initial data is not being explicitly formatted and deleted but only overridden, thus say the original backup is larger then the current backup the file will not get shrunken.
However I tested it and found that doing a backup using "WITH FORMAT" option, will indeed shrink the file if the space needed is less then what was used for the original backup, thus indicating that "WITH FORMAT" does not just override the old backup-sets (content) with the current one, but will also perform a cleanup and wipe out any existing content causing the file to shrink.
So to say, that if you perform backup using option "WITH FORMAT" then: "The existing contents of the volume become invalid" that's not right, because the existing content is not there at all anymore, it is being deleted.

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

ID: fdc1049f-2eaa-cf47-38c8-ae83dd0955aa
Version Independent ID: 544fb558-5df0-ff90-70dc-2d6776964ffa
Content: BACKUP (Transact-SQL) - SQL Server
Content Source: docs/t-sql/statements/backup-transact-sql.md
Product: sql
Technology: t-sql
GitHub Login: @MikeRayMSFT
Microsoft Alias: mikeray

However, to comment on my own words, could passably be that this behavior that the file is shrunken is just an implementation detail when "WITH FORMAT" is used to backup on a disk file, since the content become invalid, as an effect those content are released, but for example when the operation is on a tape, that will not happen.

@SDP190 we're still verifying before we answer. Thanks for your patience.

Any update?

@SDP190 - thanks for your patience. To clarify, you want to know if WITH FORMAT just removes the header and resets the file pages so that they can be over written (that's what the doc currently infers) or if it overwrites all of the information on the backup file disk pages (zeroes the file out).
Is that right?

Actually I can divide the question in 2:

If WITH FORMAT just removes the header and resets the file pages so that they can be overwritten or if it actually overwrites all of the information on the backup file disk pages (zeroes the file out)
In any case however, how does it explain the effect of the backup file being shrunken? (zeroing the file out would decrease the file size? )

WITH FORMAT causes the backup to overwrite the header and then truncate it without zeroing out rest of the file. The truncated space is released as free space to the volume.
Thanks for your patience.

@MikeRayMSFT thanks, so I guess that  when its states in the docs

The existing contents of the volume become invalid
It refers to that  truncated part of the file which is not physically deleted but is not valid any more, and is released to the Volume, correct?


[BUG] keeps open new empty pull requests

Affected Packages
https://github.com/samdenty/gqless/pull/37
Problem
I merged the initial PR to 'Version packages' in this commit: https://github.com/samdenty/gqless/commit/e28c6aa9594ef14b09099760d247489037c3c841
Instead of publishing, it created a new empty PR:
https://github.com/samdenty/gqless/pull/34
I tried merging that again twice, then I tried creating a new changeset:
https://github.com/samdenty/gqless/pull/36
And the same happened again.
I presume this is a bug, how can I fix it?

That seems like a super unfun bug.
If you want to look into why it's happening, you can find the code for the GH action in its own repository. I'm not 100% on why you've encountered this, but you can run the action off a fork if you are looking to dig in to this.
If you are planning to investigate this, do you mind if I assign this to you for now?

This is because the action doesn't support pre-releases yet, I have a branch that does but was sometimes wrong so that's why it's not on master but an update to @changesets/read(which was just published) should make it correct.

I just merged the pre-release support, keen to hear if it fixes your problem.

Closing this assuming it is fixed with Mitchell's change. Please reopen if it's not fixed.


improving the README file

Hi!
I'd like to contribute by improving the README file. Could you please assign this issue to me? also add labels of gssoc-ext and hacktoberfest Thanks!

@adityakalburgi
You can do it !
But before updating make sure that you understand the working of CLI tool
So that every detail can be precise!

I would like to work on issue #40 in the Improving the README file repository. Could you please assign it to me? Thankyou

@Shalinis19137
This issue is assigned to someone else already
So, it would be great if you can check our other open issues and can work on them!


Add Windows Support

Coming from https://github.com/opensearch-project/opensearch-plugins/issues/95, add Windows support.

[x] Passing CI on Windows
[x] Documentation

I don't see the need of documentation for window support as of now.
Please reopen if there is specific area where we need a documentation for window support.

The macos and window support is not backported in 2.x branch.

Another issue is that cypress test is running only for ubuntu now.

Waiting on https://github.com/opensearch-project/opensearch-dashboards-functional-test/issues/359 to get a reference code to support cypress test in window platform.

All other plugins closed the issue without cypress test support in windows platform. Closing it for now as well.

Integration/cypress tests need to be running on Windows as part of this, reopening. Please close when there's no gap in testing across platforms, or if something cannot be done, please open a separate issue for it for tracking.

Hi, just want to make sure this issue is closed, if all the tasks are completed.
Thanks.

OpenSearch is very slow in windows platform during cypress test. It is failing randomly in different steps. After increasing timeout values, the request is failing from backend now.


afterShow and afterHide should not swallow the trigger event

for the event callbacks: afterShow and afterHide
should pass the original event in the callback
https://github.com/wwayne/react-tooltip/blob/master/src/index.js#L344
https://github.com/wwayne/react-tooltip/blob/master/src/index.js#L378
Into
afterShow(e) and afterHide(e)
I can create PR if people think this is valid

Would be nice if this didn't happen as its currently difficult to know which exact tooltip triggered the event.

https://github.com/wwayne/react-tooltip/blob/master/src/index.js#L388
what is the event here in the context, do it indicate any thing on the current trigger
event.target should gives the trigger element?

I'm going to go ahead and submit a pull request unless you feel like I'm stepping on your toes here. I need this asap.

https://github.com/wwayne/react-tooltip/pull/444
@bluestreek18


applyPropositiions

Issue in ./help/web-sdk/commands/applypropositions.md
In the payload example, applyPropositiions is wrongly spelled.  2 "i".

Thank you for submitting this issue. We will review the documentation and make the necessary updates as quickly as possible. Tracking internally in PLAT-212864.

This issue is now fixed. Closing.


Add whisper endpoints

Implementation of the 2 endpoints for OpenAi Whisper

Thanks a lot @Clemalfroy! Nice work

Cool! This sends the local audio file to OpenAI? If you already have a file on S3 do you need to download it first?


[proof] reverse the order of siblings in merkle proof

Motivation
Previously we order the sibling from root to leaf for fitting the bitmap layout. Now that the bitmap is gone, we can use the reversed order which fits the verify algorithm easily.
Have you read the Contributing Guidelines on pull requests?
Y
Test Plan
CI

beautiful. @bors-libra r+

:pushpin: Commit 98a141d has been approved by msmouse

:hourglass: Testing commit 98a141d6e1dbc84e59079f33e8a07fcc00ae7037 with merge 14cf48f2facc97a07310b35649c3b7846ba3f5a1...

@bors-libra  r-

@bors-libra r-

can you use git commit --fixup instead of force push
@bors-libra delegate+

:v: @lightmark can now approve this pull request

@bors-libra r+

:pushpin: Commit fbd8949 has been approved by lightmark

:hourglass: Testing commit fbd89493f6288c213c48c1ca31b398560482b90b with merge<PHONE_NUMBER>b8435d540741dd05e707b514046304...

:broken_heart: Test failed - checks-circle_commit_workflow

:umbrella: The latest upstream changes (presumably 0f58284f85f66ba2eb3e39d65198e2d0bd1f5449) made this pull request unmergeable. Please resolve the merge conflicts.

@bors-libra r+

:pushpin: Commit 9169477 has been approved by lightmark

:hourglass: Testing commit<PHONE_NUMBER>edb48e012cd9bc853861c8fb714834 with merge 1061ed0e56d4344d72cd568c35df73ce33c6a717...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: lightmark
Pushing 1061ed0e56d4344d72cd568c35df73ce33c6a717 to master...


SagaException silently ignored by NHibernateSagaRepository

I have following problem: when my saga throws NotAcceptedStateMachineException then problematic event is not moved to error queue.
Exception is throwed here.
Then it is consumed by DefaultUnhandledEventCallback, which converts it to UnhandledEventException.
Then it is catched in SendToInstance method, which converts it to SagaException, which exception is silently ignored here.
Here's whole stack trace:

at Automatonymous.AutomatonymousStateMachine1.DefaultUnhandledEventCallback(UnhandledEventContext1 context)
at Automatonymous.AutomatonymousStateMachine1.UnhandledEvent(EventContext1 context, State state)
at Automatonymous.States.StateMachineState1.<Automatonymous-State<TInstance>-Raise>d__271.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Automatonymous.AutomatonymousStateMachine1.<Automatonymous-StateMachine<TInstance>-RaiseEvent>d__211.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at Automatonymous.Pipeline.StateMachineSagaMessageFilter2.<Send>d__5.MoveNext()    --- End of inner exception stack trace ---    at Automatonymous.Pipeline.StateMachineSagaMessageFilter2.d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at MassTransit.NHibernateIntegration.Saga.NHibernateSagaRepository1.<SendToInstance>d__101.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at MassTransit.NHibernateIntegration.Saga.NHibernateSagaRepository1.<SendQuery>d__81.MoveNext()

Is it intended behavior or rethrow is missing here?

This seems like a mistake, and should be corrected.

Hi. Same problem occurs here. Exception is silently ignored.
@phatboyg: Should I create new issue or you can reopen this?

I fixed the Marten issue, seems it was dragged over from whichever repository was used as an example.

Do you plan any release soon ?

I'm sure there will be another one.

So that one for EF and Marten

Is EF still wrong?

No I meant you changed both in that commit


Template publish/unpublish/remove don't work as expected

I need to do some more testing to define the correct behavior. But I noticed that when I select "Remove" from the Actions menu, it just removes the most recent version of the template and displays a message that my template has been removed. I would expect to be able to remove all versions if no plans are attached to it and no longer see the template in the list. When I select Remove again for the same template, it unpublishes the template. Also, there is no action to "Unpublish" but this should be included in the actions menu and allow admins to unpublish the most recent version with the effect that no version of the template is available to users.
This is related to the larger issue of fixing template versioning #1128 and should possibly be addressed at the same time.

all working as expected after template refactor. closing.


[4.x] Code coverage is not running

In the 4 branch we're removing xdebug as one of the Travis build steps, which means that when the coverage run runs it can't run coverage since it has no coverage driver. It also needs a coverage whitelist.
I did a quick test (#7150) and these are the following problems:

With xdebug enabled and a whitelist, the build times out before finishing the test suite
With phpdbg enabled and a whitelist, generating the coverage report segfaults on PHP 7.1.2

Anyway, at the moment the coverage reports aren't being generated.

7.1.7 seems good. Without having looked into the changelogs in too much detail there are a few core fixes relating to segfaults between 7.1.2 and 7.1.7. Fix at #7176.


Add datepickers

Yeah, that's weird. The branch originated from the latest master branch, and I just reconfirmed it.


feat/#76 implement roll back to

allow user to config rollbackFunction in AloxideActionHandler
reset index state to block number when rollback

Require https://github.com/lecle/demux-js/pull/2 to be merged first

Codecov Report

Merging #130 (664ca29) into master (9d271e1) will increase coverage by 0.35%.
The diff coverage is 77.77%.

@@            Coverage Diff             @@
##           master     #130      +/-   ##
==========================================
+ Coverage   95.15%   95.51%   +0.35%
==========================================
  Files          69       72       +3
  Lines        1093     1225     +132
  Branches      126      156      +30
==========================================
+ Hits         1040     1170     +130
- Misses         53       55       +2

Impacted Files
Coverage Δ

packages/demux/src/createWatcher.ts
100.00% <ø> (ø)

packages/demux/src/AloxideActionHandler.ts
96.61% <77.77%> (-3.39%)
:arrow_down:

packages/demux/src/index.ts
100.00% <0.00%> (ø)

packages/demux/src/utils.ts
100.00% <0.00%> (ø)

packages/demux/src/HyperionBlock.ts
100.00% <0.00%> (ø)

packages/demux/src/HyperionActionReader.ts
100.00% <0.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 9d271e1...664ca29. Read the comment docs.

Let's implement this feature without introduce breaking change in the demux-js.
  protected async rollbackTo(blockNumber: number): Promise<void> {
    this.log.debug('-- roll back to block number:', blockNumber);
    // - [ ] TODO alter current index state
    // - [ ] TODO revert all change from blockNumber to current blockNumber
    // Aloxide Updater will create a snapshot of data when applying a last irreversible block
    // doing so we can quickly roll back to the last irreversible block state
    // This is only applied to Aloxide data
  }

  public async handleBlock(nextBlock: NextBlock, isReplay: boolean): Promise<number | null> {
    try {
      return super.handleBlock(nextBlock, isReplay);
    } catch (e) {
      if (e instanceof MismatchedBlockHashError) {
        // roll back to the last irreversible blocks
        // - [ ] TODO explain why it must be the last irreversible block
        // - [ ]  what hapen if the rollbackTo took too long to execute
        await this.rollbackTo(this.lastIrreversibleBlockNumber);
        return this.lastIrreversibleBlockNumber + 1;
      }

      throw e;
    }
  }

cc @danielAlvess

@manh-vv please help me review again!.


Regarding the wordmark

How to change the wordmark "doki theme" present in the home page permanently?

Are you talking about turning it off? This video starting at 0:28 shows you how to do that. When toggled it will remain off.
https://user-images.githubusercontent.com/15972415/157995434-30b5bdfc-b005-416f-a3fa-4bfdf72bc1be.mp4
Changing the words used a different story, and currently isn't implemented.

I want to change the title
"doki theme" to something of my choice.
How can I do it?

It's hardcoded in the source here https://github.com/doki-theme/doki-theme-web/blob/bf008fc553015015a91efa249c01fe4bc706396e/pluginSource/src/tab/components/SearchWidget.tsx#L70
If you want it now, you can always go to your newTab extension, locate & open the tab.js, search for createElement("div",{className:"wordmark"},"Doki Theme")) and change Doki Theme to whatever you want. Then save & reload the newTab plugin.
If you don't want to do that, you'll have to wait until I get time to add that feature.

Done, Thanks


Tenant declaration delete /Common/Shared from AS3 Declaration

Environment

Application Services Version: 3.24
BIG-IP Version: 15.1

Summary
Application /Common/Shared disappear in AS3 Declaration after declaring a tenant that use object within /Common/Shared
Steps To Reproduce
Steps to reproduce the behavior:

Declare pool in /Common/Shared

POST /mgmt/shared/appsvcs/declare

{
		"class": "ADC",
		"schemaVersion": "3.24.0",
		"updateMode": "selective",
		"Common": {
			"class": "Tenant",
			"Shared": {
				"class": "Application",
				"template": "shared",
				"my_pool": {
					"class": "Pool",
					"members": [
						{
							"servicePort": 80,
							"serverAddresses": [
								"<IP_ADDRESS>"
							]
						}
					]
				}
			}
		}
}

Check the presence of the /Common/Shared application and the pool

GET /mgmt/shared/appsvcs/declare

Declare application using pool in /Common/Shared

{
	"class": "ADC",
	"schemaVersion": "3.24.0",
	"updateMode": "selective",
	"my_tenant": {
		"class": "Tenant",
		"my_app": {
			"class": "Application",
			"template": "generic",
			"my_vs": {
				"virtualAddresses": [
					"<IP_ADDRESS>"
				],
				"virtualPort": 80,
				"class": "Service_HTTP",
				"pool": {
					"use": "/Common/Shared/my_pool"
				}
			}
		}
	}
}

Check that the /Common/Shared is now absent

GET /mgmt/shared/appsvcs/declare

Check the F5 GUI, the pool is still available ( but not in the AS3 declaration)

Retry to declare application using pool in /Common/Shared

{
	"class": "ADC",
	"schemaVersion": "3.24.0",
	"updateMode": "selective",
	"my_tenant": {
		"class": "Tenant",
		"my_app": {
			"class": "Application",
			"template": "generic",
			"my_vs": {
				"virtualAddresses": [
					"<IP_ADDRESS>"
				],
				"virtualPort": 80,
				"class": "Service_HTTP",
				"pool": {
					"use": "/Common/Shared/my_pool"
				}
			}
		}
	}
}

Observe the error

{
  "code": 422,
  "errors": [
    "/my_tenant/my_app/my_vs/pool/use: contains path to non-existent object Common"
  ],
  "declarationFullId": "",
  "message": "declaration is invalid"
}

Expected Behavior
When declaring Tenant, /Common/Shared shouldn't be deleted nor modifier

Confirmed, something is wrong here. I have added AUTOTOOL-2420 to our internal product backlog to resolve this.
Are you seeing an error on step 3? I am seeing an error message with configuring /Common on step 3 that could explain why /Common disappeared.

I don't see error message on step 3.
Here is the output after executing AS3 request :
{
  "results": [
    {
      "code": 200,
      "message": "no change",
      "host": "localhost",
      "tenant": "Common",
      "runTime": 1099
    },
    {
      "code": 200,
      "message": "success",
      "lineCount": 22,
      "host": "localhost",
      "tenant": "my_tenant",
      "runTime": 1138
    },
    {
      "code": 200,
      "message": "no change",
      "host": "localhost",
      "tenant": "Common",
      "runTime": 1066
    }
  ],
  "declaration": {
    "class": "ADC",
    "schemaVersion": "3.24.0",
    "updateMode": "selective",
    "my_tenant": {
      "class": "Tenant",
      "my_app": {
        "class": "Application",
        "template": "generic",
        "my_vs": {
          "virtualAddresses": [
            "<IP_ADDRESS>"
          ],
          "virtualPort": 80,
          "class": "Service_HTTP",
          "pool": {
            "use": "/Common/Shared/my_pool"
          }
        }
      }
    },
    "id": "autogen_b3d19fd0-0b9c-4958-84f3-a54724f1469e",
    "controls": {
      "archiveTimestamp": "2021-04-15T11:22:38.029Z"
    }
  }
}

Thank you for the update. I am going to try this with version 3.24.0 to see if I get the same results.

Confirmed that the behavior is exactly as you described on 3.24.0. It seems like this use case actually got worse in recent versions. We will make sure to add some additional test cases to cover this better as we work on AUTOTOOL-2420.

I'm looking to have this issue addressed as well.  Thank-You.

A developer is currently looking into this. We hope to have it resolved in the 3.29.0 release.

I'm running into this now.  subscribing for updates.

Also having this problem.  Please fix.

This issue has been resolved by the 3.29.0 release.


Docs: translate development-workflow into Chinese

Pre-Checklist
Note: please complete ALL items in the following checklist.

[x] I have read through the CONTRIBUTING.md documentation.
[ ] My code has the necessary comments and documentation (if needed).
[ ] I have added relevant tests

Description

Related Issues

#706
New Behavior (screenshots if needed)

@DunyuSong A kind reminder that you haven't signed off on your commit(s) yet.
Check out our official doc here to learn how to do this.
Licensing is important to open source projects. It provides some assurances that the software will continue to be available based on the terms that the author(s) desired.
Now that we are part of CNCF, per CNCF's requirement, we kindly require that contributors sign off on commits submitted to our project's repositories. Thanks!

I have executed "git commit --amend -s", how do I know if I have signed successfully?

I have executed "git commit --amend -s", how do I know if I have signed successfully?

git log -n1

I have signed.

I have executed "git commit --amend -s", how do I know if I have signed successfully?

after that, you need to execute  git push -f origin translation_development_workflow_chinese

@imxw please help the original contributor regarding signing the commit. Thanks! @daniel-hutao maybe we can demo this in the next community meeting.


[stable/redis-ha] NOREPLICAS error when AUTH is set

Is this a request for help?:
no
Is this a BUG REPORT or FEATURE REQUEST? (choose one):
BUG REPORT

Version of Helm and Kubernetes:
% helm version
Client: &version.Version{SemVer:"v2.12.0", GitCommit:"d325d2a9c179b33af1a024cdb5a4472b6288016a", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.12.0", GitCommit:"d325d2a9c179b33af1a024cdb5a4472b6288016a", GitTreeState:"clean"}
% kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean",
BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11+", GitVersion:"v1.11.5-gke.5", GitCommit:"9aba9c1237d9d2347bef28652b93b1cba3aca6d8", GitTreeState:"cl
ean", BuildDate:"2018-12-11T02:36:50Z", GoVersion:"go1.10.3b4", Compiler:"gc", Platform:"linux/amd64"}

Which chart:
stable/redis-ha
What happened:
If AUTH is set, the redis master cannot write due to NOREPLICA error.
What you expected to happen:
It should be OK.
How to reproduce it (as minimally and precisely as possible):
helm install \
    --set auth=true \
    --set redisPassword=somepassword \
    stable/redis-ha

Connect to one of the master via the sentinel
Then write a key with a value

You should get the following error:
(error) NOREPLICAS Not enough good replicas to write.

Anything else we need to know:
I have checked the configuration for:
requirepass
masterauth

and it set correctly.
From the logs:

Hi Same issue for me also but is is occurring When i failed or shutdown any one node.

It sounds like you might have an unhealthy cluster. By default you should really only receive that if the master is unable to replicate to at least 1 slave. Check your slave logs to see if they are replicating from the master.
Also I know some of the more recent changes into the chart add fixes to help keep the pods in quorum. I would suggest trying the latest version of the chart (currently 3.3.3):
helm install \
  --version 3.3.3 \
  --set auth=true \
  --set redisPassword=somepassword \
   stable/redis-ha


fixed typo in example 4

Fixed typo in example 4: "Get-VMHardDrive" -> "Get-VMHardDiskDrive"
Fixes #320

Thanks, @bcwood !


Using set_shader_param with a color/vec4 uses square root values

Godot version: v3.1.stable.mono.official (LATEST)
OS/device including version: Ubuntu 18.04 bionic,
Kernel: x86_64 Linux 4.18.0-17-generic
Issue description:
If using colors to transfer values (Since sampler2d is our only array), The values seem to be offset by 0.05 and put through a square root function
If the red value is set to sqrt(0.55), the line seems to appear in the middle

Steps to reproduce:

Use set_shader_param('param_name', Color(0.5, 1.0, 1.0)) to set a specific color
When accessing the color in the shader, the values will be mutated

Minimal reproduction project:
GodotTestProject.zip

What does it look like on the shader side? Are you using hint_color?

Shader:
shader_type spatial;
render_mode specular_disabled;

uniform vec4 param;

void fragment() {
	ROUGHNESS = 1.0;
	METALLIC = 0.0;
	SPECULAR = 0.0;

	ALBEDO = vec3(abs(param.x - UV.x) * 10.0);
}

I have not tried hint_color, but I won't be able to use it because my actual project uses sampler2D. I get the error "Color hint is for vec4 only"

Its because you are using a color. It looks like the engine is converting to sRGB for you because you are passing in a color instead of a vector. The problem goes away if you use a vector.

If I were to pass in a Vector instead of a Color, how would I specify alpha? Godot does not have a Vector4 implementation.
As for hint_color, I am not able to use this flag since my main project uses a sampler2D and I need to pass a variable amount of data

Sampler2D won't have this problem as it is imported as linear by default unless you use hint_use_as_albedo

Out of curiosity, is this allowed in the shader language?
ALBEDO = vec3(abs(param.x - UV.x) * 10.0);
ALBEDO.a = 0.5;

If I'm not mistaken, wouldn't this just make the mesh transparent? (If it had that flag enabled)

As a workaround, you can convert all your data using this algorithm:
1.055 * pow(v, 1.0 / 2.4) - 0.055


Cannot generate - completions endpoint deprecated

At the end of 2023, gpt completions endpoint is deprecated with engine functionality and the models that supports that. Are you planning to update the repository? Because at the moment it cannot be used.

Doesn't it work when you downgrade OpenAI library? (<- I haven't done this so I'm not sure about this)
If not, I think you should update make_requests method.


Overview with Azure/AWS rbac view permissions

Describe the bug
An user with Azure or AWS view permissions only sees All cloud filtered by OpenShift cost only.
Perspective dropdown shows "All" and "Supplementary" as options, which should be in OpenShift tab.
To Reproduce
Steps to reproduce the behavior:

Set up RBAC for AWS view permissions only
Go to overview
See error

Expected behavior
Correct overview of AWS/Azure data, depending on RBAC permissions
Screenshots

Desktop (please complete the following information):

OS: Fedora
Browser Chrome

Additional context
Tested on CI beta

@dlabrecq I'm now getting this with AWS view permissions:

verified


Add timeout and deadline support to protocols

This adds timeout and deadline support

I'm seeing quite a few log statements in the tests:
protocol handle failed Error [ERR_STREAM_WRITE_AFTER_END]: write after end

Is it possible that the res.setTimeout callback is triggered, where we "end" the response, but our code still runs on and tries to write to the response?

@timostamm I thought so too when I initially saw that but I was getting the same errors when I was setting the timeout on the request level too so that made me somewhat confident that we werent. But we should probably investigate this more after https://github.com/bufbuild/connect-web/pull/382 lands to see if that resolves the error or I can make a new issues to continue the triage. Thoughts?

But we should probably investigate this more after #382 lands to see if that resolves the error or I can make a new issues to continue the triage. Thoughts?

Let's land this as is (after comments from last review are resolved).


Is there a way to pass the regexp that was available in the old goji?

I have defined the following endpoint with https://github.com/zenazn/goji
goji.Get(regexp.MustCompile(`^/@(?P<accountName>[a-zA-Z]+)$`), getAccountName)

Can I get the same behavior with the new goji?

Yes! But it's not included with the base library any more. Instead, the new version of Goji makes it easy to support custom Patterns.
In order to get this functionality, you'll have to write your own implementation of https://pkg.go.dev/goji.io?utm_source=godoc#Pattern. A basic implementation would:

Get the path from the request context using<EMAIL_ADDRESS>Run that path through your regexp of choice
Make a custom Context implementation that implements the following Value protocol:

Variable support<EMAIL_ADDRESS>AllVariables  support<EMAIL_ADDRESS>(here's pat's implementation of that protocol: https://github.com/goji/goji/blob/490b001d03d16a116d7c44d95d216c69a1aae798/pat/match.go)

Let me know if you end up writing this, and if you get stuck along the way I'd be happy to help out!


Error due to different versions

<EMAIL_ADDRESS>Package oslo (serverExternalPackages or default list) can't be external
The request oslo/crypto matches serverExternalPackages (or the default list), but it can't be external:
The package resolves to a different version when requested from the project directory (1.2.1) compared to the package requested from the importing module (1.2.0).
Make sure to install the same version of the package in both locations.

Hello, trying with new React 19.0.0-rc-6ebfd5b0-20240818 and got this error. On React 18 everything ok.

Same for me
Package oslo (serverExternalPackages or default list) can't be external
The request oslo/cookie matches serverExternalPackages (or the default list), but it can't be external:
The package resolves to a different version when requested from the project directory (1.2.1) compared to the package requested from the importing module (1.2.0).
Make sure to install the same version of the package in both locations.

React 19, Next 15


[bug] can't open when i use macos installer

Describe the bug

i can open app via terminal, but when i open it from spotlight, it issue a dialog as above.
i guess the reason is that the permission issue. it will travel the filesystem.
here is my tauri config
https://github.com/naaive/orange/blob/master/src-tauri/tauri.conf.json
Reproduction
1.download https://github.com/naaive/orange
2.build it from source
3.install with bundle Orange_0.0.4_aarch64
4.open it from spotlight
Expected behavior
No response
Platform and versions
Operating System - Mac OS, version 11.3.1 X64

Node.js environment
  Node.js - 14.17.6
  @tauri-apps/cli - 1.0.0-beta.10
  @tauri-apps/api - 1.0.0-beta.8

Global packages
  npm - 6.14.15
  yarn - 1.22.11

Rust environment
  rustc - 1.57.0
  cargo - 1.57.0

App directory structure
/screenshot
/node_modules
/public
/src-tauri
/doc
/build
/.git
/.idea
/src

App
  tauri.rs - 1.0.0-beta.8
  build-type - bundle
  CSP - default-src asset: blob: data: filesystem: ws: wss: http: https: tauri: 'unsafe-eval' 'unsafe-inline' 'self' img-src: 'self'
  distDir - ../build
  devPath - http://localhost:3000
  framework - React

Stack trace
No response
Additional context
No response

Please update to the latest tauri RC.

Rustc is also out of date.

Try using the PathResolver an app_dir APIs instead of relying on the CWD, that might be the issue too.

CWD is the root path (/) when open app from spotlight.
I resolve this issue by set app data path, use lib https://crates.io/crates/directories
very thanks!

Please update to the latest tauri RC.

thanks for your response!


PS-3597 add tagging pipeline

@joker806 oops :-) forgot to include the shell script for the split-repo


Exclude macos files on tvOS

Summary
Including macos files will cause compile errors for tvOS app.
Test Plan
Use react-native-svg in react-native-tvos app.

@amgleitman


OffScrub | Add Removal of Scheduled Tasks: \Windows\Office

Hi.
Had problems to install Office 2016 Business after uninstalling all Click to Run Packages.
There was a left over folder at Scheduled Task (Microsoft\Office)
After deleting the Folder, setup was successful.
Is it possible to add this into offscrub?
KR

Unfortunately, we do not manage the Offscrub scripts.
More information can be found here.


Diskless support

Support timestamp entry in host configuration
Implement multiple host config modes #41

Regarding the timestamp, I would not create a type around it. I cannot see the advantage here.
I suggest:
type HostCfg struct {
	IPAddrMode       IPAddrMode        `json:"network_mode"`
	HostIP           *netlink.Addr     `json:"host_ip"`
	DefaultGateway   *net.IP           `json:"gateway"`
	DNSServer        *net.IP           `json:"dns"`
	NetworkInterface *net.HardwareAddr `json:"network_interface"`
	ProvisioningURLs []*url.URL        `json:"provisioning_urls"`
	ID               string            `json:"identity"`
	Auth             string            `json:"authentication"`
	**Timestamp        *time.Time   `json:"timestamp"`**
}

update func (h HostCfg) MarshalJSON() and func (h *HostCfg) UnmarshalJSON(data []byte) to handle the convertion UNIX-time-string <-> time.Time

Support timestamp entry in host configuration
Implement multiple host config modes Add flag to control source of HostCfg #41

Just address the timestamp here. 2nd pint can be done in anoher PR


on Bootstrap5, browser default validation message does not showed when the page is so long

Operating system and version : macOS
Browser and version : Chrome (Firefox, Safari is ok)
JS Bin

I am using bootstrap 5 and was validating with browser defaults.
As you can see at JS Bin, when the input element is located on top and the submit button is located too low, if you click the button, the page is scrolled on top but the html5 default invalid message is not showed.
But if you comment out the bootstrap5 css like this,
<!--link<EMAIL_ADDRESS>rel="stylesheet" integrity="sha384-eOJMYsd53ii+scO/bJGFsiCZc+5NDVN2yr8+0RDqr0Ql0h+rP48ckxlpbzKgwra6" crossorigin="anonymous"-->

You can see the browser default html5 validation message.
Yes it can be the chrome browser's problem but any advice for avoiding this is welcome.

The cause for this seems to be scroll-behaviour: smooth;.

@alpadev You saved my day!!
Thank you very much!!


Remove all CAPA references in codebase

Combined backport of #3209 and #3220.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm


Can't stop app

I have several apps deployed on a server. I can start and stop every app except one. Whenever I try to stop it, it just says "Stopping app: SUCESS" but it doesn't actually stop. I think it might be bugged since the app has been listening for a long time.
How can you stop an app from the server itself?

When I try to deploy the last version to it, I get this error.
   -----------------------------------STDERR-----------------------------------
        Failed to remove container (Meteor123): Error response from daemon: No such container: Meteor123
        Failed to remove container (Meteor123-frontend): Error response from daemon: No such container: Meteor123-frontend
        docker: Error response from daemon: failed to create endpoint Meteor123 on network bridge: Bind for <IP_ADDRESS>:3002 failed: port is already allocated.
        -----------------------------------STDOUT-----------------------------------
        base: Pulling from meteorhacks/meteord
        4d690fa98655: Already exists
        a3ed95caeb02: Already exists
        0638f01c6191: Already exists
        086f3bb36259: Already exists
        Digest: sha256:684021facd5847f6a4ee2f0095fd26b4d7f5af2b776150531914d43fd0eb889b
        Status: Image is up to date for meteorhacks/meteord:base
        74e8d4df89fd1604149b1618d7a57930e4551093fc01ac582cac2c4d2523223d
        ----------------------------------------------------------------------------

I was able to solve this by restarting the server and calling mupx stop again.
Then I was able to deploy it successfully.

Right, well don't forget and to answer your question...
You can SSH into the target machine and then call "docker exec" with bash or any available command to get into the docker containers and or execute a command.


Flow Type Example for Stateful React Components

Question
I am able to use Flow Types with Stateless (Functional) React Components to displays Props using the <PropsTable /> component, but it doesn't work for Stateful (Class) Components. Instead of using Flow Types, I have to use prop-types to get it to work.
When I mean, it doesn't work, I mean the PropsTable shows up empty on docz.
I do not get any errors as well on the build process nor console in docz

Is there an example on how Flow Types for Props can be used for Stateful Components?

How do I use the Description section for the <PropsTable />

types Props = {
  a: string
}

export default MyComponent extends Component<Props> {
...
}

↑ doesn't work.
Thank you.

@chantlong
I am not sure this is a bug with Docz, as much as it is limitations of React Docgen.

To get props table to show up, you need to do it as
type Props = { a: string }

class MyComponent extends Component<Props> { ... }

export default MyComponent;

I am assuming this is part of the React Docgen limitations mentioned in the PropTable section https://www.docz.site/introduction/documenting-your-things#built-in-components.

As this uses React Docgen, you can set the description like so
type Props = {
    /** This is my description of the prop type a :)  */
    a: string,
  /** This is my description of the prop type b :) */
    b: string
}

I know it is fugly, but again, it is the limitation of React DocGen.
Have a look at https://github.com/reactjs/react-docgen for the PropsTable stuff, there is flow based examples

@Swapnull
I have tried 1. before but it didn't work. Thanks though! I'll stick with propTypes for the time being.
Noted on 2.

Hey @chantlong,
It would be good to know if this is actually a bug or a usage issue.
I have just created a small flow example project with docz and a stateful Button component along the same vein as your that renders its proptypes just fine. https://github.com/Swapnull/docz-flow-example.
Only difference in the component is you are doing
export default MyComponent extends Component<Props> {

and I am doing
export default class MyComponent extends Component<Props> {

I don't know if the class keyword is omittable from class exports, but my editor was complaining [flow] Unexpected token extends without it.
Are you able to fork this, confirm it works and add in your component to the project. If its still not working, upload the repo so we can check out the bug :)
You could also just show us the repo that your issue is in if possible .

@Swapnull Thank you for going through the trouble of making an example. I checked out the repo and compared the differences.
I can confirm this isn't a bug now but a huge typo on my part. I passed <Props> to MyComponent like export default class MyComponent<Props> extends Component { instead. Interesting that React compiles fine with the typo. Please close the issue and I apologize for the false alarm.


Expose tree navigator

Internally UI editor has the tree navigator to explore layout and ui elements,
how about exposing this tree navigator as an independent UI element so end-user may take advantage of it

Is there document on how to create UI component?


Publish 8.7-20240308012117+0000

Publish 8.7-20240308012117+0000

@bot-gradle test and merge

The merge queue build has started. Click here to see all failures if any.


Fix regression in ExpectChange

The cop was triggered by change { user.reload.name }
fixes #1276

Before submitting the PR make sure the following are checked:

[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[-] Updated documentation.
[x] Added an entry to the CHANGELOG.md if the new code introduces user-observable changes.
[x] The build (bundle exec rake) passes (be sure to run this locally, since it may produce updated documentation that you will need to commit).

@bquorning Should we do a patch release?

@pirj yes I just confirmed that branch fixes the issue


Update strelka to 2.9.9; use standalone image

Ack! Just realized the helper name doesn’t match between the two images.


Add NotoSans-Regular-Title to replace old title font

Fixes #2472
The new font uses the NotoSans font (24 px), mantaining the same size as the old title font so there would not be any overlapping text issues.

Can one of the admins please verify this patch?

Can confirm this looks to do the trick! Need to pull in all the module PRs all at once, no time for that right this moment but I approved the GCI task for now :-)
Associated module PRs to also merge:

[ ] https://github.com/Terasology/Alchemy/pull/5
[ ] https://github.com/Terasology/Cooking/pull/131
[ ] https://github.com/Terasology/Equipment/pull/115
[ ] https://github.com/Terasology/InGameHelp/pull/7
[ ] https://github.com/Terasology/InGameHelpAPI/pull/2
[ ] https://github.com/Terasology/Journal/pull/7
[ ] https://github.com/Terasology/Potions/pull/49
[ ] https://github.com/Terasology/StoneCrafting/pull/2
[ ] https://github.com/Terasology/WoodCrafting/pull/6
[ ] https://github.com/Terasology/WorkstationCrafting/pull/6

Should I attach more screenshots to confirm this is working on the other modules?

I'm fairly sure I've merged all the relevant instances in modules. There were two hits in the engine, but they can be easily fixed when I merge this
I ran some searches and I didn't find any more hits after merging so I'm going to merge this tomorrow. @Cervator does this sound fine?

Well this one sure got to sit around for a while, but happy we're finally getting it out of the way :-)
With @jellysnake's help I tweaked a final few usages in the engine and a few other modules:

Books (actually had its own for no real reason - deleted)
Lost
ModularComputers
WoodAndStone
WoodAndStoneCraftingJournal

I also deleted the old fonts. Gone at last! Looked around some after and couldn't find any obvious missing or messed up text.
Thanks again everybody, on here or on module PRs :-)


Add a review checklist on newly opened PRs

Review checklist
Closes #12
Solution Description
Added an action to the github workflows that comments on a newly opened pull request with the review checklist.
Code Quality

[x] I have read the Contribution Guide
[x] My code follows the code style of this project
[ ] My code builds (or compiles) cleanly without any errors or warnings
I'm not sure how to test this.
[x] My code contains relevant comments and necessary documentation

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:

merged


Allow aliased logging module as a logger candidate

Currently, is_logger_candidate will only detect if the last part of the call path but before the level function is log, logger or logging. This expands so that the direct calls from the logging module are considered even if they're aliased to names other than the ones listed above.
This affects the following rules:

BLE001
All of flake8-logging-format rules as there's a single entry point for every rule
PLE1205
PLE1206

Test plan
A test case has been added for G001 where the logging module is aliased.

👍 Makes sense to me!

I wonder if this is why Ruff is now incorrectly changing (via G010) this:
from distutils import log as distutils_log
distutils_log.warn(msg, *args)  # pylint: disable=deprecated-method

into .warning, which is not defined on distutils.log (it's not a logger from logging).
This was in scikit-build, so surprised it wasn't shown in the ecosystem check. https://github.com/scikit-build/scikit-build/pull/909

We should omit distuils.log.warn.

(Also unsure why it didn't appear in the ecosystem check.)

Not exactly critical (people shouldn't be using distutils.log except for very special cases, don't mind working around it), but not showing up in the ecosystem check is a bit more worrisome.


[REQUEST]Does OpenVDB support ARM structure?

Hello, is it possible to run this project in an Embedded system based on ARM or just support X86?
Looking forward to your help! Thanks a lot!

hi @wangtiehao2010, I am wondering the same thing with you. Have you tried OpenVDB on ARM-based CPU computer? Thanks

OpenVDB (and certainly NanoVDB) should work just fine on ARM. The only potential challenge is getting all the dependencies (like boost and tbb) to build on ARM, but even that should be fine as long as you have a modern C++ compiler (since all dependencies can be build from source code). For instance, OpenVDB runs on Apples M1/M2 which is ARM :)
Cheers,
Ken

On Nov 3, 2022, at 6:44 AM, Maulana Bisyir Azhari @.***> wrote:

hi @wangtiehao2010, I am wondering the same thing with you. Have you tried OpenVDB on ARM-based CPU computer? Thanks
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.

It is a bit challenging to compile openvdb on armel (ARM5) but it seems to work on Debian:

https://buildd.debian.org/status/logs.php?pkg=openvdb&arch=armel


Update logging

Logging config files have been renamed to drop the old 'explorer'
part of the name.
Logging has been configured to only log Error level messages from
the networking layer while logging everything from Info and above
in the db-sync component.

bors r+


Handle comments that look like HTML tags but aren't

Consider this:
https://github.com/googleapis/google-cloud-rust/blob/2c05b4823fbcf6364820907e2709a1502a39f89d/src/gax/src/error/rpc/generated/mod.rs#L199-L200
Rustdoc treats <ip ...> and <Google ...> as HTML tags.  This creates two problems:

rustdoc warngs complains that they are not closed, andwarning: unclosed HTML tag `ip`
--> src/gax/src/error/rpc/generated/mod.rs:198:9
    |
198 | /         /// The subject on which the quota check failed.
199 | |         /// For example, "clientip:<ip address of client>" or "project:<Google
200 | |         /// developer project id>".
    | |___________________________________^

rustdoc removes them from the output:

Either we change all the cases of placeholders using <... >, or we escape these placeholders in the Rust code to keep these in the documentation output.
To my knowledge, the only relevant API ( aip/192 says nothing about such "almost looks like a tag" problems.

Maybe all we need to do is disable this warning for generated code:
https://doc.rust-lang.org/rustdoc/lints.html#invalid_html_tags

FWIW, in #409 I disabled the warnings about these things.  The generated documentation skips the thing that looks like a tag, so the problems from the description remains.


Only send emails to confirmed addresses

Closes #330

Coverage increased (+0.02%) to 87.695% when pulling 916bacef057642c4af39c641a8e34cbb0b3910f1 on bug/only-send-emails-to-confirmed-email into 5055e08ac72d7d081ced6d070f0e485e25942982 on master.


Only accept valid booleans in query params

Accept 0 / 1 / true / false (case insensitive)
Add tests for RequestUtil and Paginated
Format Paginated according to the project's code style

Coverage increased by 3.1%. \o/

yeah!


Support TTL (time to live) for tokens

Auth tokens and ID tokens are all being persisted forever in the database, which can lead to unnecessary bloat as time passes with the server active. We need to support a TTL for these tokens, and any expiring tokens in general, perhaps tied to the token's exp claim.

Duplicate of #160


Use single resource max-age when showing an user data

I thought user max-age was properly set for the show operation in the user controller.
Good catch @aslakknutsen

@hectorj2f snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1570-2


create backplane cli

I reckon the best is if instead of allowing the agent name to be changed we standardise to backplane, we then create a CLI in go that gets released.
This hugely reduce the on boarding surface area since someone then just need to backplane enroll and once they are on the network can manage their microservices with no ruby stuff needed at all.
In time once a choria CA exist this will create a very low friction setup - one that can even be started from a docker compose file in its entirity

Some ideas:
$ backplane exec cron pause -W dc=DC1
$ backplane exec cron resume -W dc=DC1
...

exec would be the default so this would also work:
$ backplane cron pause -W dc=DC1

here cron is a name for the managed backplane - which should map to a sub collective where all instances of a specific backplane should live


Click on Posts

WHEN I click on an existing blog post
THEN I am presented with the post title, contents, post creator’s username, and date created for that post and have the option to leave a comment

I have done everything BUT the comment button still needs to be updated so that it both generates a comment box AND all the subsequent goodies


Add debug information to cache results

Type: feature
Issue: -
Breaking change: no
Addendum to https://github.com/phpmd/phpmd/pull/1011
I found the lack information of the cache difficult to debug. There's no information presented regarding if the cache is used, which it is read from, or if the cache is still valid. I added a few cli flags to show more information:
Feature

Added CLI command flags: -v, -vv, -vvv. Which increments the verbosity of the output. Default is 'Normal'.
If no -v, -vv, or -vvv is specified, the behaviour is currently as it is now and nothing is printed.

Changes

Added OutputInterface based on Symfony's Console package. Should be drop-in replacement if at some point Symfony Console can/will be used.
Added NullOutput (for tests) and StreamOutput classes to be able to write output with verbosity level.
Added Debug output to several cache classes.
Added Verbosity levels: Quiet, Normal (default), Verbose, VeryVerbose and Debug. Currently only VeryVerbose and Debug is being written to.
Updated the documentation with the new cli flags.
Added coverage for my changes.

Note, this branch contains the changes from PR 1011. I don't seem to be able to target that PR in this PR.

Codecov Report
Patch coverage: 91.24% and project coverage change: +0.60 :tada:

Comparison is base (b4d6e1c) 88.65% compared to head (cb92808) 89.26%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@             Coverage Diff              @@
##             master    #1015      +/-   ##
============================================
+ Coverage     88.65%   89.26%   +0.60%
- Complexity     1076     1179     +103
============================================
  Files            96      109      +13
  Lines          2698     3027     +329
============================================
+ Hits           2392     2702     +310
- Misses          306      325      +19

Impacted Files
Coverage Δ

src/main/php/PHPMD/TextUI/CommandLineOptions.php
67.84% <47.36%> (-3.59%)
:arrow_down:

src/main/php/PHPMD/PHPMD.php
82.35% <76.92%> (-3.37%)
:arrow_down:

src/main/php/PHPMD/ParserFactory.php
90.90% <80.00%> (-1.40%)
:arrow_down:

.../main/php/PHPMD/Cache/ResultCacheEngineFactory.php
88.46% <88.46%> (ø)

...rc/main/php/PHPMD/Cache/Model/ResultCacheState.php
95.00% <95.00%> (ø)

src/main/php/PHPMD/Cache/ResultCacheKeyFactory.php
96.42% <96.42%> (ø)

src/main/php/PHPMD/AbstractRule.php
76.66% <100.00%> (ø)

src/main/php/PHPMD/Cache/Model/ResultCacheKey.php
100.00% <100.00%> (ø)

src/main/php/PHPMD/Cache/ResultCacheEngine.php
100.00% <100.00%> (ø)

src/main/php/PHPMD/Cache/ResultCacheFileFilter.php
100.00% <100.00%> (ø)

... and 10 more

... and 1 file with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Update testing.yml

Related issues
Refs:

N/A

Describe the changes made in this pull request
This PR updates the matrix build python versions (3.7 is EOL)
I selected main as the target branch, seems ok
Review checklist

[x] Please check if the pull request is against the correct branch
(format/schema/semantic documentation changes: develop; typos, meta files, etc.: main)
[ ] Please check if all changes are recorded in CHANGELOG.md and adapt if necessary.
[ ] Please run tests locally.

To check,
cd $(mktemp -d --tmpdir cff.XXXXXX)
git clone https://github.com/citation-file-format/citation-file-format .
git checkout <branch>
python3 -m venv env
source env/bin/activate
pip install --upgrade pip wheel setuptools
pip install -r requirements.txt
pytest
<do other things>

look at the diff
there's not much else to check, maybe we should add a manual trigger for the workflow

Should this change be recorded in the changelog you think? It feels like being one-removed/a meta change...

I was a bit on the fence about this one. I guess it depends on who we think the CHANGELOG is for, right? Currently it's for users of the schema. I don't think there really is a case to be made for tracking development changes, e.g. there is no project that depends on the development specifics of this project (We should of course try to keep CONTRIBUTING and README.dev.md up-to-date, but there's no need for tracking the history of those files as well).
Having said that, I don't feel very strongly about the matter.


[not ready to merge] added overload for setResult to expose a 'done' boolean

@ericsciple is this still something we want? Looks like this was trying to tackle the problem where background threads keep the agent from succeeding - do we have agent support for this right now?

Closing, feel free to reopen if appropriate


Workaround Property 'getConfig' does not exist on type 'Vault'

Unsure if this is the right approach, but it worked for me to build
I don't know typescript, so there is probably a better way that I'd love to be educated on

what issue is this meant to resolve?

I just couldn’t build using node:latest without it
On Mon, Jul 1, 2024 at 12:52 PM Steph Ango @.***> wrote:

what issue is this meant to resolve?
—
Reply to this email directly, view it on GitHub
https://github.com/kepano/obsidian-minimal-settings/pull/86#issuecomment-2200912645,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAKAMIQCKJS6VKUXLMHBR73ZKGXRFAVCNFSM6AAAAABJ4DVOFWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMBQHEYTENRUGU
.
You are receiving this because you authored the thread.Message ID:
@.***>


ipdb freezes and doesn't allow to debug properly

From<EMAIL_ADDRESS>on 2014-10-23T04:07:24Z
Spyder Version:  2.3.1
Python Version:  3.3.5
Qt Version    :  4.8.4, PyQt4 (API v2) 4.9.6 on Windows
pyflakes >=0.6.0:  None (OK)
pep8 >=0.6      :  None (NOK)
IPython >=0.13  :  2.0.0 (OK)
pygments >=1.6  :  1.6 (OK)
pandas >=0.13.1 :  0.15.0 (OK)
sphinx >=0.6.6  :  1.2.2 (OK)
rope >=0.9.2    :  0.9.4 (OK)
matplotlib >=1.0:  1.3.1 (OK)
sympy >=0.7.0   :  0.7.5 (OK)
pylint >=0.25   :  1.1.0 (OK)
What steps will reproduce the problem?

run simple code with breakpoint
a ipdb console appears (which is very bad compared to iPython, I wish it could behave as iPython)
after pd.qcut(binBy, linspace(0,1,20)) I got "*** NameError: name 'linspace' is not defined" because I forgot to namespace np.linspace.
afterwards ipdb stop being responsive.

What is the expected output? What do you see instead?
a good debugger for Spyder!!!
Please provide any additional information below
.
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=2020

From ccordoba12 on 2014-10-23T14:01:12Z
That's what everybody wants!
I hope next year I have time to fix all these problems :-)
Status: Accepted
Labels: Cat-Debugger

From ccordoba12 on 2014-11-18T14:55:02Z
Labels: MS-v2.4

From ccordoba12 on 2014-11-18T17:25:44Z
issue #1943 has been merged into this issue.


Add a variable t to the IntegrationParameters

This t would accumulate the time spent on the physics world. In other worlds, it accumulates dt at each timestep.

This has been added to nphysics v0.10.


UnitOfWork and spl_object_hash uniqueness

UnitOfWork relies on spl_object_hash being unique.  However if an object gets destroyed (garbage collected), a new object can receive the same spl_object_hash.
http://php.net/manual/en/function.spl-object-hash.php
I'm seeing a case where an object has been recycled, but the $documentStates map inside of lib/Doctrine/ODM/MongoDB/UnitOfWork.php still contains a reference to that object.
So when a new object is created and attempted to be saved, UnitOfWork thinks it's not new, causing quite the problem...

@mmucklo any chance you could provide a failing test case? Theory is, that UnitOfWork keeps reference to each managed document (embedded documents included) which effectively will prevent that object to be picked by a garbage collector. If there is a scenario that doesn't clean everything it should, we should fix that.

I was seeing the issue break some of my phpunit test cases.  I've since worked around it bit calling ->clear() on the DocumentManager...


add client method Counts.has() so user can verify existence of counts

Allow users to test whether a count is published before reading the count.
Why a new function?  I subscribe to the school of thought that a return value should have one meaning.  Counts.get() only returns an integer representing number of docs, fields, or lengths counted.  If no count is published, then nothing is counted and zero is a valid result.
Fixes #32

@tmeasday, fyi, will publish 0.6.0 if the #32 crowd find this PR acceptable.

Sounds good to me @boxofrox
On Wed, 5 Aug 2015 at 09:05 boxofrox<EMAIL_ADDRESS>wrote:

@tmeasday https://github.com/tmeasday, fyi, will publish 0.6.0 if the
#32 https://github.com/percolatestudio/publish-counts/issues/32 crowd
find this PR acceptable.
—
Reply to this email directly or view it on GitHub
https://github.com/percolatestudio/publish-counts/pull/56#issuecomment-127790596
.

This approach is fine with me.
I can't find anything obviously wrong in the code :+1:

Works for me too, code looks good :+1:

Release 0.6.0 published on atmospherejs.


Installed page - Installed Charts

Table of the installed charts on the clusters and namespaces selected

Table title
Table filter (text input)
Columns: name, release status, chart, revision, namespace, updated
Logo will be displayed similar to the current system
Details

Name – will display the name of the chart and its description
If the user doesn’t have the latest version installed they will see some indication (icon) next to the name
Status will display if a chart is installed or not – a chart installed is called “release”
Chart – will display the chart version
Revision

Clicking on a release (row) will navigate the user to a page about it, similar to the repository page.

@YossiMorgen Thanks! assigned you.

Can i get the Package model?

and some more details like where am i supposed to get those from?
work with props or context or redux?

do you have the install's header svg?

@YossiMorgen your first PR can just be the styles.
implement the props
state can be done later


Update Readme.md

Add optional command to create virtualenv manually.

We are closing this pull request.
@vinimmelo Very thanks for your contribution.


Consider starting with Rust

We might want to start this project out with Rust as the base language. See here: https://github.com/demergent-labs/azle/issues/151

Yep that's what we're doing


Development mycelium focus

Related Issue

#619

Work Done

Put mycelium at forefront of manual
Updated Dashboard section to put mycelium network
Updated Get Started section with Mycelium info

Status

Done

Future

Once the Mycelium OSX + Windows client is done, we can document it in Mycelium section and all the links will work (Get started section leads to generic mycelium TOC)
For now the changes are OK to put Mycelium at the forefront of the manual

shall we wait untill mycelium update reaches mainnet or can we merge now ?

We can merge to dev branch (manual.dev.grid.tf) and we will wait until it's on main to merge the changes to manual.grid.tf