Refactor console connection code

replace per action per console type confirmation dialogs
with a global console notifications dialog. Motivation:
a) dialogs were used for error handling not for confirming
the action
b) error scenarios (i.e. console in use) are asynchronous and be
triggered when user left VM List screen
c) tight coupling with UI component blocs opening the console via
saga layer (auto-connect functionality)
replace .../console/consoleId with .../console/consoleType. Motivation:
a) consoleId is well defined only for SPICE control. Browser VNC and
Native VNC share the same URL. RDP uses protocol name instead.
b) based on vmId and consoleId it's not possible to calculate
console type: Browser VNC and Native VNC cannot be differentiated
However the opposite is possible.
use common method for calculating the list of available console
actions. Remove the code duplication between VmConsoleSelector and
VmActions
provide uniform way of opening all console types including RDP
provide type definitions using typed constant workaround which
relies on typeof FOO === FOO. This allows to use string constants
in type definitions i.e. type A = typeof FOO | typeof BAR
allow RDP access to Windows machines without VNC/SPICE consoles

Force pushed to remove translated messages - the English text has changed so translated labels need to be removed as well.

@rszwajko Could you please add any screenshots showing how the dialogs or any other visual components have changed with this PR? Also there are some conflicts ;) Thank you very much!

Could you please add any screenshots showing how the dialogs or any other visual components have changed with this PR?

The goal was to introduce no UI changes. A careful user will probably notice some small differences i.e. message containing VM name or new console URL suffix but they are not strictly visual component changes.

Also there are some conflicts ;)

Done. Force pushed to resolve merge conflicts.

Can we please do something about the SSO dialog?  The message just plain doesn't make any sense with the action buttons:

Can we please do something about the SSO dialog? The message just plain doesn't make any sense with the action buttons:

@sjd78  check https://github.com/oVirt/ovirt-web-ui/issues/1484

Would be nice if https://fqdn/vm/<vmId>/console brought up the base console page in a disconnected or in the default console mode.  Right now it just fails:

@rszwajko This issue is basically needed for issue #1459 right?
Since this is a major refactoring fix that will need a fully regression tests by QE then I suggest opening a dedicated issue for this and make this PR marked as fixed for both the new issue and  #1459 as well.

@rszwajko This refactoring is basically needed for issue #1459 right

Yes.

Since this is a major refactoring fix that will need a fully regression tests by QE then I suggest opening a dedicated issue for this and make this PR marked as fixed for both the new issue and #1459 as well.

Done: #1494

@sjd78 @sgratch

@sjd78  check #1484

Do we want to include #1484 into this PR? Seems simple from dev perspective and we plan regression anyway.

Would be nice if https://fqdn/vm//console brought up the base console page in a disconnected or in the default console mode

OK. Let's check how much work it requires - we need to add no-console-state to VmConsoleSelector (unfortunately it's part of the toolbar) and VmConsole.

@rszwajko

Do we want to include #1484 into this PR? Seems simple from dev perspective and we plan regression anyway.

It's really better that Issue # 1484 will be handled separately via a dedicated PR and verified separately.  I prefer not to mix those 2 fixes within the same PR. This is a refactoring fix and # 1484 is changing the functionality..

@rszwajko @sjd78

Would be nice if https://fqdn/vm//console brought up the base console page in a disconnected or in the default console mode

OK. Let's check how much work it requires - we need to add no-console-state to VmConsoleSelector (unfortunately it's part of the toolbar) and VmConsole.

This was not supported prior to this refactoring so this is a new requirement that can be handled separately. But I'm still not sure why do you think it's actually needed?

There is one change in functionality: with this patch the RDP console is always enabled for win VMs (even headless). You mentioned that on PR description, but it should be emphasized as a new functionality for the QE.

Yes. There is issue #1445 for tracking that.

In case of a non windows headless VM, the Console button in details card is enabled without a purpose (was disabled before)

Thanks for reporting. Will be fixed in new version.

ci test

@sgratch , @rszwajko - I ran through the various spice, vnc, browser vnc and rdp configs.  As long as a windows vm has a guest agent installed, the rdp connection works well.  Everything looks good.

@rszwajko
LGTM except two issues:

need to restore the messages in src/intl/translated-messages.json file
I can't point yet where is the problem in the code, but I did find out that in case the console in use and there is an error -the error is endlessly displayed till cancel is clicked:
if console error like "Console in use, continue?" occurs and the user clicks the continue button, instead of fetching the consoles then fetching the sessions is done again and the error of "Console in use, continue" is displayed again.

need to restore the messages in src/intl/translated-messages.json file
@sjd78
Done. Thanks for the patch!

if console error like "Console in use, continue?" occurs and the user clicks the continue button, instead of fetching the consoles then fetching the sessions is done again and the error of "Console in use, continue" is displayed again.
@sgratch
Fixed.

I retested the issue after the fix for the .rdp suffix was merged, but I'm still not able to use the remote desktop with the given file. I'm unable to connect to the VM due to the wrong hostname (right now it's the name of the device instead of FQDN or IP) and credentials (oVirt manager credentials are used instead of prompting, the VM might have different credentials).

I retested the issue after the fix for the .rdp suffix was merged, but I'm still not able to use the remote desktop with the given file. I'm unable to connect to the VM due to the wrong hostname (right now it's the name of the device instead of FQDN or IP) and credentials (oVirt manager credentials are used instead of prompting, the VM might have different credentials).

I found that RDP will only work if the FQDN or IP is known from a VM guest agent.  That is the only way I got it to work on my dev environment.  Do you have a live windows install with the guest agent installed?

I retested the issue after the fix for the .rdp suffix was merged, but I'm still not able to use the remote desktop with the given file. I'm unable to connect to the VM due to the wrong hostname (right now it's the name of the device instead of FQDN or IP) and credentials (oVirt manager credentials are used instead of prompting, the VM might have different credentials).

I found that RDP will only work if the FQDN or IP is known from a VM guest agent. That is the only way I got it to work on my dev environment. Do you have a live windows install with the guest agent installed?

Yes, I installed a QEMU guest agent from the virtio-win-guest-tools ISO and I can see all of the the IPs in the VM portal in the VM detail.

rdp always worked like that, it relies on agent reporting

no idea about resolution..that is weird

but yeah, what ivana says sounds wrong. "name of the device", what is that? paste the rdp file content?
regarding sso - it only works for same credentials, and it's a deprecated functionality anyway

The name of the device line from the rdp file and authentication details:
full address:s:DESKTOP-0BGTL3K
username:s:admin@internal-authz

yes, that field needs to be FQDN or IP(as reported by agent).

Seems like the issue is in the RestAPI and not on our side. I opened a bug for it on Bugzilla, so we can close this issue as resolved until they fix it and then retest it. @sgratch

Seems like the issue is in the RestAPI and not on our side. I opened a bug for it on Bugzilla, so we can close this issue as resolved until they fix it and then retest it. @sgratch

The same invalid FQDN appears for both webadmin and web-ui rdp files with: full address:s:DESKTOP-0BGTL3K
And this same FQDN appears as the vm's FQDN within the webadmin's vm details as well so it seems more like a backend/vdsm issue than a rest api one.
The bug opened by Ivana for backend: https://bugzilla.redhat.com/show_bug.cgi?id=2000071
Anyway, this is not a web-ui issue.

Okay, in that case LGTM.


Feature Request: Cloak env variables in .yaml files

Very nice extension. It would be great if the extension could also cloak the environment variables in .yaml files.

Interesting. @akulmehta, can you share an example .yaml file like that?

What frameworks or languages use this .yaml approach? I'm just curious before we start work on this. Why not just use a .env file?


Support custom module file template

This PR allows users to use a custom module file template with conda-env-mod. Primary changes are:

Move module file generation code into a separate "template" file. A template in this case is simply a bash script that generates Lua or TCL code for a module file. Default templates are located in templates/rcac/modules/{lmod|tcl}/default.sh. Sites can define their own templates by changing $DEFAULT_TEMPLATE_DIR in the config section.
Enable a user to specify a custom template in command line. This adds the new command line option: -t|--module-template MODULE_TEMPLATE. Note that the MODULE_TEMPLATE must be a fully qualified path to a bash script.
Adds a basic TCL module template.

The documentation in share/man/man1/man/conda-env-mod.1.md file needs to be updated to reflect new options and capabilities, and the man page would need to be regenerated. Looks like we missed this when adding other features and changing the default earlier. I might try to get some of it done (maybe next week)... looks like it's somewhat of a lot to revamp.
Other than that (and the pip aliasing comments I left in both default.sh), looks good.

I'll work on this later. Will also convert docs to a Sphinx project.


NH3 Model Field

The project needs a field that can be used in models, allowing for data/values to be cleaned with nh3.
The nh3.clean method is likely the way to go with this (docs). Allowing all the parameters to be set in django settings.
An initial implementation of this has been started on a branch and would be the starting point for completing this.
https://github.com/marksweb/django-nh3/compare/main...feat/model-field

The initial version of this is now complete.


Management firewall policy does not work without AFM module for version <IP_ADDRESS>

Environment

Declarative Onboarding Version: 1.25.0
BIG-IP Version: <IP_ADDRESS>

Summary
The big IP with the version <IP_ADDRESS> cannot add mgmt api firewall rules using terraform without provisioning AFM module.
Steps To Reproduce
Steps to reproduce the behavior:

Submit the following declaration:

{
    "schemaVersion": "1.25.0",
    "class": "Device",
    "async": true,
    "label": "my BIG-IP declaration for declarative onboarding",
    "Common": {
        "class": "Tenant",
        "mySystem": {
            "class": "System",
            "preserveOrigDhcpRoutes": true,
            "hostname": "${bigip_hostname}",
            "cliInactivityTimeout": 1500,
            "consoleInactivityTimeout": 1200,
            "autoPhonehome": false
        },
...
       "firewallAddressList1": {
            "class": "FirewallAddressList",
            "addresses": [
                "<IP_ADDRESS>/16",
                "<IP_ADDRESS>/24"
            ]
        },
        "firewallAddressList2": {
            "class": "FirewallAddressList",
            "addresses": [
                "<IP_ADDRESS>/0"
            ]
        },
        "firewallPortList1": {
            "class": "FirewallPortList",
            "ports": [
                "1-65535"
            ]
        },
        "firewallPortList2": {
            "class": "FirewallPortList",
            "ports": [
                443
            ]
        },
        "managementIpFirewall": {
            "class": "ManagementIpFirewall",
            "label": "Example of all management IP firewall properties",
            "remark": "management IP firewall description",
            "rules": [
                {
                    "name": "mgmt_api_allow",
                    "label": "management api access allow rule",
                    "remark": "management api access allow rule",
                    "action": "accept",
                    "protocol": "tcp",
                    "loggingEnabled": true,
                    "source": {
                        "addressLists": [
                            "/Common/firewallAddressList1"
                        ],
                        "portLists": [
                            "/Common/firewallPortList1"
                        ]
                    },
                    "destination": {
                        "addressLists": [
                            "/Common/firewallAddressList2"
                        ],
                        "portLists": [
                            "/Common/firewallPortList2"
                        ]
                    }
                },
                {
                    "name": "mgmt_api_reject",
                    "label": "management api access reject rule",
                    "remark": "management api access reject rule",
                    "action": "reject",
                    "protocol": "tcp",
                    "loggingEnabled": true,
                    "source": {
                        "addressLists": [
                            "/Common/firewallAddressList2"
                        ],
                        "portLists": [
                            "/Common/firewallPortList1"
                        ]
                    },
                    "destination": {
                        "addressLists": [
                            "/Common/firewallAddressList2"
                        ],
                        "portLists": [
                            "/Common/firewallPortList2"
                        ]
                    }
                }
            ]
        },

Observe the following error response:
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 4m10s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 4m20s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 4m30s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 4m40s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 4m50s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 5m0s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 5m10s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 5m20s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 5m30s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 5m40s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 5m50s elapsed]
bigip_do.gns-do_lbr01: Still modifying... [id=a0c35615-e566-40dd-8def-25ec44eaab68, 6m0s elapsed]
^CStopping operation...
....
Response from the declaration verification,
{
"code": 422,
"message": "request failed with null exception",
"referer": "<IP_ADDRESS>",
"restOperationId": 7589034,
"kind": ":resterrorresponse"
}

Expected Behavior
For the version <IP_ADDRESS> the management api firewall rules should be able to be added without the AFM module.
Actual Behavior
Rules are getting added only when the AFM module is provisioned.

Thank you for your feedback. I have added this to our internal product backlog as AUTOTOOL-2850.

I am experiencing the same problem but in version 15.1.4. even with simply adding the portlist. I dont see another way of adding the mgmt ip firewall without adding a port. Code I use:
{     "$schema":"https://raw.githubusercontent.com/F5Networks/f5-declarative-onboarding/master/src/schema/latest/base.schema.json",     "schemaVersion": "1.29.0",     "class": "Device",     "async": true,     "Common": {         "iquery_portlist": {             "class": "FirewallPortList",                 "ports": [4353]         },         "ha_portlist": {             "class": "FirewallPortList",             "ports": [1026]         },         {                     "name": "HA",                     "action": "accept",                     "protocol": "udp",                     "destination": {                         "portLists": ["/Common/ha_portlist"]                     }                   },                 "ManagementIpFirewall": {                     "class":"ManagementIpFirewall",                     "rules": [                         {                             "name": "HA",                             "action": "accept",                             "protocol": "udp",                             "destination": {                                 "portLists": ["/Common/ha_portlist"]                             }                           },                         {                             "name": "iQuery",                             "action": "accept",                             "protocol": "tcp",                             "destination": {                                 "portLists": ["/Common/iquery_portlist"]                             }                           }                 }         } }

This issue has been resolved with the 1.30.0 release.


Changing the color and also responsiveness

Is it possible to change the color of the part of the switch that is white in color? Not the color of the ON and OFF but the other side.

Is this component responsive? I want to be able to see the switch in different devices.

Thank you

Hello @sabb123

Check the issue #9 if you want to change the color of the label.
The responsiveness depend of the project. you can resize the switch when the resolution of the window change. You just need to use the property size, check the readme for more information. If you want other behavior for your especific implementation, you have to change your css.

Please check the other issues before create a new one, to focus in to the specific issue separately

Good Luck


resume efforts to detect examples coverage

are all classes instantiated at least one?
are exhaustive examples provided for  important classes like Biosample?

examples/output/Biosample-exhaustive_report.yaml: src/data/valid/Biosample-exhasutive.yaml
	$(RUN) exhaustion-check \
		--class-name Biosample \
		--instance-yaml-file $< \
		--output-yaml-file $@ \
		--schema-path src/schema/nmdc.yaml

#735
#1584
#1598


X86 dev backend List functions

All of the List functions we should support. Even though some of these features are probably already implemented, I am leaving them unchecked so that we can double check they support all expected data types. Also, many of these will just be zig builtins and basically free to implement.
Note: It is advised to convert a task to an issue and assign it to yourself when you begin working on something.
Context and guide on the dev backend found in #1932.

[ ] ListLen
[ ] ListWithCapacity
[ ] ListReserve
[ ] ListAppendUnsafe
[ ] ListGetUnsafe
[ ] ListReplaceUnsafe
[ ] ListConcat
[ ] ListPrepend
[ ] ListMap
[ ] ListMap2
[ ] ListMap3
[ ] ListMap4
[ ] ListSortWith
[ ] ListSublist
[ ] ListDropAt
[ ] ListSwap

Useful links:

Readme
Guide on assembly generation

just trying some of these in the repl makes me think a bunch can be crossed off the list
» List.len [1]

1 : U64
» List.withCapacity 4

[] : List *
» List.reserve [] 4

[] : List a

ListAppendUnsafe ListGetUnsafe ListReplaceUnsafe had no corresponding List.appendUnsafe etc
» List.concat [2] [1]

[2, 1] : List (Num *)
» List.prepend [2] 1

[1, 2] : List (Num *)
» List.map [1, 2, 3] \x -> x+1

[2, 3, 4] : List (Num *)
» List.map2 [1] [2] \x, y -> x*y

[2] : List (Num *)
» List.map3 [1] [2] [3] \x, y, z -> x*y*z

[6] : List (Num *)
» List.map4 [1] [2] [3] [4] \x, y, z, w -> x*y*z*w

[24] : List (Num *)
» List.sortWith [2, 1, 3] \x, y -> Num.compare x y

[1, 2, 3] : List (Num *)
» List.sublist [1, 2, 3, 4] { len: 2, start: 1}

[2, 3] : List (Num *)
» List.dropAt [1, 2] 0

[2] : List (Num *)
» List.swap [1, 2] 0 1

[2, 1] : List (Num *)

List.appendUnsafe


Updates for Karpenter 0.36.x CRDs

TL:DR;
Updates CRDs-catalog for Karpenter 0.36.x configurations
Issue
While no changes are needed to get a proper validation with current configurations, there are some changes in 0.36 to consider adding for supported feature changes.
Solution
I used the CRD Extractor script to export the 0.36 CRDs for Karpenter, there were no EC2NodeClass changes with this release. I based my testing changes on the Node Pool example provided. While the new label doesn't cause a failure, I was able to confirm validation by adding a new kubelet config to our manifest with invalid int values, here's a snippet from the manifest, note the incorrect value types for cpu and memory:
apiVersion: karpenter.sh/v1beta1
kind: NodePool
spec:
  template:
    spec:
      kubelet:
        kubeReserved:
          cpu: 100
          memory: 100
      requirements:
      - key: karpenter.k8s.aws/instance-cpu-manufacturer
        operator: In
        values:
        - "aws"

This should fail but doesn't with the currently published CRDs, we get a validated manifest using this command:
kubeconform -schema-location default -schema-location 'https://raw.githubusercontent.com/InfinityFlowApp/CRDs-catalog/main/{{.Group}}/{{.ResourceKind}}_{{.ResourceAPIVersion}}.json' "$output_path/$chart_name.yaml"

Changes in karpenter-nodepools.yaml:
   template:
     metadata: {}
     spec:
+      kubelet:
+        kubeReserved:
+          cpu: 100
+          memory: 100
       nodeClassRef:
         name: testing-node-class
       requirements:
@@ -66,6 +70,10 @@ spec:
         operator: Gt
         values:
         - "2"
+      - key: karpenter.k8s.aws/instance-cpu-manufacturer
+        operator: In
+        values:
+        - "aws"

Once I updated my feature branch and ran validation using it, we get the expected failure for using int instead of string:
kubeconform -schema-location default -schema-location 'https://raw.githubusercontent.com/NicholasRaymondiSpot/CRDs-catalog/karpenter-036/{{.Group}}/{{.ResourceKind}}_{{.ResourceAPIVersion}}.json' "$output_path/$chart_name.yaml"

Error:
NodePool testing-node-pool is invalid:
  problem validating schema. Check JSON formatting:
    jsonschema: '/spec/template/spec/kubelet/kubeReserved/memory' does not validate with
    https://raw.githubusercontent.com/NicholasRaymondiSpot/CRDs-catalog/karpenter-036/karpenter.sh/nodepool_v1beta1.json#/properties/spec/properties/template/properties/spec/properties/kubelet/properties/kubeReserved/additionalProperties/type: expected string, but got number

Changes Made

NodeClaim & NodePool
** Kublet properties for kubeReserved & systemReserved are modified to only accept strings
** The requirements spec has an updated validation rule for labels matching karpenter.k8s.aws/instance-cpu-manufacturer

Notes
This was tested with Karpenter 0.36.2
Resources & References
https://raw.githubusercontent.com/aws/karpenter/v0.35.5/pkg/apis/crds/karpenter.k8s.aws_ec2nodeclasses.yaml
https://raw.githubusercontent.com/aws/karpenter/v0.36.2/pkg/apis/crds/karpenter.k8s.aws_ec2nodeclasses.yaml
https://raw.githubusercontent.com/aws/karpenter/v0.35.5/pkg/apis/crds/karpenter.sh_nodeclaims.yaml
https://raw.githubusercontent.com/aws/karpenter/v0.36.2/pkg/apis/crds/karpenter.sh_nodeclaims.yaml
https://raw.githubusercontent.com/aws/karpenter/v0.35.5/pkg/apis/crds/karpenter.sh_nodepools.yaml
https://raw.githubusercontent.com/aws/karpenter/v0.36.2/pkg/apis/crds/karpenter.sh_nodepools.yaml
Upgrading to v0.36.0+

@ElanHasson this is ready for review.


Wierd directory name

Hi there!
Do not know if that is issue... but when uploading image from content field, directory with wierd name created. Like that for example (application::article.article).
I beleve it is becouse of code string 125 in index.js :
const backupPath = file.related && file.related.length > 0 && file.related[0].ref ? ${file.related[0].ref} : ${file.hash}
Consider shortening it to :
const backupPath = ${file.hash}

Hello @slavmin,
Thanks for your report !
When you upload a file from Strapi Admin, in fact, the file name use related ref application::article.article by example.
But if you do the same from a custom website with the ref article/{id}/, the file will be upload into the directory article/{id}/.
The related ref are important, personally I used it to upload my file to GCS into the good directory.
If I remove the related[0].ref, my file will be uploaded into the root path... and to manage it, it's more difficult.
I hope this explanation was clear enough.
Thanks,


Adding lab deletion to FAQ

@RoseHJM I wanted to go ahead and added it to the FAQ. The more places we can state it the better for when customers search for this

Hey @lalexedwards, I'm actually in the process of removing the DTL FAQ. It contains a lot of duplicate information, which isn't kept up to date. It also competes for search - if people are searching for info, I'd rather they find it in context in an article than in an FAQ.
So, I won't merge this change, but I appreciate the thought behind it.
#please-close

@RoseHJM that makes perfect sense to me.


Fix max nan in GPU and Clang

added prefix with max func to GPU CLProgram
added nan check to GPU and Clang prefix
unskipped CI max nan check for GPU and Clang
Fixes #862

Changes made in tinygrad/:
------------------------------------------------------------
files                             insertions       deletions
------------------------------------------------------------
tinygrad/runtime/ops_clang.py              1               1
tinygrad/runtime/ops_gpu.py                1               0
------------------------------------------------------------
total                                      2               1
------------------------------------------------------------
lines added in the tinygrad folder: 1

Is this how torch does it? What's the performance implication?

Yes, this is how torch handles it. I created a similar test with torch and it passed (returns nan):
GPU=1 python3 test/test_ops.py TestOps.test_max_torch_inf (__main__.TestOps) ... ok

def test_max_inf(self):
    n = torch.max(torch.FloatTensor([1, float("nan")])).numpy()
    assert math.isnan(n.item()), f"{n.item()} is not nan"

It's worth noting that pytorch also has **fmax **which will return the higher value even with nan.
checking performance now

Pytorch max() will return a nan if any element in tensor is nan. There is also fmax() which is faster and will return the higher element if there is a nan. max() is utilized to avoid potential issues caused by invalid calculations. fmax is used when performance is more important.
Pytorch example:
import torch
a = (torch.tensor([1.0, float('nan')], device='cuda')).max()
print(a)
tensor(nan, device='cuda:0')**

Here are some benchmarks with 3090 GPU:
THIS PATCH:
Hello.
ran model in 496.13 ms
sync in 0.11 ms
 I
ran model in 647.27 ms
sync in 0.12 ms
'
ran model in 358.04 ms
sync in 0.12 ms
m
ran model in 357.66 ms
sync in 0.11 ms
 a
ran model in 357.37 ms
sync in 0.12 ms

ran model in 366.11 ms
sync in 0.14 ms
2
ran model in 359.40 ms
sync in 0.12 ms
0
ran model in 358.46 ms
sync in 0.11 ms
 year
ran model in 358.98 ms
sync in 0.11 ms
 old
ran model in 368.41 ms
sync in 0.13 ms

MASTER:
Hello.
ran model in 491.97 ms
sync in 0.12 ms
 I
ran model in 644.98 ms
sync in 0.12 ms
'
ran model in 359.18 ms
sync in 0.12 ms
m
ran model in 360.02 ms
sync in 0.12 ms
 a
ran model in 360.01 ms
sync in 0.15 ms

ran model in 368.71 ms
sync in 0.14 ms
2
ran model in 361.87 ms
sync in 0.12 ms
0
ran model in 360.93 ms
sync in 0.13 ms
 year
ran model in 361.81 ms
sync in 0.12 ms
 old
ran model in 371.50 ms
sync in 0.13 ms

flammit  made a good point on the original ticket regarding the different max() behaviors of each backend as well.

Running llama will not test the performance of max. You have to test it explicitly

Here's just the max test:
GPU=1 python3 test/test_speed_v_torch.py TestSpeed.test_max
THIS PATCH:
max   096x 4096    3.71 ms (    4.53 GFLOPS    18.11 GB/s) in torch,    9.52 ms (    1.76 GFLOPS     7.05 GB/s) in tinygrad,    2.57x slower      16.78 MOPS    67.11 MB
.
----------------------------------------------------------------------
Ran 1 test in 0.728s
OK

MASTER:
 max   4096x 4096    3.70 ms (    4.54 GFLOPS    18.16 GB/s) in torch,    9.53 ms (    1.76 GFLOPS     7.05 GB/s) in tinygrad,    2.58x slower      16.78 MOPS    67.11 MB
.
----------------------------------------------------------------------
Ran 1 test in 0.699s
OK

Can this be done in tensor.py instead? Does it have to change the backends?

I think so, I've done some brief investigating on that. Looking into it.

After further investigation, making changes to the Tensor class does not seem like the best route. Checking nan without realizing the tensors (and using the CPU), doesn't seem feasible. In order to match Tinygrad max() to Pytorch max (returning nan if the tensor's contain nan), the best approach seems to be to make changes to the backends of the accelerators."

I've got a branch that is checking for nan in max without realizing the tensor. Working out some kinks at the moment.


ghostscript: fix install names on Darwin

Fixes #355377.
This should avoid the need to mess around with install_name_tool entirely. This mirrors what is done by Homebrew^1 and MacPorts^2.
This should also make the changes in #355853 and #357951 unnecessary.

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@carlocab I think you fixed this problem on the wrong branch, as far as I can see here on master the change I made in https://github.com/NixOS/nixpkgs/pull/357951 is already present. So the existing package derivation should work.
On the other hand, in 24.05 it does not work.
In the 24.05 branch, as far as I can see, there is extensive use of install_name_tool.
So I think this PR indeed improves the future compatibility of this derivation, but is not solving https://github.com/NixOS/nixpkgs/issues/355377

@carlocab I think you fixed this problem on the wrong branch, as far as I can see here on master the change I made in #357951 is already present. So the existing package derivation should work.

Thanks, switched the branch to staging-24.05.

We’re still doing this install_name_tool stuff unnecessarily on master, right? So I guess we’ll want a master/24.11 version of this PR afterwards, too, or am I misunderstanding?

We’re still doing this install_name_tool stuff unnecessarily on master, right?

Yes.

So I guess we’ll want a master/24.11 version of this PR afterwards, too, or am I misunderstanding?

I guess? I don't really understand the branching strategy here, sorry 😅 But if the install_name_tool stuff will stay unless there is a master and/or 24.11 version of this PR, then yes. Just let me know if they're needed -- I'll open the necessary PRs.

Thanks; submitted against staging at #359025. I think staging is merged into master too, so I'm not sure whether a separate master PR is needed. If so let me know.

Right, the purpose of staging is to batch up mass‐rebuild changes to merge into staging-next, where we build everything and triage regressions, and then merge into master. (And also master merges back into staging-next merges back into staging, to keep them from drifting! The diagram in https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#staging may make this more or less confusing.)


Add parens to satisfy Elixir 1.17

This eliminates the following warning otherwise generated by Elixir 1.17 and beyond:
using map.field notation (without parentheses) to invoke function TestSchema.Date.strict() is deprecated, you must add parentheses instead: remote.function()

Why am I looking at JavaScript in an Elixir file? 😢
Thanks Ben! This should make it into a release soon with #13.

@bencoppock Thanks for your contribution. This deprecation warning fix was released in speck 1.2.0.


Undocumented Search API

On your great PDF file you show 2 kind of Endpoint for search API and both have the same name as
/search/tweets.json
how do you use the Undocumented one ? Assuming that i have access to Official Twitter App Access Key , Because when i do that i still have the same rate limit for documented Search API and it only show the recent tweets , With Twitter App using the same Access Key there is no rate limit and it can get tweet as old as it can be
Can you Please shade a light on this
Thanks Nicolas

http://www.ioscodes.com/store/p6/iOS_Twitter_Login_.html

Still looking for an example for this , hope someone help


Add file-like obj handler for apply_effects

After #1116, this PR adds native support file-like object to load and sox_effects.

Squashed into #1108


yunitator launch command update

I'm following the instructions in the docs, but don't seem to get yuninator to run as specified:
m14404737:DiViMe marcas$ vagrant ssh -c "yuninator.sh data/CogSciTutorial/"
yuninator.sh: command not found
Connection to <IP_ADDRESS> closed.

...seems like the file is now called yunitate.sh?
m14404737:DiViMe marcas$ vagrant ssh
Welcome to Ubuntu 14.04.6 LTS (GNU/Linux 3.13.0-170-generic x86_64)

 * Documentation:  https://help.ubuntu.com/

  System information as of Mon Jul 15 11:32:48 UTC 2019

  System load:         0.0                IP address for eth1: <IP_ADDRESS>
  Usage of /:          34.5% of 39.34GB   IP address for eth2: <IP_ADDRESS>
  Memory usage:        7%                 IP address for eth3: <IP_ADDRESS>
  Swap usage:          0%                 IP address for eth4: <IP_ADDRESS>
  Processes:           85                 IP address for eth5: <IP_ADDRESS>
  Users logged in:     0                  IP address for eth6: <IP_ADDRESS>
  IP address for eth0: <IP_ADDRESS>

  Graph this data and manage this system at:
    https://landscape.canonical.com/

0 updates can be installed immediately.
0 of these updates are security updates.

New release '16.04.6 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

Last login: Mon Jul 15 11:32:48 2019 from <IP_ADDRESS>
vagrant@vagrant-ubuntu-trusty-64:~$ ls launcher/
diartk.sh        evalWCE_LOSO.sh  noisemesSad.sh   README.md        tocomboSad.sh
estimateWCE.sh   fulltrainWCE.sh  opensmileSad.sh  talnet.sh        vcm.sh
eval.sh          noisemesFull.sh  python3/         test.sh          yunitate.sh
vagrant@vagrant-ubuntu-trusty-64:~$ exit
logout
Connection to <IP_ADDRESS> closed.

Indeed, vagrant ssh -c "yuninator.sh data/CogSciTutorial/" runs successfully for me.
Can someone please update the docs?

corrected this typo


Fix deploy issue after Unity assembly reload

Overview
After Unity reloads assemblies (which it does after a script changes), the authorization token was being lost, since it doesn't get serialized when state is reloaded.
Unity's web request API caches the previous authorization cookie. This causes two things:

Our next attempt to authorize succeeds but doesn't return a response, since we're contacting the device with the previous cookie
Code that assumed we'd get a response throws a nullref

Now, if the request succeeds but nothing is returned, we ignore the result and move on like normal, since we know we've been properly authenticated via the cached cookie.
Also cleans up some unused fields and adds some documentation.
Changes

Fixes: https://github.com/microsoft/MixedRealityToolkit-Unity/issues/5697

/azp run

/azp run


Use a new ELF format for the shim

This commit series will decouple the loader and shim logic of memory layout and communicating that layout.
Get rid of hostlib, BootInfo and loader centric calculation of the
memory layout, with the help of a linker script, ELF program header entries
and global symbols.
This requires a relative big commit, because it cannot be split without
breaking the CI.
The loader will use these new program header types:
/// The sallyport program header type
pub const PT_ENARX_SALLYPORT: u32 = PT_LOOS + 0x34a0001;

/// The CR3 pagetable program header type
pub const PT_ENARX_PML4: u32 = PT_LOOS + 0x34a0002;

/// The enarx code program header type
pub const PT_ENARX_CODE: u32 = PT_LOOS + 0x34a0003;

These give the loader a hint for the range of that specific memory type,
which require special handling or is used to communicate with the shim.
Resulting ELF headers:
❯ readelf -Wl target/debug/build/enarx-keepldr-553d77cbdbfb8a40/out/bin/shim-sev

Elf file type is EXEC (Executable file)
Entry point 0x100000000
There are 12 program headers, starting at offset 64

Program Headers:
  Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align
  LOAD           0x000000 0x00000000fffa9000 0x00000000fffa9000 0x000000 0x055000 RW  0x1000
  LOAD           0x001000 0x00000000ffffe000 0x00000000ffffe000 0x001000 0x001000 RW  0x1000
  LOAD           0x002000 0x00000000fffff000 0x00000000fffff000 0x001000 0x001000 RW  0x1000
  LOAD           0x003000 0x0000000100000000 0x0000000100000000 0x000166 0x000166 R E 0x1000
  LOAD           0x004000 0x0000000100001000 0x0000000100001000 0x03ae68 0x03ae68 RW  0x1000
  LOAD           0x03f000 0x000000010003c000 0x000000010003c000 0x053680 0x053680 RWE 0x1000
  LOAD           0x093000 0x0000000100090000 0x0000000100090000 0x0039cc 0x0039cc R   0x1000
  LOAD           0x097000 0x0000000100094000 0x0000000100094000 0x002240 0x006a6a RW  0x1000
  DYNAMIC        0x004000 0x0000000100001000 0x0000000100001000 0x000110 0x000110 RW  0x8
  LOOS+0x34a0001 0x001000 0x00000000fffa9000 0x00000000fffa9000 0x000000 0x055000     0x1000
  LOOS+0x34a0002 0x002000 0x00000000fffff000 0x00000000fffff000 0x001000 0x001000     0x1000
  LOOS+0x34a0003 0x000000 0x000000010009b000 0x000000010009b000 0x000000 0x400000     0x1000

 Section to Segment mapping:
  Segment Sections...
   00     .sallyport
   01     .pml3
   02     .pml4
   03     .boot_text
   04     .dynamic .boot_data .data.rel.ro .got
   05     .init .text .rela.dyn
   06     .dynsym .rodata .dynstr .gnu.hash
   07     .data .got.plt .bss
   08     .dynamic
   09     .sallyport
   10     .pml4
   11     .code

@haraldh If you split these commits out into their own rolled-up PR, I think they're mergeable and don't have to get hung up on the meat of this PR:

feat(shim-sev): rebuild shim-sev on linker script change
feat(shim-sev): add debug function
fix(shim-sev): _enarx_asm_triple_fault correct addresses
fix: update to sallyport master
feat(shim-sev): impl Default for EncPhysOffset
fix(shim-sev): do an early exit in stack_trace()

@haraldh If you split these commits out into their own rolled-up PR, I think they're mergeable and don't have to get hung up on the meat of this PR:
* feat(shim-sev): rebuild shim-sev on linker script change

* feat(shim-sev): add debug function

* fix(shim-sev): `_enarx_asm_triple_fault` correct addresses

* fix: update to sallyport master

* feat(shim-sev): impl `Default` for `EncPhysOffset`

* fix(shim-sev): do an early exit in `stack_trace()`

I don't need them now. I will work on sallyport in the meantime.


Runtime option

Currently the runtime option does not add runtime.js to the browserified bundle. The runtime is neither accessible through require('6to5ify').runtime or require('6to5ify/runtime').
What is the best practice to include the runtime into the bundle?

It's not supposed to add it to the browserified bundle, there's no way to attach files to the current browserify stream.
Sounds like what you're looking for is the optional selfContained transformer. Just add the 6to5-runtime to your package.json and use add the { optional: ["selfContained"] } option.

Hmm. I must do something wrong:
gulp.task('js', function() {
  var b = browserify('./src/index.js', {
    standalone: 'admin',
    debug: true,
    cache: {},
    packageCache: {},
  })

  b.transform(to5.configure({
    runtime: true,
    optional: ['selfContained']
  }))

  return b.bundle()
    .pipe(source('main.js'))
    .pipe(gulp.dest('dist'))
})

dist/main.js does not contain the runtime.
I tried add the runtime to build process but it does not work as expected:
b.require('6to5-runtime/helpers')

But to5Runtime is still not included:
// Extract from `main.js`
function(require, module, exports) {
  "use strict";

  var Test = exports.Test = function Test() {
    to5Runtime.classCallCheck(this, Test);
  };

  Object.defineProperty(exports, "__esModule", {
    value: true
  });
}

You aren't meant to use the runtime and selfContained transformer together since they're fundamentally different. You'd just use the following options:
b.transform(to5.configure({
  optional: ['selfContained']
}))

Oh crap... Thanks a lot!

No problem! Let me know if you run into anymore issues.


[Searchable Snapshot] Fix bug of Searchable Snapshot Dependency on repository chunk_size

Description
This PR is still in draft version and purpose of this PR is to get some feedback on the approach for resolving the issue.
Once approach is finalized I will put this PR out of draft version and refactor with adding some tests.
The PR implements logic of fetching blocks from multiple chunks of snapshot file.
Related Issues
Resolves #9676

Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)
[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)
[x] Public documentation issue/PR created

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

❌ Gradle check result for 04b75fd: FAILURE
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

https://github.com/opensearch-project/OpenSearch/issues/10755
https://github.com/opensearch-project/OpenSearch/issues/12336

@Rishikesh1159 Looks like a backport was missed, causing the conflict on this PR's backport. Can you create the manual backport after #12485 is merged?

@Rishikesh1159 Looks like a backport was missed, causing the conflict on this PR's backport. Can you create the manual backport after #12485 is merged?

@Rishikesh1159 / @andrross opensearch-bot took care of it :)


ctrl+k, Ctrl+f use " instead of ' in ts file

VSCode Version: Code 1.17.2 (b813d12980308015bcd2b3a2f6efa5c810c33ba5, 2017-10-16T13:59:46.104Z)
OS Version: Windows_NT x64 10.0.16299
Extensions:

Extension
Author (truncated)
Version

ng-template
Ang
0.1.7

path-intellisense
chr
1.4.2

vscode-html-css
ecm
0.1.8

EditorConfig
Edi
0.11.1

tslint
eg2
1.0.12

prettier-vscode
esb
0.24.0

angular-essentials
joh
0.3.2

Angular2
joh
2.10.0

team
ms-
1.122.0

debugger-for-chrome
msj
3.4.0

angular2-inline
nat
0.0.17

html-css-class-completion
Zig
1.11.0

(1 theme extensions excluded)

Steps to Reproduce:

Reproduces without extensions: Yes/No

It is unclear what the issue is. Please describe the problem and some steps to reproduce it

Closing as not actionable without more information


Develop the DMD on ERA5 module

This module would take as inputs:

ERA5 slice downloaded using era5-download
Optionally, the projection basis (the U matrix) generated with era5-svd

DMD would be performed with the PyDMD package, which can optionally do data pre-processing prior to performing DMD. We need to make sure that the SVD performed with era5-svd matches the data pre-processing that PyDMD will do internally (e.g. mean-centering, standardization, delay embedding). The era5-dmd module should check that the data-preprocessing performed by era5-svd matches the data-preprocessing requested by the user.
U = xarrray.open_dataset("data/era5-svd/U.nc")  # the POD modes produced by `era5-svd`

era5 = xarray.open_dataet("data/era5-download/2020-01-01_2020-01-10_1h.nc") # ERA5 slice downloaded with `era5-download`
X = era5["Temperature"].values  # Numpy array
t = era5.time.values  # Numpy array

# U.attrs should state any pre-processing that has been done by `era5-svd` (e.g. U.attrs['delay_embedding'] = 2)

optdmd = BOPDMD(
    svd_rank=svd_rank,
    num_trials=0,
    use_proj=True,
    proj_basis = U,  # this is the projection basis calculated by `era5-svd`
    varpro_opts_dict={"verbose": True}
    )

delay = 2
delay_optdmd = hankel_preprocessing(optdmd, d=delay)

def check_pre_processing_matches():
    """Check that U.attrs, era5.attrs and inputs to `BOPDMD` and `fit` all match."""

t_delay = t [:-delay+1]
delay_optdmd.fit(X, t=t_delay)

@dsj976 Is it okay if I branch off from cli-svd?

@LydiaFrance yes ocf!


bugfix: data race in head.Appender.AppendHistogram and Commit

Fixes: #15139
Two Appenders race when creating a series with a native histogram as the memSeries will be common and the lastHistogram field is written without lock.
Fix by:
Move writing memSeries lastHistogramValue and lastFloatHistogramValue
after series creation under lock.
The resulting code isn't totally correct in the sense that we're setting
these values before Commit() , so they might be overwritten/rolled back
later.
Also Append() of stale sample checks the values without lock, so there's
still a potential race.
The correct solution would be to set these only in Commit() which we
actually do, but then Commit() would also need to process samples in
order and not floats first, then histograms, then float histograms - which
leads to not knowing what stale marker to write for histograms.
Might be easier to do after : #15112

Ok

Leaving it open for you to merge 👍

Created issue #15177 to track the refactor.


Added issue template

First draft of an issue template. New issues will be pre-populated with this content.
The goal is to (A) ensure users provide all relevant information, and (B) direct questions towards forum.stackstorm.com

LGTM - maybe we should also mention the new forum somewhere and point people to use that instead of Github issues when it makes sense?

We mention the forum on our website & blog. I guess the other places here would be in our README, and the project description? I'll add something to the README fo this PR

I've tweaked the project description, and updated README to remove IRC link, add Forum badge & link, and update a few docs URLs to use HTTPS

5 updates from master & multiple CI re-runs later, and it's done...


add support for comments.  note for group variables, anything after the '=' is considered part of the variable value, so a comment on the same line of a variable definition will be included in that variable definition.  you can, however, comment the entire line out [fixes #1]

fixes #1


Vulnerability roundup 76: cairo-1.16.0: 2 advisories

search, files

[ ] CVE-2019-6461 (nixos-19.09)
[ ] CVE-2019-6462 (nixos-19.09)

Scanned versions: nixos-19.09: e34ac949d1b. May contain false positives.

Both of these CVEs don't have upstream patches at this point. I couldn't find a patch in either RHEL or Debian either. Not sure how you want to track these (should probably not be whitelisted... the issues seem to be real) but at this point no-op for nixos.

I'll add an expiry to the whitelist entry... check again in 1 month


crash: Internal error: Maximum call stack size exceeded in 5.1.0-rc.2-19360

I confirm (by marking "x" in the [ ] below: [x]):

[ ] I have confirmed this is an issue on the newest beta build available here
[x] This issue doesn't reproduce on web browsers (such as in Chrome). If it does, issue reports go to the Mattermost Server repository.
[x] I have read contributing guidelines.

Summary
mattermost-desktop version 5.1.0-rc.2-19360 on Ubuntu 18.04 amd64 crashes with the following error:
Internal error: Maximum call stack size exceeded
  at BrowserWindow.handle (/opt/Mattermost/resources/app.asar/index.js:74560:21)
  at BrowserWindow.emit (node:events:402:35)
  at BrowserWindow.handle (/opt/Mattermost/resources/app.asar/index.js:74560:21)
  at BrowserWindow.emit (node:events:402:35)
  at BrowserWindow.handle (/opt/Mattermost/resources/app.asar/index.js:74560:21)
  at BrowserWindow.emit (node:events:402:35)
  at BrowserWindow.handle (/opt/Mattermost/resources/app.asar/index.js:74560:21)
  at BrowserWindow.emit (node:events:402:35)
  at BrowserWindow.handle (/opt/Mattermost/resources/app.asar/index.js:74560:21)
  at BrowserWindow.emit (node:events:402:35)

Environment

Operating System: Ubuntu 18.04
Mattermost Desktop App version: 5.1.0-rc.2-19360
Mattermost Server version: 6.5.0 Enterprise Edition

Steps to reproduce
Unknown.
Expected behavior
No crashes.
Observed behavior
Crash (segfault, SIGSEGV, signal 11, core dumped).
I have around 150 workstations running 5.1.0-rc.2, 5.1.0-rc.3, or 5.1.0-rc.4, mostly (137 of them) 5.1.0-rc.2, on either Ubuntu 18.04 or 20.04. All installed from the deb package. I've received three reports of the above crash from users running 5.1.0-rc.2 on Ubuntu 18.04. The core dump appears to be useless ("no symbol table info available"). mattermost-desktop 5.0.4-17219 does not have this crash.

@devinbinnie Is there enough information to investigate this?


Fixes path error and runs npm install before key creation

Should have opened an issue but it's a quick fix.
When generating the keys as per ReadMe instructions the path to the opr-core folder is incorrect.
A second issue also fixed in this PR (not best practice but it's a small change) is that the user needs to run npm install in the opr-core folder before the key generation will work.  This has been added to the .sh file, although it could equally have been added as in instruction in the documentation.

[X] Tests pass
[] Appropriate changes to README are included in PR

Thanks so much for this contribution, Chris! We've requested a very minor revision, but we really appreciate the fix!


Stage 7 now properly sends --directory to go starter

@sherubthakur can this be merged?

yes it can be


fix(datepicker): first keypress after focus should be treated as new input

first keypress after focus should be treated as new input
To be backported
COMUI-2616

I think this operates well now. There is another issue which is currently in the live docs aswell which I will raise a ticket for for example if you go to the year field and type a year less than 4 character for example 12/01/932 and then start typing in the month or day field it will cause a broken state.
Ticket: https://inindca.atlassian.net/browse/COMUI-2715


Hetting an error when installing the sdk from npm registry

When i try to follow the guid on how to use this sdk i get an error the first time i install the sdk using npm install  command.
nodejs version:  18.18
OS: MacOS M1
this is the error meesage:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/mmapi-nodejs-sdk - Not found
npm ERR! 404
npm ERR! 404  'mmapi-nodejs-sdk@*' is not in this registry.
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

try this this , it will work
npm install git+https://github.com/gsmainclusivetechlab/mmapi-nodejs-sdk


Error copying variable value 复制变量值出错

Description
What steps will reproduce the problem?

When I right-click in the variable area and select copy function, Spyder reports an error, but the software does not crash or quit. By the way, Spyder language I use is Chinese.
我在变量区右键并选择复制功能时，Spyder报错，但软件并未崩溃退出，我使用的软件语言是中文。
Traceback
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder\plugins\variableexplorer\widgets\collectionseditor.py", line 1038, in copy
    obj = self.delegate.get_value(idx)
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder\plugins\variableexplorer\widgets\collectionseditor.py", line 1373, in get_value
    return self.parent().get_value(name)
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder\plugins\variableexplorer\widgets\collectionseditor.py", line 1431, in get_value
    value = self.shellwidget.get_value(name)
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder\plugins\ipythonconsole\widgets\namespacebrowser.py", line 100, in get_value
    timeout=CALL_KERNEL_TIMEOUT).get_value(name)
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\comms\commbase.py", line 550, in __call__
    call_dict, call_data, self._comm_id)
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder\plugins\ipythonconsole\comms\kernelcomm.py", line 152, in _get_call_return_value
    call_dict, call_data, comm_id)
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\comms\commbase.py", line 432, in _get_call_return_value
    return self._sync_error(reply['value'])
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\comms\commbase.py", line 488, in _sync_error
    error_wrapper.raise_error()
  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\comms\commbase.py", line 90, in raise_error
    raise self.etype(self)
Exception in comms call get_value:

  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\comms\commbase.py", line 343, in _handle_remote_call
    buffer['call_kwargs'])

  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\comms\commbase.py", line 354, in _remote_callback
    *call_args, **call_kwargs)

  File "D:\Users\LiSunBowen\anaconda3\lib\site-packages\spyder_kernels\console\kernel.py", line 157, in get_value
    return ns[name]

KeyError: 'y'

Versions

Spyder version: 4.1.4
Python version: 3.7.7
Qt version: 5.15.0
PyQt5 version: 5.15.0
Operating System: Windows 10

Dependencies

# Mandatory:
atomicwrites >=1.2.0           :  1.4.0 (OK)
chardet >=2.0.0                :  3.0.4 (OK)
cloudpickle >=0.5.0            :  1.4.1 (OK)
diff_match_patch >=20181111    :  20181111 (OK)
intervaltree                   :  None (OK)
IPython >=4.0                  :  7.15.0 (OK)
jedi =0.17.1                   :  0.17.1 (OK)
nbconvert >=4.0                :  5.6.1 (OK)
numpydoc >=0.6.0               :  1.0.0 (OK)
paramiko >=2.4.0               :  2.7.1 (OK)
parso =0.7.0                   :  0.7.0 (OK)
pexpect >=4.4.0                :  4.8.0 (OK)
pickleshare >=0.4              :  0.7.5 (OK)
psutil >=5.3                   :  5.7.0 (OK)
pygments >=2.0                 :  2.6.1 (OK)
pylint >=1.0                   :  2.4.4 (OK)
pyls >=0.34.0;<1.0.0           :  0.34.1 (OK)
qdarkstyle >=2.8               :  2.8.1 (OK)
qtawesome >=0.5.7              :  0.7.2 (OK)
qtconsole >=4.6.0              :  4.7.5 (OK)
qtpy >=1.5.0                   :  1.9.0 (OK)
rtree >=0.8.3                  :  0.9.4 (OK)
sphinx >=0.6.6                 :  3.1.1 (OK)
spyder_kernels >=1.9.2;<1.10.0 :  1.9.3 (OK)
watchdog                       :  None (OK)
zmq >=17                       :  19.0.1 (OK)

# Optional:
cython >=0.21                  :  0.29.20 (OK)
matplotlib >=2.0.0             :  3.2.2 (OK)
numpy >=1.7                    :  1.18.5 (OK)
pandas >=0.13.1                :  1.0.5 (OK)
scipy >=0.17.0                 :  1.5.0 (OK)
sympy >=0.7.3                  :  1.6 (OK)

Hey @LeeSunBowen, thanks for reporting. Please provide us with a step by step description to reproduce your problem.
Otherwise, we won't be able to fix it, sorry.

I think it's a rare situation and I've only encountered it once so far.
When I have finished running a program, I'm in variable In the Explorer ribbon, right-click a variable, click Copy (like my screenshot), and Spyder prompts me to submit the error to GitHub. After I submit, spyder does not crash or exit, and there is no such error after I restart the software.
So I think it may also be due to the problem of my computer. Maybe there is not enough RAM at that time. This is such a rare situation. Therefore, it may not be a serious bug.
Of course, you can close this issue. Thank you for your support!

Thanks for your help @LeeSunBowen! Could you share with us the program that you're running in the console, which generates the variables displayed in the Variable Explorer?

Here is the code, you can run it directly as long as you have Numpy and matplotlib, and that variable is t or y. I've forgotten the exact variable, but it must be t or y.
"""
Python 3.7
Gray Model
"""

import numpy as np
from numpy.linalg import *
import math
import matplotlib.pyplot as plt
y = np.array([31.87,32.87,31.77,31.5,30.44,30.77,29.69,29.69,29.13,27.68,29.79,25.19])  # Original sequence y
pv = 3 # Three values will predict forward
n = len(y)
yy = np.ones((n,1))
yy[0] = y[0]
for i in range(1,n):
    yy[i] = yy[i-1] + y[i]  # Accumulate the original sequence y
B = np.ones((n-1,2))
for i in range(0,n-1):
    B[i][0] = - (yy[i] + yy[i+1])/2  # Generating the nearest neighbor mean for YY
    B[i][1] = 1
    # B is a data matrix
BT = B.T
yn = np.ones((n-1,1))
for j in range(0,n-1):
    yn[j] = y[j+1]
A = np.dot(np.dot(inv(np.dot(BT,B)),BT),yn) # least square method
a = A[0]  # Development coefficient
u = A[1]  # Grey parameter
t = u/a
i = np.array([i for i in range(n+pv)]) #pv=3
yys = []
for j in range(len(i)):
    yys = (y[0]-t)*np.array([math.exp(-a*j) for j in i])+t  # response sequence
    yys[0] = 1
yys[0] = y[0] # Follow up data
ys=[i for i in range(n+pv-1)]
for j in range(n+pv-2,0,-1):
    ys[j] = yys[j] - yys[j-1]  # Reduce yys one by one to generate predicted value
ys[0] = y[0]

# forecast done .statistics analysis is going to start
x = [i for i in range(1,n+1)]
xs = [i for i in range(2,n+pv)]
yn = ys[1:n+pv]
det = 0
sum1 = 0
sumpe = 0
for i in range(n):
    sumpe = sumpe+y[i]
pe = sumpe/n
for i in range(n):
    sum1= sum1+(y[i]-pe)**2
s1 = math.sqrt(sum1/n) # standard deviation
sumce = 0
h = ys[:len(y)]
eps = h - y
# Relative residual
delta = abs(eps/y)
Q = delta.mean()
# Variance ratio
C = eps.std()/y.std()
#P-test
S1 = y.std()
temp = np.sum((abs(eps-eps.mean()) < 0.6745 * S1) == True)
P = temp/n
# Posteriori error ratio
for i in range(1,n):
    sumce = sumce+(y[i]-yn[i])
ce = sumce/(n-1)
sum2 = 0;
for i in range(1,n):
    sum2 = sum2+(y[i]-yn[i]-ce)**2;
s2 = math.sqrt(sum2/(n-1))
c = s2/s1
print('\n>> Relative residual Q = {:.5f}'.format(Q))
print('>> Variance ratio C = {:.5f}'.format(C))
print('>> P-test：{:.3f}'.format(P))
print('>> Posteriori error ratio = {:.5f}'.format(c))
if c < 0.35:
    print('\n===prediction accuracy good!===')
elif c < 0.5:
    print('===prediction accuracy qualified===')
elif c < 0.65:
    print('===prediction accuracy limited!===')
else:
    print('===prediction accuracy unqualified!===')
print('\nThe next fitting value is %.3f'%ys[n])
print('And the next fitting value is %.3f'%ys[n+1])
print('All fitting values are：\n',ys[n:])
plt.plot(x,y,linestyle='',color = 'red',marker='D')
plt.plot(xs,yn,linestyle='--',color = 'green')
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.title('Prediction curve')
plt.grid()
plt.show()

Thanks @LeeSunBowen! I'll try to reproduce your error this weekend.


Explain allowCrossNamespaceRefs in chart README and docs/howto/

Explains that cross-namespace refs are not allowed by default, and how to allow them.
I wanted to mention when cross-namespace refs started being disallowed by default, so I guessed at when it would appear in a release -- version >0.16, since it would indicate a minor version bump at least.
Fixes #956.

I wanted to mention when cross-namespace refs started being disallowed by default, so I guessed at when it would appear in a release -- version >0.16, since it would indicate a minor version bump at least.

I think I have this wrong -- the breaking change is already merged, and the next minor release is going to be 0.16.0 (since we're on RCs now). So I should make the cited version =0.16.0.


Version 7.1.5 is not compatible with IE 11

I don't know about 7.1.4 since I upgraded from 7.1.3. There is at least one arrow function in the distributed code.
I understand that IE 11 is fast dying, but I have to support it for a bit longer. Also I feel it is inappropriate to make such a change in a patch release.
This isn't urgent for me. Version 7.1.3 is working well. Mostly I entered this in case you didn't know.

Hmm wasn’t intentional, this should be fixed for v7 and we’ll drop IE11 support for v8

I don't see this in 7.x latest, closing


No longer able to download

Tried to download a couple series but was given the same error and traceback for each.

Fixed in https://github.com/Zehina/Webtoon-Downloader/commit/02f2acc9d28313ef4aa5d74bd6aded7d8114481b
Pull latest changes or download release: https://github.com/Zehina/Webtoon-Downloader/releases/tag/0.7.2


Correction for raw affiliation CEE-M, Montpellier SupAgro, INRA, CNRS, Univ. Montpellier, France

Correction needed for raw affiliation CEE-M, Montpellier SupAgro, INRA, CNRS, Univ. Montpellier, France
raw_affiliation_name: CEE-M, Montpellier SupAgro, INRA, CNRS, Univ. Montpellier, France
new_rors: 051escj72;02feahw73;03rnk6m14;00rwjvc96
previous_rors: 051escj72;02feahw73;03rnk6m14
works_examples: W3098845524
contact: 82b492959e8f6857e03415793039c1a2:5b71f8122e86aa93506b7ec9f5db5423d912 @ inrae.fr

This issue was accepted and ingested by the OpenAlex team on 2024-12-19. The new affiliations should be visible within the next 7 days.


Fix security vulnerabilities

:tada: This PR is included in version 2.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket: