new bug: 500 code returned in case request with utf-8 symbols sent (see link below)

Sending GET request http://httpbin.org/response-headers?Content-Type=text/plain; charset=UTF-8&Content-Disposition=attachment; filename%3D"foo-ä.html"
was always working. It was replying with 200 OK and creating appropriate response, but now this request fails with error code 500. Note that the following request still works:
http://httpbin.org/response-headers?Content-Type=text/plain; charset=UTF-8&Content-Disposition=attachment; filename%3D"dfsf"

I've just checked with python3.7 locally and the first link works nice. I'm curious if @kennethreitz (or whoever has an access to the httpbin.org server) could provide an exact error from the logs?

This appears to be the error:
[2018-11-07 02:43:25 +0000] [8] [ERROR] Error handling request /response-headers?Content-Type=text/plain;%20charset=UTF-8&Content-Disposition=attachment;%20filename%3d%22foo-%C3%A4.html%22
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/workers/base_async.py", line 56, in handle
    self.handle_request(listener_name, req, client, addr)
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/workers/ggevent.py", line 160, in handle_request
    addr)
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/workers/base_async.py", line 115, in handle_request
    resp.write(item)
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/http/wsgi.py", line 333, in write
    self.send_headers()
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/http/wsgi.py", line 329, in send_headers
    util.write(self.sock, util.to_bytestring(header_str, "ascii"))
  File "/usr/local/lib/python3.6/dist-packages/gunicorn/util.py", line 507, in to_bytestring
    return value.encode(encoding)
UnicodeEncodeError: 'ascii' codec can't encode character '\xe4' in position 244: ordinal not in range(128)

https://github.com/benoitc/gunicorn/issues/1214

This looks like a Gunicorn bug/limitation, I may write one up, but there are a lot of RFC considerations here.

This is tricky for a few reasons.
By using even latin-1 characters in that way, you are travelling close to the spec-bounds, which is highlighted by the problem under Gunicorn only, and as discussed in issues such as https://github.com/benoitc/gunicorn/issues/1778 .  US-ASCII only is safer, or using the header-encoding extensions available to represent other character-set encodings, but as you see, support will be sketchy.
This is tricky also because we are trying to pass specific characters via URL parameters, and unless we go to unusual lengths, Flask will decode those for us.  The problem then is that certain characters (only) need to be re-encoded, and it's not easy to know which ones, or at least there isn't any obviously existing library function to call to encode those.  I'm speaking of the encoding required to implement RFC 6266.
If you want to use that, you can by carefully encoding the percents % you send in the request, so that they survive request decoding, and you are left with the encoded characters (ASCII representation of your unicode characters as UTF-8), which can then be send as headers.  This is a kind of double-encoding.
So if you are prepared to shift to the RFC and filename* representation (again, client support will vary, but modern browsers understand), you can send e.g.:
curl -v "http://localhost/response-headers?Content-Type=text/plain;%20charset=UTF-8&Content-Disposition=attachment;filename*=UTF-8''foo-%25C3%25A4.html"

... noting the encoded %s as %25.  The resulting header will be:
Content-Disposition: attachment;filename*=UTF-8''foo-%C3%A4.html
... which is correct, and if run from a browser you will see the file download with name foo-ä.html.


TypeScript issue: moduleResolution:NodeNext doesn’t work with this library

The problem
tsconfig.json:
"module": "NodeNext",
"moduleResolution": "NodeNext",

TypeScript code:
import { parse } from '@adobe/css-tools';

Result – error from tsc:

Could not find a declaration file for module '@adobe/css-tools'. <EMAIL_ADDRESS>implicitly has an 'any' type.

There are types at<EMAIL_ADDRESS>but this result could not be resolved when respecting package.json "exports". The '@adobe/css-tools' library may need to update its package.json or typings.

Solutions
Quickest fix – change package.json:
"exports": {
  "import": "./dist/index.mjs",
  "types": "./dist/types.d.ts",
  "require": "./dist/index.cjs"
},

In the long run, you don’t need "main", "module" and "types" (anywhere!) anymore, as these are superseded by "exports" and modern TypeScript .d.ts resolution. You only have to rename:
mv types.d.ts index.d.mts

Possibly useful

TypeScript documentation on package "exports": https://www.typescriptlang.org/docs/handbook/modules/reference.html#packagejson-exports
This tool was recommended to me as a linter for packages with TypeScript types (haven’t used it yet though): https://github.com/arethetypeswrong/arethetypeswrong.github.io
I’m not sure how well .d.mts works with older TypeScript versions. There, you may have some success with the package.json property "typesVersions" (but in general it’s better if you don’t use it and only rely on "exports"): https://2ality.com/2021/06/typescript-esm-nodejs.html

Fixed through https://github.com/adobe/css-tools/pull/274
I will keep this issue open for the long term solution.
Thanks a lot for that detailed issue. This is very use full and well detailed. I truly appreciated.


fixes service panel toggling

fixes #2913 , #1658

https://github.com/OpenRefine/OpenRefine/blob/master/main/webapp/modules/core/scripts/reconciliation/recon-dialog.js#L137
The populateDialog() method gets called more than once, so the click event on this was getting registered multiple times.

@wetneb Please review :smile:

@wetneb Please review 😄

If you want a review, just ask in the upper right:

You can see it after:

Regards,
Antoine


CB-11107 - Supporting paywall for existing HDP clusters - add default…

… repos behind paywall

repos in application.yml are moved behind paywall.
Debian9 repos that are not present anymore are deleted.
added HDF-3.5

retest this please


Color picker jumps to value after releasing

I can't seem to figure out why, but everytime I click and drag for a new color, it jumps to #22194D on release. If I edit any inputs, it just goes right back to the same value.
If I change the default color, it always jumps to the color I defined as the default.
Simplified my file down to only the implementation of the color picker and it's still happening.
It does not happen if I am not updating state. I have tried other pickers too, not just the photoshop one.
Any ideas? Much appreciated
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import { PhotoshopPicker } from 'react-color';

class App extends Component {
  state = {
    color: '#fff'
  }
  handleChange = (color) => {
    this.setState({ color: color.hex });
  };
  render() {
    return(
      <PhotoshopPicker onChangeComplete={this.handleChange}/>
    )
  }
}

ReactDOM.render(<App />, document.querySelector('.container'));

Thanks for boiling your issue down into a small example!
To keep the picker in sync you need to pass back down the color value to the picker:
class App extends Component {
  state = {
    color: '#fff'
  }
  handleChange = (color) => {
    this.setState({ color: color.hex });
  };
  render() {
    return(
      <PhotoshopPicker
        color={ this.state.color } // Add This
        onChangeComplete={this.handleChange}
      />
    )
  }
}


Category Navigation | Previous-Next

[ ] Mobile version
[ ] Desktop version

Next & Previous
See sample at

https://www.crn.com/news/channel-news/
https://www.crn.com/news/components-peripherals/

@varunmitra  for variation 1, we have this style in multiple pages. @mfrisbey also created a issue to track this so i think we can combine it with #83

https://www.crn.com/search?query=apple&type=article&type=article&type=article%2Fslideshow&type=article%2Fchannelcast&type=article%2Fstaff&limit=15
Category pages : https://www.crn.com/news/components-peripherals/

Fixed via #83


added addon-(cipher,hash) algorithm

    Supports addition of optional CIPHER and HASH algorithms in NOCHECK mode.
    As a result, 3DES, CHACHA20-POLY1305, etc. can also be used with MB API.

I like the idea and the only thing that I miss here is the test code for this feature. Please add some test code for it.
Another comment is that it could be more flexible to define custom cipher / hash per job and not per MB_MGR. I would probably prefer the per job option. Are there any cons of having these defined per job?

Thanks for prompt patch update! Could you have a look into following changes, please?

move addon extension to from mb_mgr into job structure (more flexible) - addon should not have visibility into mb_mgr state really
simplify the test code so that it doesn't have to link against openssl
Thanks,
Tomasz


Pswish Uploading a working python script final project v0.8

Data structure: dictionary of dictionaries (Map of hashmaps)
Has a few operation modes: Single query, get all keys(data entries), and get all data.
Outputs to the command line.

From my search. I guess I'll except the google response.
"Prettyprint is the process of converting and presenting source code or other objects in a legible and attractive way. A prettyprinter takes blocks of code and prints them in an aesthetically pleasing fashion, presenting the characters with line breaks and indentations to make the code comprehensible."

Here is what the class itself says:
class PrettyPrinter:
    def __init__(self, indent=1, width=80, depth=None, stream=None, *,
                 compact=False, sort_dicts=True):
        """Handle pretty printing operations onto a stream using a set of
        configured parameters.

        indent
            Number of spaces to indent for each level of nesting.

        width
            Attempted maximum number of columns in the output.

        depth
            The maximum depth to print out nested structures.

        stream
            The desired output stream.  If omitted (or false), the standard
            output stream available at construction will be used.

        compact
            If true, several items will be combined in one line.

        sort_dicts
            If true, dict keys are sorted.

        """


That is a bad idea, and you can't. Use one certificate per client.


Use address instead of addresses to match the spec

Coverage remained the same at 91.778% when pulling cac35678fb13c1afa2753f013b729257f1b2ad70 on tyll:address into f0dd323dbef8cbba991c11dd414ade5d0fd4c31d on nmstate:master.

Yes, we should use this one.
Also, we need to fix the top level 'interfaces', as it should look like this:
interfaces:
  interface:
    - name: eth0
      type: ethernet
    - name: eth1
      type: ethernet

And if we want to be consistent, 'slaves' should be 'slave' for bonds.

Do we still want to do this or keep it as it is?

Yes, I want to be consistent with https://tools.ietf.org/html/rfc8344.
Could you please rebase? The schema needs to be updated.

I  rebased it, the schema already uses address afaics:
https://github.com/nmstate/nmstate/blob/master/libnmstate/schemas/operational-state.yaml#L250


no nodes have reconciled ETCDSnapshotFile resources, requeuing error on clusters with no etcd snapshots

When running with embedded etcd, and no snapshots have yet been taken on the cluster, the following message will be repeated in the logs:
ERRO[0210] error syncing '_reconcile_': handler managed-etcd-snapshots-controller: no nodes have reconciled ETCDSnapshotFile resources, requeuing
The message will go away once a snapshot has been taken on any node.
The error comes from the snapshot configmap controller sync loop - we're intentionally re-enqueing the reconcile by returning an error, which creates this log message. We should probably not return an error, and instead manually re-enqueue the reconcile.

Hi @brandond , I was not able to replicate this on standalone k3s version with single and HA cluster setup. Can you please share the steps on how to replicate this issue?

@mdrahman-suse It's reproducible using this commit b8dc95539bfc443f6a79c3140e18ef8d6e9aae1e. It was not released.

@mdrahman-suse It's reproducible using this commit b8dc955 on a split server setup. It was not released. Create cluster with 1 etcd-only 1 cp-only Check logs on cp-only node

I was thinking about trying on spit-role setup.. thanks!

Validated with RC version 1.28.3-rc1+k3s1, Replicated on master commit b8dc9553
Environment Details

Infrastructure

[ ] Cloud
[ ] Hosted

Node(s) CPU architecture, OS, and Version:

Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-1031-aws x86_64)

Cluster Configuration:

Split servers: 1 etcd only, 1 cp only, 1 agent

Config.yaml:

# server1                                    |# server2                                               | # agent1                             |
---------------------------------------------|--------------------------------------------------------|--------------------------------------|
write-kubeconfig-mode: 644                   | write-kubeconfig-mode: 644                             | server: "https://<etcdonly-ip>:6443" |
cluster-init: true                           | token: <TOKEN>                                         | token: <TOKEN>                       |
token: <TOKEN>                               | node-external-ip: "<cponly-ip>"                        | node-external-ip: "<agent-ip>"       |
node-external-ip: "<etcdonly-ip>"            | node-name: cponly                                      | node-name: agent                     |
node-name: etcdonly                          | server: "https://<etcdonly-ip>6443"                    |
disable-apiserver: true                      | disable-etcd: true                                     |
disable-controller-manager: true             | node-taint:                                            |
disable-scheduler: true                      |   - node-role.kubernetes.io/control-plane:NoSchedule   |
node-taint:                                  |
  - node-role.kubernetes.io/etcd:NoExecute   |

Testing Steps

Copy config.yaml

$ sudo mkdir -p /etc/rancher/k3s && sudo cp config.yaml /etc/rancher/k3s

Install k3s
Check cp-only server does not have the error

level=error msg="error syncing '_reconcile_': handler managed-etcd-snapshots-controller: no nodes have reconciled ETCDSnapshotFile resources, requeuing"

Ensure the cluster is up and running

Replication Results:

k3s version used for replication:

k3s version v1.28.2+k3s-b8dc9553 (b8dc9553)
go version go1.20.8

Observed the error in cp-only server log

$ sudo journalctl -u k3s | grep 'ETCDSnapshotFile'
Oct 23 21:02:28 ip-xxx-xx-xx-11 k3s[1725]: time="2023-10-23T21:02:28Z" level=info msg="Starting k3s.cattle.io/v1, Kind=ETCDSnapshotFile controller"
Oct 23 21:02:29 ip-xxx-xx-xx-11 k3s[1725]: time="2023-10-23T21:02:29Z" level=error msg="error syncing '_reconcile_': handler managed-etcd-snapshots-controller: no nodes have reconciled ETCDSnapshotFile resources, requeuing"
Oct 23 21:02:30 ip-xxx-xx-xx-11 k3s[1725]: time="2023-10-23T21:02:30Z" level=error msg="error syncing '_reconcile_': handler managed-etcd-snapshots-controller: no nodes have reconciled ETCDSnapshotFile resources, requeuing"
...

Cluster does not come up properly

Validation Results:

k3s version used for validation:

k3s version v1.28.3-rc1+k3s1 (6aef26e9)
go version go1.20.10

Observed that the error msg is NOT visible

Oct 23 21:21:15 ip-xxx-xx-xx-11 k3s[3648]: time="2023-10-23T21:21:15Z" level=info msg="Starting k3s.cattle.io/v1, Kind=ETCDSnapshotFile controller"
ubuntu@ip-xxx-xx-xx-11:~$

Cluster is up and running

$ kubectl get nodes,pods -A -o wide
NAME            STATUS   ROLES                  AGE   VERSION            INTERNAL-IP     EXTERNAL-IP    OS-IMAGE             KERNEL-VERSION    CONTAINER-RUNTIME
node/agent      Ready    <none>                 14m   v1.28.3-rc1+k3s1   xxx.xx.xx.224   x.xx.xxx.147   Ubuntu 22.04.2 LTS   5.15.0-1031-aws   containerd://1.7.7-k3s1
node/cponly     Ready    control-plane,master   20m   v1.28.3-rc1+k3s1   xxx.xx.xx.11    x.xxx.xx.128   Ubuntu 22.04.2 LTS   5.15.0-1031-aws   containerd://1.7.7-k3s1
node/etcdonly   Ready    etcd                   20m   v1.28.3-rc1+k3s1   xxx.xx.xx.146   x.xx.xxx.77    Ubuntu 22.04.2 LTS   5.15.0-1031-aws   containerd://1.7.7-k3s1

NAMESPACE     NAME                                          READY   STATUS      RESTARTS   AGE   IP          NODE     NOMINATED NODE   READINESS GATES
kube-system   pod/coredns-6799fbcd5-q9shw                   1/1     Running     0          20m   xx.xx.0.3   cponly   <none>           <none>
kube-system   pod/helm-install-traefik-crd-bt9dg            0/1     Completed   0          20m   xx.xx.2.3   agent    <none>           <none>
kube-system   pod/helm-install-traefik-fdqvw                0/1     Completed   1          20m   xx.xx.2.2   agent    <none>           <none>
kube-system   pod/local-path-provisioner-84db5d44d9-rhhrf   1/1     Running     0          20m   xx.xx.0.4   cponly   <none>           <none>
kube-system   pod/metrics-server-67c658944b-p45bp           1/1     Running     0          20m   xx.xx.0.2   cponly   <none>           <none>
kube-system   pod/svclb-traefik-bc812291-j8zfq              2/2     Running     0          13m   xx.xx.2.4   agent    <none>           <none>
kube-system   pod/svclb-traefik-bc812291-w47qq              2/2     Running     0          13m   xx.xx.0.5   cponly   <none>           <none>
kube-system   pod/traefik-55f65f58b-9546f                   1/1     Running     0          13m   xx.xx.2.5   agent    <none>           <none>

NOTE: The issue was not observed on all roles cluster setup


Sort alphabetically first before doing semver sorting

This fixes sorting for tags like

0.1.0-alpha+001
0.1.0-alpha+002
0.1.0-alpha+003

?   	github.com/adgear/git-tags-resource	[no test files]
=== RUN   TestCheckPublic_latest
--- PASS: TestCheckPublic_latest (0.00s)
=== RUN   TestCheckPublic_invalidSemver
--- PASS: TestCheckPublic_invalidSemver (0.00s)
=== RUN   TestCheckPublic_all
--- PASS: TestCheckPublic_all (0.00s)
=== RUN   TestCheckPublic_NoRepoName
--- PASS: TestCheckPublic_NoRepoName (0.00s)
=== RUN   TestCheckPublic_GitNoKey
--- PASS: TestCheckPublic_GitNoKey (0.00s)
=== RUN   TestCheckPublic_NoTags
--- PASS: TestCheckPublic_NoTags (0.00s)
=== RUN   TestCheckPublic_TagsError
--- PASS: TestCheckPublic_TagsError (0.00s)
=== RUN   TestCheckPublic_ExtractError
--- PASS: TestCheckPublic_ExtractError (0.00s)
=== RUN   TestCheckPublic_DefaultValues
--- PASS: TestCheckPublic_DefaultValues (0.00s)
=== RUN   TestInPublic_ATag
--- PASS: TestInPublic_ATag (0.00s)
=== RUN   TestInPublic_LWTag
--- PASS: TestInPublic_LWTag (0.00s)
=== RUN   TestInPublic_NoDestination
--- PASS: TestInPublic_NoDestination (0.00s)
=== RUN   TestInPublic_CloneRefError
--- PASS: TestInPublic_CloneRefError (0.00s)
=== RUN   TestInPublic_ATagError
--- PASS: TestInPublic_ATagError (0.00s)
=== RUN   TestInPublic_LWTagError
--- PASS: TestInPublic_LWTagError (0.00s)
PASS
coverage: 92.2% of statements
ok  	github.com/adgear/git-tags-resource/actions	0.005s	coverage: 92.2% of statements
?   	github.com/adgear/git-tags-resource/services	[no test files]
?   	github.com/adgear/git-tags-resource/utils	[no test files]

?   	github.com/adgear/git-tags-resource	[no test files]
=== RUN   TestCheckPublic_latest
--- PASS: TestCheckPublic_latest (0.00s)
=== RUN   TestCheckPublic_invalidSemver
--- PASS: TestCheckPublic_invalidSemver (0.00s)
=== RUN   TestCheckPublic_all
--- PASS: TestCheckPublic_all (0.00s)
=== RUN   TestCheckPublic_NoRepoName
--- PASS: TestCheckPublic_NoRepoName (0.00s)
=== RUN   TestCheckPublic_GitNoKey
--- PASS: TestCheckPublic_GitNoKey (0.00s)
=== RUN   TestCheckPublic_NoTags
--- PASS: TestCheckPublic_NoTags (0.00s)
=== RUN   TestCheckPublic_TagsError
--- PASS: TestCheckPublic_TagsError (0.00s)
=== RUN   TestCheckPublic_ExtractError
--- PASS: TestCheckPublic_ExtractError (0.00s)
=== RUN   TestCheckPublic_DefaultValues
--- PASS: TestCheckPublic_DefaultValues (0.00s)
=== RUN   TestInPublic_ATag
--- PASS: TestInPublic_ATag (0.00s)
=== RUN   TestInPublic_LWTag
--- PASS: TestInPublic_LWTag (0.00s)
=== RUN   TestInPublic_NoDestination
--- PASS: TestInPublic_NoDestination (0.00s)
=== RUN   TestInPublic_CloneRefError
--- PASS: TestInPublic_CloneRefError (0.00s)
=== RUN   TestInPublic_ATagError
--- PASS: TestInPublic_ATagError (0.00s)
=== RUN   TestInPublic_LWTagError
--- PASS: TestInPublic_LWTagError (0.00s)
PASS
coverage: 92.2% of statements
ok  	github.com/adgear/git-tags-resource/actions	0.004s	coverage: 92.2% of statements
?   	github.com/adgear/git-tags-resource/services	[no test files]
?   	github.com/adgear/git-tags-resource/utils	[no test files]


Measure clash/redundancy between EVA/ClinVar and Uniprot

The first round shows >8000 (out of 21k) UniProt variants only appear in UniProt evidence. They seem to be in ClinVar but filtered out from EVA evidence due to clinical significance threshold

Re-assigning to 20.11 as UniProt evidence assessment is ongoing as noted in our release intentions document

The exploration of this overlap led to the removal of Uniprot as datasource in 20.09.
Uniprot data source was only capturing Clinvar variants (at different pathogenicity filters). Since EVA provides this same information, to extract ClinVar evidence, we decided to stick with the latter.

Now that we have a new EVA evidence file that includes ClinVar entries of all clinical relevance variants we can do the comparison again and there are still 5k variants that only appear in UniProt:

UniProt (submitted for 20.09) vs EVA (ClinVar 2019-09, all clinical significance levels): 5302
UniProt (submitted for 20.09) vs EVA (ClinVar 2020-09, all clinical significance levels): 4803

In some cases, those variants are in ClinVar but they don't seem to have been submitted by OMIM and the condition may be missing (e.g. rs1000990130-RCV000731325.1). In some other cases the variant is not in ClinVar (rs1004881058), probably it was the curator who identified the varaint after checking a paper mentioned in OMIM.

We know Uniprot submits some evidence to ClinVar but not all. We want to evaluate the true value of the non-submitted evidence, to decide if we want to rescue the Uniprot datasource
Using the latest uniprot and clinvar submissions, we want to know how many Uniprot evidence overlap/don't overlap with Clinvar:

Inner join between uniprot and clinvar by (targetId, diseaseId, rsid, publication)
Inner join between uniprot and clinvar by (targetId,  rsid, publication)
Inner join between uniprot and clinvar by (targetId, rsid)
Inner join between uniprot and clinvar by (targetId, diseaseId, rsid, publication)
-???

We know Uniprot submits some evidence to ClinVar but not all. We want to evaluate the true value of the non-submitted evidence, to decide if we want to rescue the Uniprot datasource
Using the latest uniprot and clinvar submissions, we want to know how many Uniprot evidence overlap/don't overlap with Clinvar:

Inner join between uniprot and clinvar by (targetId, diseaseId, rsid, publication)
Inner join between uniprot and clinvar by (targetId,  rsid, publication)
Inner join between uniprot and clinvar by (targetId, rsid)
Inner join between uniprot and clinvar by (targetId, diseaseId, rsid, publication)
-???

Just a simple check on variant RSIDs is enough to observe there are 20,994 variants in the uniprot datasource, for which we only have 16,899 (80%) captured in any resource in the current evidence.
Some examples of the missing evidence are listed next:
up = (evdOld
      .filter(col("sourceID") == "uniprot")
      .select(col("target.id").alias("targetId"),
              col("disease.id").alias("diseaseId"),
              col("disease.name").alias("diseaseFromSource"),
              col("unique_association_fields.dbSNPs").alias("variantRsId"),
              col("evidence.variant2disease.unique_experiment_reference").alias("literature"))
      .withColumn('literature', regexp_replace('literature', 'http://europepmc.org/abstract/MED/', ''))
      .distinct()
      .persist()
      )

up.join(evd.select("variantRsId").distinct(), on = ["variantRsId"], how = "left_anti").show(truncate = False)
+------------+---------------+---------------+---------------------------------------------------------------------------------------------------------------------------+----------+
|variantRsId |targetId       |diseaseId      |diseaseFromSource                                                                                |literature|
+------------+---------------+---------------+---------------------------------------------------------------------------------------------------------------------------+----------+
|rs1035791118|ENSG00000115705|Orphanet_95716 |Thyroid dyshormonogenesis 2A                                                                                |12938097  |
|rs113173389 |ENSG00000102393|Orphanet_324   |Fabry disease                                                                                |9100224   |
|rs1187685038|ENSG00000124615|Orphanet_308386|Molybdenum cofactor deficiency, complementation group A                                                                    |9921896   |
|rs1187685038|ENSG00000124615|Orphanet_833   |Molybdenum cofactor deficiency, complementation group A                                                                    |9921896   |
|rs1187685038|ENSG00000124615|Orphanet_99732 |Molybdenum cofactor deficiency, complementation group A                                                                    |9921896   |
|rs1349176732|ENSG00000198626|Orphanet_3286  |Ventricular tachycardia, catecholaminergic polymorphic, 1, with or without atrial dysfunction and/or dilated cardiomyopathy|25372681  |
|rs1369490553|ENSG00000124479|Orphanet_649   |Norrie disease                                                                                |8589700   |
|rs144965179 |ENSG00000118271|EFO_0004129    |Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs144965179 |ENSG00000118271|Orphanet_85447 |Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs144965179 |ENSG00000118271|Orphanet_85451 |Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs144965179 |ENSG00000118271|Orphanet_271861|Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs1474900361|ENSG00000181004|Orphanet_110   |Bardet-Biedl syndrome 12                                                                                |21344540  |
|rs1474900361|ENSG00000181004|EFO_0009023    |Bardet-Biedl syndrome 12                                                                                |21344540  |
|rs193922864 |ENSG00000196218|Orphanet_99741 |Malignant hyperthermia 1                                                                                |16163667  |
|rs193922864 |ENSG00000196218|Orphanet_423   |Malignant hyperthermia 1                                                                                |16163667  |
|rs193922864 |ENSG00000196218|EFO_0009071    |Malignant hyperthermia 1                                                                                |16163667  |
|rs200163795 |ENSG00000136931|EFO_0004266    |Premature ovarian failure 7                                                                                |19246354  |
|rs200163795 |ENSG00000136931|Orphanet_399805|Spermatogenic failure 8                                                                                |19246354  |
|rs267606727 |ENSG00000169105|Orphanet_2953  |Ehlers-Danlos syndrome, musculocontractural type 1                                                                         |20004762  |
|rs281865247 |ENSG00000167995|Orphanet_1243  |Macular dystrophy, vitelliform, 2                                                                                |14517959  |
+------------+---------------+---------------+---------------------------------------------------------------------------------------------------------------------------+----------+
only showing top 20 rows

However, when looking at some of them in the platform they are well-captured relationships.
If we look at associations, Uniprot contains 4,877 target-disease pairs:

260 are new associations (~5%) not represented in any datasource (incl literature)
1,547 target-disease pairs (~30%) not present in ClinVar

If we attend to some examples of the 1,547 associations present in uniprot but absent in ClinVar (e.g. MONDO_0008199 - ENSG00000138246):
+---------------+-------------+-----------------+-----------+----------+
|       targetId|    diseaseId|diseaseFromSource|variantRsId|literature|
+---------------+-------------+-----------------+-----------+----------+
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs145242123|  25393719|
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs146930051|  25393719|
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs387907571|  24218364|
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs766013346|  25393719|
+---------------+-------------+-----------------+-----------+----------+

They can also be found in Clinvar but mapped to a slightly different term:
+---------------+-----------+-----------------------------+-----------+------------------------------+
|targetId       |diseaseId  |diseaseFromSource            |variantRsId|literature                    |
+---------------+-----------+-----------------------------+-----------+------------------------------+
|ENSG00000138246|EFO_0002508|parkinson disease, late-onset|rs387907571|[20301402, 20482602, 24218364]|
+---------------+-----------+-----------------------------+-----------+------------------------------+

Just a simple check on variant RSIDs is enough to observe there are 20,994 variants in the uniprot datasource, for which we only have 16,899 (80%) captured in any resource in the current evidence.
Some examples of the missing evidence are listed next:
up = (evdOld
      .filter(col("sourceID") == "uniprot")
      .select(col("target.id").alias("targetId"),
              col("disease.id").alias("diseaseId"),
              col("disease.name").alias("diseaseFromSource"),
              col("unique_association_fields.dbSNPs").alias("variantRsId"),
              col("evidence.variant2disease.unique_experiment_reference").alias("literature"))
      .withColumn('literature', regexp_replace('literature', 'http://europepmc.org/abstract/MED/', ''))
      .distinct()
      .persist()
      )

up.join(evd.select("variantRsId").distinct(), on = ["variantRsId"], how = "left_anti").show(truncate = False)
+------------+---------------+---------------+---------------------------------------------------------------------------------------------------------------------------+----------+
|variantRsId |targetId       |diseaseId      |diseaseFromSource                                                                                |literature|
+------------+---------------+---------------+---------------------------------------------------------------------------------------------------------------------------+----------+
|rs1035791118|ENSG00000115705|Orphanet_95716 |Thyroid dyshormonogenesis 2A                                                                                |12938097  |
|rs113173389 |ENSG00000102393|Orphanet_324   |Fabry disease                                                                                |9100224   |
|rs1187685038|ENSG00000124615|Orphanet_308386|Molybdenum cofactor deficiency, complementation group A                                                                    |9921896   |
|rs1187685038|ENSG00000124615|Orphanet_833   |Molybdenum cofactor deficiency, complementation group A                                                                    |9921896   |
|rs1187685038|ENSG00000124615|Orphanet_99732 |Molybdenum cofactor deficiency, complementation group A                                                                    |9921896   |
|rs1349176732|ENSG00000198626|Orphanet_3286  |Ventricular tachycardia, catecholaminergic polymorphic, 1, with or without atrial dysfunction and/or dilated cardiomyopathy|25372681  |
|rs1369490553|ENSG00000124479|Orphanet_649   |Norrie disease                                                                                |8589700   |
|rs144965179 |ENSG00000118271|EFO_0004129    |Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs144965179 |ENSG00000118271|Orphanet_85447 |Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs144965179 |ENSG00000118271|Orphanet_85451 |Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs144965179 |ENSG00000118271|Orphanet_271861|Amyloidosis, transthyretin-related                                                                                |17577687  |
|rs1474900361|ENSG00000181004|Orphanet_110   |Bardet-Biedl syndrome 12                                                                                |21344540  |
|rs1474900361|ENSG00000181004|EFO_0009023    |Bardet-Biedl syndrome 12                                                                                |21344540  |
|rs193922864 |ENSG00000196218|Orphanet_99741 |Malignant hyperthermia 1                                                                                |16163667  |
|rs193922864 |ENSG00000196218|Orphanet_423   |Malignant hyperthermia 1                                                                                |16163667  |
|rs193922864 |ENSG00000196218|EFO_0009071    |Malignant hyperthermia 1                                                                                |16163667  |
|rs200163795 |ENSG00000136931|EFO_0004266    |Premature ovarian failure 7                                                                                |19246354  |
|rs200163795 |ENSG00000136931|Orphanet_399805|Spermatogenic failure 8                                                                                |19246354  |
|rs267606727 |ENSG00000169105|Orphanet_2953  |Ehlers-Danlos syndrome, musculocontractural type 1                                                                         |20004762  |
|rs281865247 |ENSG00000167995|Orphanet_1243  |Macular dystrophy, vitelliform, 2                                                                                |14517959  |
+------------+---------------+---------------+---------------------------------------------------------------------------------------------------------------------------+----------+
only showing top 20 rows

However, when looking at some of them in the platform they are well-captured relationships.
If we look at associations, Uniprot contains 4,877 target-disease pairs:

260 are new associations (~5%) not represented in any datasource (incl literature)
1,547 target-disease pairs (~30%) not present in ClinVar

If we attend to some examples of the 1,547 associations present in uniprot but absent in ClinVar (e.g. MONDO_0008199 - ENSG00000138246):
+---------------+-------------+-----------------+-----------+----------+
|       targetId|    diseaseId|diseaseFromSource|variantRsId|literature|
+---------------+-------------+-----------------+-----------+----------+
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs145242123|  25393719|
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs146930051|  25393719|
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs387907571|  24218364|
|ENSG00000138246|MONDO_0008199|Parkinson disease|rs766013346|  25393719|
+---------------+-------------+-----------------+-----------+----------+

They can also be found in Clinvar but mapped to a slightly different term:
+---------------+-----------+-----------------------------+-----------+------------------------------+
|targetId       |diseaseId  |diseaseFromSource            |variantRsId|literature                    |
+---------------+-----------+-----------------------------+-----------+------------------------------+
|ENSG00000138246|EFO_0002508|parkinson disease, late-onset|rs387907571|[20301402, 20482602, 24218364]|
+---------------+-----------+-----------------------------+-----------+------------------------------+

After discussion with @ireneisdoomed and @DSuveges, we agreed the value of adding ~20% not captured variants exceeds the price of adding duplicates. For this reason, we will be rescuing the uniprot datasource aiming at 20.04 (new evidence) for the first release affected.

After discussion with @ireneisdoomed and @DSuveges, we agreed the value of adding ~20% not captured variants exceeds the price of adding duplicates. For this reason, we will be rescuing the uniprot datasource aiming at 20.04 (new evidence) for the first release affected.


implement application create

Because there is nothing that can represent the application in openshift we need to create something.
First we should figure out where we will keep application metadata and also context of active application.
It can be either client side (in config files in directory like ~/.ocdev/<application_name>).
Or it could be in cluster using CRD. We could take inspiration form Kubernetes Application API proposal, and use something like this:
apiVersion: ocdev.apps.openshift.com/v1beta1
Kind: Application
metadata:
  name: wordpress
spec:
  components:
    - wordpress-mysql-hsvc:
        version: v1
        kind: Service
    - wordpress-mysql:
        group: apps
        version: v1
        kind: StatefulSet
    - wordpress-webserver-hsvc:
        version: v1
        kind: Service
    - wordpress-webserver-svc:
        version: v1
        kind: Service
    - wordpress-mysql:
        group: apps
        version: v1
        kind: StatefulSet
    - wordpress-webserver:
        group: apps
        version: v1
        kind: StatefulSet

#20 is merged, can we close this?


Add ability to use form_ajax_refs fields as editable columns

Adds support for inline-editing of form_ajax_refs fields from list.html views:

One-to-one relationship

[x] Ajax search
[x] Select2 field
[x] Selections/adjustments persist/are saved to db
[x] Editable field reflects the updated/selected value from the modal

One-to-many relationship

[x] Ajax search
[x] Select2 multiple field
[x] Selections/adjustments persist/are saved to db
[x] Editable field does not always reflect the updated (multiple) values once clicking save in the modal. Changes do reflect on refresh though.

🐛 Both single and multi-select inline editable fields are unable to have all their values deleted from the inline select2 field in the list.html views. This relates to #357 and should be addressed when that issue is addressed.
Closes #1627
Closes #2063
Closes #2157

Yes. I'm referring to state on the frontend.

@michaelbukachi Sorry for falling off the map. It's been a long and tough week since my last comment. I finally have some time tomorrow to have a look at this.

@michaelbukachi Sorry for falling off the map. It's been a long and tough week since my last comment. I finally have some time tomorrow to have a look at this.

No pressure :slightly_smiling_face:

@michaelbukachi I'm just getting back to this. After looking at this, it seems it's a matter of determining the type of relationship (one-to-one or one-to-many). In the case of the Structures column at the /powerunit endpoint, it's a one-to-one (a structure can only be related to one powerunit). I'm struggling to figure out a way to figure out the relationship type ahead of time before the list view is rendered, otherwise it'll be as easy as adding a data-attribute to the column indicating which relationship type it is. From there I can use js to reflect the changes appropriately without refreshing the page.
I just can't see in the code where I can inject the additional data-attribute. Thoughts?

mrjoes You might be the better party to ask here since you built the internals. How could I go about passing on the type of relationship an Ajax field is dealing with? Ideally I'd like to add it as a data-attribute to the editable field, so we would ultimately need to pass this value to the xeditable widget, right? The question is how?

@caffeinatedMike sorry for the late response. This slipped my mind so I forgot to take a look. I'll take a look at it during the day.

@michaelbukachi I'm just getting back to this. After looking at this, it seems it's a matter of determining the type of relationship (one-to-one or one-to-many). In the case of the Structures column at the /powerunit endpoint, it's a one-to-one (a structure can only be related to one powerunit). I'm struggling to figure out a way to figure out the relationship type ahead of time before the list view is rendered, otherwise it'll be as easy as adding a data-attribute to the column indicating which relationship type it is. From there I can use js to reflect the changes appropriately without refreshing the page.
I just can't see in the code where I can inject the additional data-attribute. Thoughts?

Are fields aware of the data they hold? Or the models they are associated with? If we are able to determine the type as AjaxSelectField or AjaxSelectMultipleField maybe we can pull more information about the model. If that information does not exist, perhaps we can add new fields which extend the two mentioned which hold that information? :thinking:. Let me try and prototype something.

@michaelbukachi Only while they're first being instantiated (example: within __call__(...) functions for input widgets). So, like all other data that is passed to those widgets via the kwargs, there definitely should be a way to pass on the relationship type if a field is one of the Ajax fields that contain the model.
After reviewing the codebase a little more, I believe the spot that is the most ideal for determining this is the create_editable_list_form function in flask_admin.model.form

I see. Maybe we can introduce enums for the relationship types and pass them around?

My thoughts exactly, but haven't figured out where I can inject the data-attribute value other than on the widget level.

@michaelbukachi flask_admin.model.base > get_list_form function docstring shows a perfect example of how to add extra data-attributes to the widgets utilized in editable list fields, now we just need to figure out how to get the relationship type there. Could you have a look?

@caffeinatedMike I've been playing with the widgets. I'm actually really close to figuring it out.

Awesome! Please let me know your findings when you do. This has been a thorn in my side for a bit. It's really the only thing stopping this PR from being merge-ready.

@caffeinatedMike We might not have to go through overriding get_list_form. Is the choice of using AjaxSelectField over AjaxSelectMultipleField or vice versa determined based on the relationship type? Or is it something the user has to specify :thinking: ?

@michaelbukachi It is. However, what we need is the opposite relationship. For example, in the code we're using to test:
form_ajax_refs = {
    "structures": QueryAjaxModelLoader(
        "structures", db.session, Structure, fields=["name"]
    )
}

What we need is to determine the direction.name of Structure.power_unit, which is MANYTOONE (many structures to one power_unit). Since the ModelView is for PowerUnit it isn't clear how to get there. PowerUnit.structures is accessible easy enough (which is ONETOMANY). We can't simply assume the relationships are absolute opposites since there are legitimate reasons for one end to enforce a ONETOONE as well.

@michaelbukachi That's what I've been trying to figure out: where to do this and how to ultimately pass it onto the widget kwargs.

@michaelbukachi That's what I've been trying to figure out: where to do this and how to ultimately pass it onto the widget kwargs.
The first step is determining how is AjaxSelectField or AjaxSelectMultipleField selected.

flask_admin.contrib.sqla.form.AdminModelConverter functions _model_select_field and _convert_relation

This is where we should determine the relationship and return the appropriate widget which has the relationship information.

Yes, that's why I was pointing it out... I'm currently tied up with a few other tasks at the moment, but putting it here as a note.

@caffeinatedMike so checking _convert_relation, as long a relationship is ONETOMANY, MANYTOMANY and uselist is set then AjaxSelectMultipleField is used. Anything else MANYTONE or if uselist is false (meaning ONETOONE) then AjaxSelectField is used. So just checking the type of field being used is more than enough.

@michaelbukachi I'm just getting back to this now. The logic you provided is contradictory to the example code we've been using to test. In your gif of the bug each PowerUnit can have many Structures, but a Structure can only belong to a single PowerUnit at a time. So, just because the inline field is a SelectMultiple that doesn't mean we can assume that values should remain. The values should only remain in MANYTOMANY. Net net, we need a different way to determine this because using just the field type of SelectMultiple as an indicator would mean having a 50% chance of getting it wrong.

@caffeinatedMike what needs to be displayed for MANYTOMANY as opposed to ONETOMANY. Maybe I'm interpretating this in the wrong way 🤔

@michaelbukachi nothing needs to be done for MANYTOMANY. For ONETOMANY we need some sort of data-attribute to let us know to iterate over all other entries present on the current page in order to remove the value from those. In your gif you point out how the element is not removed from the other field until refresh. Thats the situation where we need a signifier to tell us to do this via JS to avoid needing a page refresh.

FYI, I didn't realize you had done this already. I added the same functionality in the following pull request:
https://github.com/flask-admin/flask-admin/pull/2256


Add env var to set allowed origins for accessing the API server

This PR introduces a new env var ALLOWED_ORIGINS to the Turing API so that only trusted origins can make requests to the Turing API server via the browser. By default, this value will be set to * which is effectively the same as the previous cors.AllowAll().

I'm not entirely ok with c being used as a var name here c := cors.New(...), but I assume it comes from the rs/cors examples/docs page

Sì. I changed it now:
        corsHandler := cors.New(cors.Options{
		AllowedOrigins: cfg.AllowedOrigins,
	})
	if err := http.ListenAndServe(cfg.ListenAddress(), corsHandler.Handler(mux)); err != nil {
		log.Errorf("Failed to start turing-api: %s", err)
	}


update core status in menu

Codecov Report

Merging #397 into experimental will decrease coverage by 1.94%.
The diff coverage is 0%.

@@               Coverage Diff               @@
##           experimental    #397      +/-   ##
===============================================
- Coverage         80.24%   78.3%   -1.95%
===============================================
  Files                24      24
  Lines              1529    1567      +38
===============================================
  Hits               1227    1227
- Misses              302     340      +38

Impacted Files
Coverage Δ

vent/helpers/meta.py
72.41% <ø> (ø)
:arrow_up:

vent/menu.py
19.93% <0%> (-2.89%)
:arrow_down:

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 3d1b842...0b1db79. Read the comment docs.


Update README to include installing GDAL as a step in reproducing the results

Following the instructions on the README - the install will fail unless GDAL is installed, required for geopandas.
Conda could be used to avoid this as an additional step but entails more faff for the user

Thanks for the changes and pointing out the old links in #9. I've got a deadline coming up next week but will upload the original files and properly review your PR thereafter. Thanks again.

Thanks for the extra information, @khoroo.


WebService authentication for OIDC integration

Summary
Investigate WebService authentication Implemented with access token.
Details

Target is to use resource owner password grant to authenticate with OSCM. See https://tools.ietf.org/html/rfc6749

Investigate what is necessary to adapt for token based authentication with OSCM Web Services. See org.oscm.webservices.handler.LoginHandler

Acceptance criteria
Todo

Related with #405

Basically the OSCM SOAP API idenitity relies on OASIS' Web Service Security standard. It usesusername token based authentication. This is handled at two sides.

Clients have to include user key and password credentials in the SOAP message.
Login service that is configured with the JAAS context has to hande the authentication to the realm.

Client handler:
org.oscm.app.v2_0.BSSWebServiceFactory
Login module

WSValidator is configured in openejb-jar.xml to handle login at login service obtaining the username token
Authentication

Basically the OSCM SOAP API idenitity relies on OASIS' Web Service Security standard. It usesusername token based authentication. This is handled at two sides.

Clients include user key and password credentials in the SOAP message.
Login service that is configured with the JAAS context (jaas.config file) handes the authentication to the BES realm.

Client handlers:

org.oscm.app.v2_0.BSSWebServiceFactory
org.oscm.app.dao.BesDAO
org.oscm.test.ws.WebServiceProxy (SSO testing needed later)

Login module

See org.oscm.security.WSValidator configured in openejb-jar.xml files to handle login at login service obtaining the username token
See org.oscm.security.ADMLoginModule#login implementing the login service

The implementation already includes user key and password. This is unique also in OIDC mode.
Ideas:

Extend the UserQuery to load the tenant ID for the platform user given by the key.
Extend AdmRealmImpl#authenticateUser(final String userKey, String password) for OIDC mode to perform the authentication client credentials grant using the oscm-identity endpoint.
The required function to handle respective oscm-identity client endpoint and validating the token shall offered as library modules that a separatly unit tested and can be shared with other clients. Maybe the oscm-common repo could be a canditate to host this implementation.

As this is investigation issue which is now completed, it will be closed. All necessary improvments will be    proccessed within following issue https://github.com/servicecatalog/oscm/issues/474


Recording a drive cycle and "playing it back"

Hi, we have Toyota RAV4 Hybrid 2017 on the dyno packs and we want to record the driving cycle (different car speeds and time, no need of self driving). After that, we would like to "play it back" to the same car as speed setpoints of cruise control (same speeds at same times). Would this be possible with Comma setup we already have? The idea is to run the same driving cycle over again for the scientific research of fuel consumption.
Could anybody tell us if it is possible to achieve using our setup? I attach a photo of what we have.

Closing as this isn't a bug - check out our Discord instead.


"JSONRPCException: Method not found (-32601)" for node.getbalance()

Chapter 2.0: Taproot Introduction
Example 2.0.2
balance = node.getbalance() is giving "Method not found" error.
node.getnetworkinfo() is returning valid version data from node.
Any suggestion on what might be going wrong?
Thanks and regards.

For anyone else who comes across this issue:
node.getbalance() requires a wallet. This was failing for you because the wallet was disabled.


Polar.sh support

Clear and concise description of the problem
Add a support for Polar.sh provider to sponsorkit
Suggested solution
I can work on a PR if you're OK with adding it to sponsorkit !
Alternative
No response
Additional context
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Sure, PR welcome :)


Updating .gitignore to ignore package-lock.json

What is the purpose of this pull request? (Check any that's applicable)

[ ] Feature
[ ] Bug fix
[ ] Dependency updates
[ ] Documentation updates
[x] Build related changes
[ ] Changes an existing functionality
[ ] Other, please explain:

Does this introduce a breaking change?

[ ] Yes
[x] No

What changes did you make? (Give an overview)
Updated .gitignore to ignore package-lock.json and other common invisibles/caches that shouldn't be checked in. This not only makes the ignore patterns more consistent with Terra, but it also makes it easier to move between PRs and rebuild without continuously reverting the npm lock file.

:tada: This PR is included in version 2.13.6 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


CSS Syntax and Selectors

Description
Description-
-CSS Syntax
-Selectors in CSS
-CSS element selector
-CSS ID selector
-CSS CLASS selector
-CSS Universal Selector
Domain
Frontend Dev HTML/CSS/JS
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign

/assign

Hey creator, I would like to work on this issue, is it possible now? Can you please assign me this?
Name: Chakit Gupta
Batch: Front end with HTML, css, js Batch-4
Type: Documentation


Problem with shortest_path

Hello.
I am using wntr library which uses SciPy.
While freezing code with cx_Freeze I encountered problem with WNTR and SciPy . While trying to launch application - windows returns traceback:

Traceback (most recent call last):
0 File "C:\DEV\Python\lib\site-packagesch_Freeze\initscripts_startup_.py", line 14, in run
module.run()
File "C:\DEV\Python\lib\site-packages\cx_Freeze\initscripts\ConsoIe.py", line 26, in run
e\ec(code, m.dict)
File "SampleAPP.py", line 18, in < module>
File "C:\DEV\Python\lib\site-packageszntrLinit_.py", line 1, in < module>
from wntr import epanet
File "C\DEV\Python\lib\site- packages\wntr\epanet_init_.py", line 4, in < module>
from .io import IoniIe #, BinFiIe, HydFile, RptFiIe
File "C:\DEV\Python\lib\site-packageszntr\epanet\io.py", line 32, in < module>
import wntr.network
File "C\DEV\Python\lib\site- packages\wntr\network_init_.py", line 6, in < module>
from .eIements import Junction, Reservoir, Tank, Pipe, Pump, Valve, Pattern, TimeSeries, Demands, Curve, Source
File "C\DEV\Python\lib\site- packages\wntr\network\elements.py", line 37, in < module>
from scipy.optimize import fsolve
File "C\DEV\Python\lib\site- packages\scipy\optimize_init_.py", line 271, in < module>
from ._minimize import *
File "C:\DEV\Python\lib\site-packages\scipy\optimize_minimize.py", line 21, in < module>
from scipy.sparse.linalg import LinearOperator
File "C\DEV\Python\lib\site-packages\scipy\parse_init_.py", line 241, in < module>
from . import csgraph
File "C\DEV\Python\lib\site-packages\scipstparse\csgraphLinit_.py", line 165, in < module>
from ._shortest_path import shortest_path, floyd_warshall, dijkstraA
ImportError: cannot import name 'shortest_path'

Converted this traceback from image with ocr so it can contain some typos.
Anyone else encountered this problem and knows how to solve it? I would be really thankfull for any hinds that could help me make it work. I'm beginning my journey with coding, so big apologies if this issue was already discussed.

I can provide more information if needed.
Im using newest version of wntr, python 3.6.5. 64 bit.
Scipy/Numpy/Python version information:
Scipy: 1.1.0
Numpy: 1.14.3

That's probably problem with cx_Freeze not including necessary files.
You can try asking on cx_Freeze forums for help with that.

@Fehrox
Hello friend. Yes i made it work. When cx_Freeze copies the 'ckdtree.cp36-win_amd64.pyd' file from the lib into your new build folder (\build\exe.win-amd64-3.6\lib\scipy\spatial), it copies it as 'cKDTree.cp36-win_amd64.pyd'.
Simply changing the capitalization on the file should solve  import problem.

Thanks @Skulldron.
In the end I changed to pyinstaller to produce my build, but hopefully this message will help someone in our position in the future, thanks for posting your solution.

Looks like the issue is settled and not strictly a SciPy issue, hence closing.


add Dockerfile

Codecov Report

Merging #339 (f0f54b0) into develop (d9af3b7) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #339   +/-   ##
========================================
  Coverage    40.00%   40.00%
========================================
  Files           53       53
  Lines         3035     3035
========================================
  Hits          1214     1214
  Misses        1691     1691
  Partials       130      130

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


Limit concurrent download of binary dependencies

Limit the concurrent HTTP requests for downloading binary dependencies to 8 concurrent requests.
Motivation:
We have a fairly large Package.swift with 50 binary dependencies. In total the size of these 50 zip files is 400 MB. On a slower internet connection (16 MBit) the swift package resolve command errors out with some HTTP timeouts. It seems the main problem is that all 50 HTTP requests are executed at the same time.
Modifications:
Using some DispatchSemaphore to limit the concurrently downloaded binary dependencies to 8 concurrent requests.
Result:
In our project with the 50 binary dependencies it successfully completes the swift package resolve command. It's still open for discussion if the max 8 concurrent downloads is the right number. Also not sure if we should introduce another queue for this, reusing callbackQueue doesn't feel exactly right. However I found another FIXME that's also just using callbackQueue and wondering if there should be a separate queue.

See also: https://bugs.swift.org/browse/SR-15725

@swift-ci Please smoke test

thanks @plu, couple of follow up questions

Thank you for the quick review @tomerd. I made one change already, and had another question related to the code around the DispatchGroup.

@swift-ci please smoke test

@plu would you please also create a cherry-pick into the release/5.6 branch

Thank you for the review/approval, @tomerd. Here's the PR that cherry-picks the commit into release/5.6: #4024

Is this something that Xcode is using directly, or should I file some radar for Xcode? I'm asking because we're also facing this issue when we do File -> Packages -> Resolve Package Versions in Xcode.

@plu this will be included in Xcode in the next release cycle


About the batch_size_train

Does batch_size_train means the batch size on single GPU? Or all the GPUs?

On a single GPU.


Selection not working for journal entries

I drag a journal entry onto the map.  Select shows up under map notes, but dragging a box around a note does nothing.  Selecting it individually only lasts until I click on anything else, UI or otherwise.

You can only select and move multiple notes while you have the journal notes layer selected. It might not look like you have multiple selected but you can still move them together.


not working with node 8

https://github.com/natancabral/pdfkit-table/blob/b4548dc766d3f0a40cf15e68380a36daeaa12a87/index.js#L19

https://github.com/natancabral/pdfkit-table/blob/b4548dc766d3f0a40cf15e68380a36daeaa12a87/index.js#L19

Changing this line to below resolves the problem:
  addBackground ({x, y, width, height}, fillColor, fillOpacity) {

Done! Thanks, @mehmetunubol.


Failed to release blob storage

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az storage blob lease break
Errors:
HTTPSConnectionPool(host='bkintern5028fb7db44e435b.blob.core.windows.net', port=443): Max retries exceeded with url: /tfstate/dev.bk-intern.tfstate?comp=lease (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x10a290ac8>: Failed to establish a new connection: [Errno 8] nodename nor servname provided, or not known'))
Traceback (most recent call last):
python3.7/site-packages/urllib3/connection.py, ln 159, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw)
...
    raise AzureException(ex.args[0])
azure.common.AzureException: HTTPSConnectionPool(host='bkintern5028fb7db44e435b.blob.core.windows.net', port=443): Max retries exceeded with url: /tfstate/dev.bk-intern.tfstate?comp=lease (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x10a290ac8>: Failed to establish a new connection: [Errno 8] nodename nor servname provided, or not known'))

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az storage blob lease break -b {} -c {} --account-name {} --account-key {}

Expected Behavior
Environment Summary
Darwin-18.7.0-x86_64-i386-64bit
Python 3.7.3
Shell: bash

azure-cli 2.0.64 *

Additional Context

I did a DNS lookup but couldn't find bkintern5028fb7db44e435b.blob.core.windows.net. Please verify the Storage Account name is correct.

I figured out that it came from running terraform destroy. The resource was removed.
Thank you for doing the DNS lookup and helping me resolve this issue.


Remove AF_MAX, PF_MAX, NET_MAXID constants

These constants have already been deprecated for a few releases with
a deprecation notice, so they can finally be removed.
Closes rust-lang/libc#665

r? @gnzlbg
(rust_highfive has picked a reviewer for you, use r? to override)

@bors: r+

:pushpin: Commit 215f095601637ee7b5c73f2d9d5fc67d9a3f843e has been approved by gnzlbg

:hourglass: Testing commit 215f095601637ee7b5c73f2d9d5fc67d9a3f843e with merge ec0b3f4c500a2b23b14ae531fa2acb6798f2b90f...

:broken_heart: Test failed - checks-cirrus-freebsd-11

@bors: retry

:hourglass: Testing commit 215f095601637ee7b5c73f2d9d5fc67d9a3f843e with merge 789c38144e1003397621a3591569ff814aec0613...

:sunny: Test successful - checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-travis, status-appveyor
Approved by: gnzlbg
Pushing 789c38144e1003397621a3591569ff814aec0613 to master...


Replacer impl for FnMut impossible lifetime requirements

Continuing the thread from the forum. Rust gives a warning that this is potentially UB:
let r = Regex::new("aaa")?;
r.replace_all("aaa", |c: &Captures<'_> | {
    c.get(0).unwrap().as_str()
});

In the Replacer trait, there's no place to define that the returned T: AsRef<str> lives at least as long as '_ in Captures<'_>.
This becomes more evident if you try to use explicit &str as the return type. There's just no way to compile it with 'a: 't or similar requirement:
impl<'a, F> Replacer for F where F: for<'t> FnMut(&Captures<'t>) -> &'a str {
    fn replace_append<'t>(&mut self, caps: &Captures<'t>, dst: &mut String) {
        dst.push_str((*self)(caps).as_ref());
    }
}

As far as I understand, the difficulty here is that the lifetime in question is inside of function arguments in the trait, but needs to be named outside of it in the closure type. There's just no syntax for such thing.
Ability to return some of the captures for replacement seems quite useful, but having a scary warning for this, and potentially UB or fatal error in the future, is not good.

Is there some clever syntax/generics/lifetimes solution that would make it work?

Can closures be made to work some other way, via wrapper type, or another function call?

Should Rust add some syntax, or make the borrow checker more clever, to make the existing solution acceptable?

I don't think this is UB in replace_all, but with using the closure. I think lifetime inference was wrong in previous versions of the compiler, leading it to infer the wrong lifetimes for the closure. But using normal functions this code fails to compile regardless of how the lifetimes are plugged together.
This is because of the bound FnMut(&Captures) -> T on the blanket impl for Replacer. This blanket impl states that T cannot be derived from Captures in any way. But previous versions of Rust erroneously allows this to happen, now with nll it is able to detect this bug an emit a warning.
So all in all, this is not a bug in regex, rather it is a bug in your usage of replace_all.
Note how both of the following do not compile.
playground
use regex::{Regex, Captures};

fn main() {
    fn foo<'a>(c: &Captures<'a>) -> &'a str {
        c.get(0).unwrap().as_str()
    }

    fn bar<'a>(c: &'a Captures<'_>) -> &'a str {
        c.get(0).unwrap().as_str()
    }
    let r = Regex::new("aaa").unwrap();

    // r.replace_all("aaa", foo); // does not compile,
    // r.replace_all("aaa", bar); // does not compile,
}

I accept that with the current definition I can't use strings from Captures.
However, I think using strings from Captures is useful and something that could be reasonably expected to work. These strings are taken straight from the input, and outlive actual usage of the closure's return value. The problem is that the code doesn't tell that to the compiler, so usage is needlessly limited.
If Replacer closure can't work with Captures, could regex add, for example, something like replace_all_callback with less abstract arguments that could define the lifetimes in a way that allows use of Captures's values?

This is indeed unfortunate. It seems to me like there ought to be a way to express this, since from my point of view, it is totally safe to write this particular closure. Or at least, I don't understand why it isn't. So this might be one of those rare cases where NLL winds up rejecting what was a previously valid---and still valid---program. But this is not my area of expertise, so I am not super confident here. cc @nikomatsakis Do you have any insight into this issue?

If Replacer closure can't work with Captures, could regex add, for example, something like replace_all_callback with less abstract arguments that could define the lifetimes in a way that allows use of Captures's values?

I'm not necessarily opposed to this, but I'm not quite sure how it would work. Certainly, the existing replace_append method is sufficiently generic to handle any use case here---it just lacks ergonomics. So in order to get ergonomics back, you'd have to provide another FnMut impl, no? And that would likely overlap with the existing one, so I'm not sure how it would work.
It's worth noting that up until a year ago, the Replacer closure could only return a String. It wasn't until #509 was merged that it got generalized into its current form. So this is a somewhat niche concern, and there are of course work-arounds by implementing Replacer directly if someone absolutely needs this for performance. But still, I do of course agree it would be nice to be able to do this from the closure directly.

I can't think of another implementation that would solve this, and Rust is unlikely to have a feature for this anytime soon, so I'm closing the issue.

Does anyone have an example of a working (Rust 2018) regex replacement code snippet that avoids the above error, with and without use of variable bindings (Captures)? Thanks.

@jochenleidner you need to implement the trait on a struct, not a closure.
struct ExampleReplacer;
impl regex::Replacer for ExampleReplacer {
    fn replace_append(&mut self, capts: &Captures<'_>, dst: &mut String) {
        dst.push_str(some_replacement.unwrap_or_else(|| &capts[0]));
    }
}

https://github.com/kornelski/gh-emoji/blob/1366c9a2b4c659565a17f434e25aab294a0a0a7d/src/lib.rs#L55-L60

Thanks a lot for this rapid reply, that works.
BTW, this is the first case where I've seen Rust code that is less readable and considerably more complex than its C++ counterpart:
string s("there is a subsequence in the string\n");
regex e("\\b(sub)([^ ]*)");
cout << regex_replace(s,e,"sub-$2"); // no need to implement a function

It may be merited as the Rust solution may buy one more flexibility, but perhaps it's worth adding a "convenience function" implementation like the one you quote above in the Rust std library.

Code identical to C++ works too — replacer is implemented for strings. The struct/closure version is only if you want to have something with higher performance or custom replacement logic.

BTW, this is the first case where I've seen Rust code that is less readable and considerably more complex than its C++ counterpart

And in addition to what @kornelski said, simple replacements like you're after are one of the first examples in the crate docs: https://docs.rs/regex/1.4.3/regex/#example-replacement-with-named-capture-groups
And there are even more in the docs of the replace method itself: https://docs.rs/regex/1.4.3/regex/struct.Regex.html#examples-2

Thanks, @kornelski and @BurntSushi - I agree those examples are very useful, and along the lines of what I had in mind.


[Bug] Checklist before becoming a Maintainer has a link to the outdated certificate

Page link
https://github.com/kyverno/website/blob/main/content/en/community/_index.md
Description
Checklist before becoming a maintainer has a link to the outdated certificate
Expected behavior
Link to the new CNCF certificate
Slack discussion
No response

Proposal is to remove this?

Current docs do not have a link to any certification program, only a text line item. Nothing to do at this time. Closing.


use desktop as temp/working directory

i hate hacing to navigate to te temp directoy every time i want to access it it would be so much easir if it was just use my desktop for temp files
please and thak you

Ohh emm gee, totally! Instead temp should hold shortcuts referring to the desktop, then sort the desktop every time a new file by browser goes there. Based on my initial considerations this is helpful in many cases.

that would be so much more convenient. thanks.


Redirection to URL with a scheme that is not HTTP(S)

After login with Azure SSO I get a message Redirection to URL with a scheme that is not HTTP(S)
To Reproduce
Steps to reproduce the behavior:

Run:

sdl-freerdp file.rdpw /u:'email' /p:'pass' /sec:nla /cert:ignore +clipboard /gateway:type:arm /network:auto /rfx /gfx:avc444 /dynamic-resolution /log-level:debug

Expected behavior
After login with SSO, start using Remote Desktop
Screenshots
Partial screenshot:

Application details
Compile params:
[13:32:18:251] [111385:0001b319] [DEBUG][com.freerdp.client.common] - [freerdp_client_settings_parse_command_line]: This is 3.0.0-dev3 Build configuration: BUILD_TESTING=ON WINPR_HAVE_AIO_H=1 WINPR_HAVE_EXECINFO_BACKTRACE=1 WINPR_HAVE_EXECINFO_BACKTRACE_SYMBOLS=1 WINPR_HAVE_EXECINFO_BACKTRACE_SYMBOLS_FD=1 WINPR_HAVE_EXECINFO_HEADER=1 WINPR_HAVE_FCNTL_H=1 WINPR_HAVE_GETLOGIN_R=1 WINPR_HAVE_GETPWUID_R=1 WINPR_HAVE_INTTYPES_H=1 WINPR_HAVE_JOURNALD_H=TRUE WINPR_HAVE_POLL_H=1 WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIB=1 WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIBS= WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_SYMBOL=1 WINPR_HAVE_STDBOOL_H=1 WINPR_HAVE_STDINT_H=1 WINPR_HAVE_STRNDUP=1 WINPR_HAVE_SYSLOG_H=1 WINPR_HAVE_SYS_EVENTFD_H=1 WINPR_HAVE_SYS_FILIO_H= WINPR_HAVE_SYS_SELECT_H=1 WINPR_HAVE_SYS_SOCKIO_H= WINPR_HAVE_SYS_TIMERFD_H=1 WINPR_HAVE_TM_GMTOFF=1 WINPR_HAVE_UNISTD_H=1 WINPR_HAVE_UNWIND_H=1 WITH_AAD=ON WITH_ADD_PLUGIN_TO_RPATH=OFF WITH_ALSA=ON WITH_CAIRO=ON WITH_CCACHE=ON WITH_CHANNELS=ON WITH_CJSON=ON WITH_CLANG_FORMAT=ON WITH_CLIENT=ON WITH_CLIENT_AVAILABLE=1 WITH_CLIENT_CHANNELS=ON WITH_CLIENT_CHANNELS_AVAILABLE=1 WITH_CLIENT_COMMON=ON WITH_CLIENT_INTERFACE=OFF WITH_CLIENT_SDL=ON WITH_CLIENT_SDL_AVAILABLE=1 WITH_CUNIT=ON WITH_CUPS=ON WITH_DEBUG_ALL=OFF WITH_DEBUG_CAPABILITIES=OFF WITH_DEBUG_CERTIFICATE=OFF WITH_DEBUG_CHANNELS=OFF WITH_DEBUG_CLIPRDR=OFF WITH_DEBUG_CODECS=OFF WITH_DEBUG_DVC=OFF WITH_DEBUG_EVENTS=OFF WITH_DEBUG_KBD=OFF WITH_DEBUG_LICENSE=OFF WITH_DEBUG_MUTEX=OFF WITH_DEBUG_NEGO=OFF WITH_DEBUG_NLA=OFF WITH_DEBUG_NTLM=OFF WITH_DEBUG_RAIL=OFF WITH_DEBUG_RDP=OFF WITH_DEBUG_RDPDR=OFF WITH_DEBUG_RDPEI=OFF WITH_DEBUG_RDPGFX=OFF WITH_DEBUG_REDIR=OFF WITH_DEBUG_RFX=OFF WITH_DEBUG_RINGBUFFER=OFF WITH_DEBUG_SCARD=OFF WITH_DEBUG_SCHANNEL=OFF WITH_DEBUG_SDL_EVENTS=OFF WITH_DEBUG_SDL_KBD_EVENTS=OFF WITH_DEBUG_SND=OFF WITH_DEBUG_SVC=OFF WITH_DEBUG_SYMBOLS=OFF WITH_DEBUG_THREADS=OFF WITH_DEBUG_TIMEZONE=OFF WITH_DEBUG_TRANSPORT=OFF WITH_DEBUG_TSG=OFF WITH_DEBUG_TSMF=OFF WITH_DEBUG_TSMF_AVAILABLE=0 WITH_DEBUG_URBDRC=OFF WITH_DEBUG_WND=OFF WITH_DEBUG_X11=OFF WITH_DEBUG_X11_LOCAL_MOVESIZE=OFF WITH_DEBUG_XV=OFF WITH_DSP_EXPERIMENTAL=OFF WITH_DSP_FFMPEG=ON WITH_DSP_FFMPEG_AVAILABLE=1 WITH_EVENTFD_READ_WRITE=1 WITH_FAAC=OFF WITH_FAAD2=OFF WITH_FFMPEG=ON WITH_FREERDP_DEPRECATED=OFF WITH_FREERDP_DEPRECATED_COMMANDLINE=OFF WITH_FUSE=ON WITH_GFX_H264=ON WITH_GPROF=OFF WITH_GSM=OFF WITH_INTERNAL_MD4=OFF WITH_INTERNAL_MD5=OFF WITH_INTERNAL_RC4=OFF WITH_IPP=OFF WITH_JPEG=ON WITH_KRB5=OFF WITH_LAME=OFF WITH_LIBRARY_VERSIONING=ON WITH_LIBSYSTEMD=ON WITH_LODEPNG=OFF WITH_MACAUDIO=OFF WITH_MACAUDIO_AVAILABLE=0 WITH_MANPAGES=OFF WITH_MBEDTLS=OFF WITH_NATIVE_SSPI=OFF WITH_OPENCL=OFF WITH_OPENH264=TRUE WITH_OPENH264=TRUE WITH_OPENH264_LOADING=OFF WITH_OPENSC_PKCS11_LINKED=OFF WITH_OPENSLES=OFF WITH_OPENSSL=ON WITH_OSS=OFF WITH_PCSC=OFF WITH_PCSC_WINPR=ON WITH_PKCS11=ON WITH_PLATFORM_SERVER=ON WITH_POLL=ON WITH_PROFILER=OFF WITH_PROXY=ON WITH_PROXY_APP=ON WITH_PROXY_EMULATE_SMARTCARD=OFF WITH_PROXY_MODULES=ON WITH_PULSE=OFF WITH_RDTK=ON WITH_SAMPLE=ON WITH_SANITIZE_ADDRESS=OFF WITH_SANITIZE_ADDRESS_AVAILABLE=1 WITH_SANITIZE_MEMORY=OFF WITH_SANITIZE_MEMORY_AVAILABLE=1 WITH_SANITIZE_THREAD=OFF WITH_SANITIZE_THREAD_AVAILABLE=1 WITH_SDL2=ON WITH_SERVER=ON WITH_SERVER_CHANNELS=ON WITH_SERVER_INTERFACE=ON WITH_SHADOW=ON WITH_SMARTCARD_EMULATE=OFF WITH_SMARTCARD_INSPECT=OFF WITH_SMARTCARD_PCSC=ON WITH_SOXR=OFF WITH_SPNEGO=ON WITH_SSE2=ON WITH_SWSCALE=ON WITH_THIRD_PARTY=OFF WITH_UNICODE_BUILTIN=OFF WITH_VAAPI=OFF WITH_VAAPI_AVAILABLE=1 WITH_VALGRIND_MEMCHECK=OFF WITH_VALGRIND_MEMCHECK_AVAILABLE=1 WITH_VERBOSE_WINPR_ASSERT=ON WITH_VIDEO_FFMPEG=ON WITH_VIDEO_FFMPEG_AVAILABLE=1 WITH_WAYLAND=OFF WITH_WEBKIT=ON WITH_WEBVIEW=ON WITH_WEBVIEW_QT=OFF WITH_WINPR_DEPRECATED=OFF WITH_WINPR_TOOLS=ON WITH_WIN_CONSOLE=ON WITH_X11=ON WITH_XCURSOR=ON WITH_XEXT=ON WITH_XFIXES=ON WITH_XI=ON WITH_XINERAMA=ON WITH_XRANDR=ON WITH_XRENDER=ON WITH_XV=ON WITH_ZLIB=ON
Build type:          Release
CFLAGS:               -fPIC -Wall -Wimplicit-function-declaration -Wredundant-decls -fno-omit-frame-pointer
Compiler:            GNU, 12.3.0
Target architecture: x64

Environment (please complete the following information):

OS: Linux
Version/Distribution: NixOS
Architecture: amd64

Additional context
Strange line in the logs:
Overriding existing handler for signal 10. Set JSC_SIGNAL_FOR_GC if you want WebKit to use a different signal

Even tho I haven't got into the Remote Desktop session, the CPU usage of this process is huge. (not sure if it is related)

@matejc strange options I see in your output. what is WITH_WEBKIT=ON?
anyway, should use webkit2gtk-4.0 but the add_scheme_handler implementaion fails to register the ms-appx-web scheme.

About WITH_WEBKIT=ON ... I was playing with the options a bit, its a leftover.
I built again from 8ec4d20616cc6afa8c4dd6aaf2361ef731b72287 commit and options are:
[14:03:56:455] [756013:000b892d] [DEBUG][com.freerdp.client.common] - [freerdp_client_settings_parse_command_line]: This is 3.0.0-dev3 Build configuration: BUILD_TESTING=ON WINPR_HAVE_AIO_H=1 WINPR_HAVE_EXECINFO_BACKTRACE=1 WINPR_HAVE_EXECINFO_BACKTRACE_SYMBOLS=1 WINPR_HAVE_EXECINFO_BACKTRACE_SYMBOLS_FD=1 WINPR_HAVE_EXECINFO_HEADER=1 WINPR_HAVE_FCNTL_H=1 WINPR_HAVE_GETLOGIN_R=1 WINPR_HAVE_GETPWUID_R=1 WINPR_HAVE_INTTYPES_H=1 WINPR_HAVE_JOURNALD_H=TRUE WINPR_HAVE_POLL_H=1 WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIB=1 WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIBS= WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_SYMBOL=1 WINPR_HAVE_STDBOOL_H=1 WINPR_HAVE_STDINT_H=1 WINPR_HAVE_STRNDUP=1 WINPR_HAVE_SYSLOG_H=1 WINPR_HAVE_SYS_EVENTFD_H=1 WINPR_HAVE_SYS_FILIO_H= WINPR_HAVE_SYS_SELECT_H=1 WINPR_HAVE_SYS_SOCKIO_H= WINPR_HAVE_SYS_TIMERFD_H=1 WINPR_HAVE_TM_GMTOFF=1 WINPR_HAVE_UNISTD_H=1 WINPR_HAVE_UNWIND_H=1 WITH_AAD=ON WITH_ADD_PLUGIN_TO_RPATH=OFF WITH_ALSA=ON WITH_CAIRO=ON WITH_CCACHE=ON WITH_CHANNELS=ON WITH_CJSON=ON WITH_CLANG_FORMAT=ON WITH_CLIENT=ON WITH_CLIENT_AVAILABLE=1 WITH_CLIENT_CHANNELS=ON WITH_CLIENT_CHANNELS_AVAILABLE=1 WITH_CLIENT_COMMON=ON WITH_CLIENT_INTERFACE=OFF WITH_CLIENT_SDL=ON WITH_CLIENT_SDL_AVAILABLE=1 WITH_CUNIT=ON WITH_CUPS=ON WITH_DEBUG_ALL=OFF WITH_DEBUG_CAPABILITIES=OFF WITH_DEBUG_CERTIFICATE=OFF WITH_DEBUG_CHANNELS=OFF WITH_DEBUG_CLIPRDR=OFF WITH_DEBUG_CODECS=OFF WITH_DEBUG_DVC=OFF WITH_DEBUG_EVENTS=OFF WITH_DEBUG_KBD=OFF WITH_DEBUG_LICENSE=OFF WITH_DEBUG_MUTEX=OFF WITH_DEBUG_NEGO=OFF WITH_DEBUG_NLA=OFF WITH_DEBUG_NTLM=OFF WITH_DEBUG_RAIL=OFF WITH_DEBUG_RDP=OFF WITH_DEBUG_RDPDR=OFF WITH_DEBUG_RDPEI=OFF WITH_DEBUG_RDPGFX=OFF WITH_DEBUG_REDIR=OFF WITH_DEBUG_RFX=OFF WITH_DEBUG_RINGBUFFER=OFF WITH_DEBUG_SCARD=OFF WITH_DEBUG_SCHANNEL=OFF WITH_DEBUG_SDL_EVENTS=OFF WITH_DEBUG_SDL_KBD_EVENTS=OFF WITH_DEBUG_SND=OFF WITH_DEBUG_SVC=OFF WITH_DEBUG_SYMBOLS=OFF WITH_DEBUG_THREADS=OFF WITH_DEBUG_TIMEZONE=OFF WITH_DEBUG_TRANSPORT=OFF WITH_DEBUG_TSG=OFF WITH_DEBUG_TSMF=OFF WITH_DEBUG_TSMF_AVAILABLE=0 WITH_DEBUG_URBDRC=OFF WITH_DEBUG_WND=OFF WITH_DEBUG_X11=OFF WITH_DEBUG_X11_LOCAL_MOVESIZE=OFF WITH_DEBUG_XV=OFF WITH_DSP_EXPERIMENTAL=OFF WITH_DSP_FFMPEG=ON WITH_DSP_FFMPEG_AVAILABLE=1 WITH_EVENTFD_READ_WRITE=1 WITH_FAAC=OFF WITH_FAAD2=OFF WITH_FFMPEG=ON WITH_FREERDP_DEPRECATED=OFF WITH_FREERDP_DEPRECATED_COMMANDLINE=OFF WITH_FUSE=ON WITH_GFX_H264=ON WITH_GPROF=OFF WITH_GSM=OFF WITH_INTERNAL_MD4=OFF WITH_INTERNAL_MD5=OFF WITH_INTERNAL_RC4=OFF WITH_IPP=OFF WITH_JPEG=ON WITH_KRB5=OFF WITH_LAME=OFF WITH_LIBRARY_VERSIONING=ON WITH_LIBSYSTEMD=ON WITH_LODEPNG=OFF WITH_MACAUDIO=OFF WITH_MACAUDIO_AVAILABLE=0 WITH_MANPAGES=OFF WITH_MBEDTLS=OFF WITH_NATIVE_SSPI=OFF WITH_OPENCL=OFF WITH_OPENH264=TRUE WITH_OPENH264=TRUE WITH_OPENH264_LOADING=OFF WITH_OPENSC_PKCS11_LINKED=OFF WITH_OPENSLES=OFF WITH_OPENSSL=ON WITH_OSS=OFF WITH_PCSC=ON WITH_PCSC_WINPR=ON WITH_PKCS11=ON WITH_PLATFORM_SERVER=ON WITH_POLL=ON WITH_PROFILER=OFF WITH_PROXY=ON WITH_PROXY_APP=ON WITH_PROXY_EMULATE_SMARTCARD=OFF WITH_PROXY_MODULES=ON WITH_PULSE=ON WITH_RDTK=ON WITH_SAMPLE=ON WITH_SANITIZE_ADDRESS=OFF WITH_SANITIZE_ADDRESS_AVAILABLE=1 WITH_SANITIZE_MEMORY=OFF WITH_SANITIZE_MEMORY_AVAILABLE=1 WITH_SANITIZE_THREAD=OFF WITH_SANITIZE_THREAD_AVAILABLE=1 WITH_SDL2=ON WITH_SERVER=ON WITH_SERVER_CHANNELS=ON WITH_SERVER_INTERFACE=ON WITH_SHADOW=ON WITH_SMARTCARD_EMULATE=ON WITH_SMARTCARD_INSPECT=OFF WITH_SMARTCARD_PCSC=ON WITH_SOXR=OFF WITH_SPNEGO=ON WITH_SSE2=ON WITH_SWSCALE=ON WITH_THIRD_PARTY=OFF WITH_UNICODE_BUILTIN=OFF WITH_VAAPI=ON WITH_VAAPI_AVAILABLE=1 WITH_VALGRIND_MEMCHECK=OFF WITH_VALGRIND_MEMCHECK_AVAILABLE=1 WITH_VERBOSE_WINPR_ASSERT=ON WITH_VIDEO_FFMPEG=ON WITH_VIDEO_FFMPEG_AVAILABLE=1 WITH_WAYLAND=OFF WITH_WEBVIEW=ON WITH_WEBVIEW_QT=OFF WITH_WINPR_DEPRECATED=OFF WITH_WINPR_TOOLS=ON WITH_WIN_CONSOLE=ON WITH_X11=ON WITH_XCURSOR=ON WITH_XEXT=ON WITH_XFIXES=ON WITH_XI=ON WITH_XINERAMA=ON WITH_XRANDR=ON WITH_XRENDER=ON WITH_XV=ON
Build type:          Release
CFLAGS:               -fPIC -Wall -Wimplicit-function-declaration -Wredundant-decls -fno-omit-frame-pointer
Compiler:            GNU, 12.3.0
Target architecture: x64

With this I am just confirming that the extra option that I now removed did not produce different results.. So yes, I have the same issue still.
Does this mean that is a problem with the FreeRDP or webkit2gtk-4.0 library?

should use webkit2gtk-4.0 but the add_scheme_handler implementaion fails to register the ms-appx-web scheme

Maybe unrelated to this issue... but if I compile with WITH_WEBVIEW_QT=ON, I can login and enter the remote session. CPU is still very high at 104% (compared to xfreerdp's 4-10% across multiple processes).

@matejc a problem with FreeRDP, more precicely with our modified copy of https://github.com/webview/webview/
as for CPU you mean that this is the sdl-client usage? that might be higher (but it is quite a lot faster drawing stuff)

WITH_WEBVIEW_QT and running with sdl-freerdp with /log-level=debug ...
I am getting repeated messages with
[14:17:00:198] [772492:000bca2c] [DEBUG][com.freerdp.channels.rdpgfx.client] - [rdpgfx_read_h264_metablock]: H264_METABLOCK: numRegionRects: 1
[14:17:00:198] [772492:000bca2c] [DEBUG][com.freerdp.channels.rdpgfx.client] - [rdpgfx_read_h264_metablock]: regionRects[0]: left: 1824 top: 1152 right: 1840 bottom: 1168
[14:17:00:198] [772492:000bca2c] [DEBUG][com.freerdp.channels.rdpgfx.client] - [rdpgfx_read_h264_metablock]: quantQualityVals[0]: qp: 22 r: 0 p: 0 qualityVal: 100
[14:17:01:209] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:03:225] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:04:251] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:05:259] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:06:271] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:08:287] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:10:288] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12
[14:17:11:322] [772492:000bc98d] [DEBUG][com.freerdp.core.heartbeat] - [rdp_recv_heartbeat_packet]: received Heartbeat PDU -> period=1, count1=8, count2=12

I am unsure if there is any indication of problems in this log output, but is repeating constantly

@akallabeth yes, sdl-freerdp process is using one thread in full. I have 12th Gen Intel(R) Core(TM) i7-1260P so I suppose that the CPU usage is quite a bit more than expected

Also my CPU temp is over 80 degrees C when running sdl-freerdp. With xfreerdp is 20-30C less.

@matejc ok. that is tracked with https://github.com/FreeRDP/FreeRDP/issues/9189

I get the same error message after completing MFA in the authentication process.
Here are the last two lines from the console output:
[12:07:06:116] [11736:00002dd9] [DEBUG][com.freerdp.core.gateway.arm] - [arm_tls_connect]: connecting to afdfp-rdgateway-r1.wvd.microsoft.com 443
Overriding existing handler for signal 10. Set JSC_SIGNAL_FOR_GC if you want WebKit to use a different signal
a
(process:11775): libsoup-WARNING **: 12:07:32.804: gssapi step failed: No credentials were supplied, or the credentials were unavailable or inaccessible: SPNEGO cannot find mechanisms to negotiate

@matejc ok. that is tracked with #9189

I'm not sure... xfreerdp uses 0.03% of a CPU generally, obviously this isn't during media playback. sdl-freerdp was the same not so long ago but now it uses 1 (an entire CPU, all of the time).
It feels like a bug rather than just multi-threading not being implemented. I did try and track down the commit that introduced it but couldn't. It could also be sdl2 versions.
I'm glad im not the only one experiencing it though

@rlees85 did find the reason, fix is part of #9252

@akallabeth Is your comment related to the high CPU usage or to the "Redirection to URL with a scheme that is not HTTP(S)" error?
I just rebuilt from git and the latter does not appear to be fixed.

@Brueggus the high CPU usage is fixed with that. the HTTP(S) error is caused by incomplete implementation in https://github.com/webview/webview/
(help appreciated there, I currently don´t have time to finish the scheme handler implementation)
you can fix that by either disabling support for webview with -DWITH_WEBVIEW=OFF or using the Qt based implementation with -DWITH_WEBVIEW_QT=ON

I was testing with -DWITH_WEBVIEW_QT=ON (WITH_WEBVIEW was left out at that time, I do not know what is default), as mentioned here: https://github.com/FreeRDP/FreeRDP/issues/9274#issuecomment-1686136122
And I still got high CPU.
Only after I used -DWITH_WEBVIEW_QT=OFF and -DWITH_WEBVIEW=OFF the CPU usage of sdl-freerdp is at manageable levels (even similar to xfreerdp's one)

@matejc high CPU after closing the webview?
sorry, then you did not recompile, because the webview is only used for the oauth2 prompt

Experiencing the same issue as OP, is there any additional info we can provide to troubleshoot this?
CPU usage seems normal in my case
$ /opt/freerdp-nightly/bin/sdl-freerdp3 mycompany\ Workspace.rdpw /gateway:type:arm<EMAIL_ADDRESS>/sec:nla /cert:ignore +clipboard /network:auto /rfx /log-level:debug
[17:38:05:583] [185315:0002d3e3] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_experimental]: [experimental] /opt/freerdp-nightly/bin/sdl-freerdp3 client is currently experimental!
[17:38:05:583] [185315:0002d3e3] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_experimental]:  If problems occur please check https://github.com/FreeRDP/FreeRDP/issues for known issues or create a new one!
[17:38:05:583] [185315:0002d3e3] [WARN][com.freerdp.client.common.cmdline] - [freerdp_client_warn_experimental]:  Developers hang out in https://matrix.to/#/#FreeRDP:matrix.org?via=matrix.org - dont hesitate to ask some questions. (replies might take some time depending on your timezone)
[17:38:05:590] [185315:0002d3e3] [WARN][com.freerdp.client.common] - [freerdp_client_populate_settings_from_rdp_file]: This build does not support [MS-RDPECAM] camera redirection channel. Ignoring 'camerastoredirect'
[17:38:05:590] [185315:0002d3e3] [DEBUG][com.freerdp.client.common] - [freerdp_client_settings_parse_command_line]: This is 3.2.1-dev0 Build configuration: BUILD_TESTING=OFF WINPR_HAVE_AIO_H=1 WINPR_HAVE_EXECINFO_BACKTRACE=1 WINPR_HAVE_EXECINFO_BACKTRACE_SYMBOLS=1 WINPR_HAVE_EXECINFO_BACKTRACE_SYMBOLS_FD=1 WINPR_HAVE_EXECINFO_HEADER=1 WINPR_HAVE_FCNTL_H=1 WINPR_HAVE_GETLOGIN_R=1 WINPR_HAVE_GETPWUID_R=1 WINPR_HAVE_INTTYPES_H=1 WINPR_HAVE_POLL_H=1 WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIB=1 WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIBS= WINPR_HAVE_PTHREAD_MUTEX_TIMEDLOCK_SYMBOL=1 WINPR_HAVE_STDBOOL_H=1 WINPR_HAVE_STDINT_H=1 WINPR_HAVE_STRNDUP=1 WINPR_HAVE_SYSLOG_H=1 WINPR_HAVE_SYS_EVENTFD_H=1 WINPR_HAVE_SYS_FILIO_H= WINPR_HAVE_SYS_SELECT_H=1 WINPR_HAVE_SYS_SOCKIO_H= WINPR_HAVE_SYS_TIMERFD_H=1 WINPR_HAVE_TM_GMTOFF=1 WINPR_HAVE_UNISTD_H=1 WINPR_HAVE_UNWIND_H=1 WITH_AAD=ON WITH_ABSOLUTE_PLUGIN_LOAD_PATHS=ON WITH_ADD_PLUGIN_TO_RPATH=OFF WITH_ALSA=ON WITH_BINARY_VERSIONING=ON WITH_CAIRO=ON WITH_CCACHE=ON WITH_CHANNELS=ON WITH_CLANG_FORMAT=ON WITH_CLIENT=ON WITH_CLIENT_AVAILABLE=1 WITH_CLIENT_CHANNELS=ON WITH_CLIENT_CHANNELS_AVAILABLE=1 WITH_CLIENT_COMMON=ON WITH_CLIENT_INTERFACE=OFF WITH_CLIENT_SDL=ON WITH_CLIENT_SDL_AVAILABLE=1 WITH_CUPS=ON WITH_DEBUG_ALL=OFF WITH_DEBUG_CAPABILITIES=OFF WITH_DEBUG_CERTIFICATE=OFF WITH_DEBUG_CHANNELS=OFF WITH_DEBUG_CLIPRDR=OFF WITH_DEBUG_CODECS=OFF WITH_DEBUG_DVC=OFF WITH_DEBUG_EVENTS=OFF WITH_DEBUG_KBD=OFF WITH_DEBUG_LICENSE=OFF WITH_DEBUG_MUTEX=OFF WITH_DEBUG_NEGO=OFF WITH_DEBUG_NLA=OFF WITH_DEBUG_NTLM=OFF WITH_DEBUG_RAIL=OFF WITH_DEBUG_RDP=OFF WITH_DEBUG_RDPDR=OFF WITH_DEBUG_RDPEI=OFF WITH_DEBUG_RDPGFX=OFF WITH_DEBUG_REDIR=OFF WITH_DEBUG_RFX=OFF WITH_DEBUG_RINGBUFFER=OFF WITH_DEBUG_SCARD=OFF WITH_DEBUG_SCHANNEL=OFF WITH_DEBUG_SDL_EVENTS=OFF WITH_DEBUG_SDL_KBD_EVENTS=OFF WITH_DEBUG_SND=OFF WITH_DEBUG_SVC=OFF WITH_DEBUG_SYMBOLS=OFF WITH_DEBUG_THREADS=OFF WITH_DEBUG_TIMEZONE=OFF WITH_DEBUG_TRANSPORT=OFF WITH_DEBUG_TSG=OFF WITH_DEBUG_TSMF=OFF WITH_DEBUG_TSMF_AVAILABLE=0 WITH_DEBUG_URBDRC=OFF WITH_DEBUG_WND=OFF WITH_DEBUG_X11=OFF WITH_DEBUG_X11_LOCAL_MOVESIZE=OFF WITH_DEBUG_XV=OFF WITH_DSP_EXPERIMENTAL=OFF WITH_DSP_FFMPEG=ON WITH_DSP_FFMPEG_AVAILABLE=1 WITH_EVENTFD_READ_WRITE=1 WITH_FAAC=OFF WITH_FAAD2=OFF WITH_FFMPEG=ON WITH_FREERDP_DEPRECATED=OFF WITH_FREERDP_DEPRECATED_COMMANDLINE=ON WITH_FUSE=ON WITH_GFX_H264=ON WITH_GPROF=OFF WITH_GSM=OFF WITH_INTERNAL_MD4=OFF WITH_INTERNAL_MD5=OFF WITH_INTERNAL_RC4=OFF WITH_IPP=OFF WITH_JPEG=OFF WITH_KRB5=ON WITH_KRB5_NO_NTLM_FALLBACK=OFF WITH_LAME=OFF WITH_LIBRARY_VERSIONING=ON WITH_LIBRESSL=OFF WITH_LODEPNG=OFF WITH_MACAUDIO=OFF WITH_MACAUDIO_AVAILABLE=0 WITH_MANPAGES=ON WITH_MBEDTLS=OFF WITH_NATIVE_SSPI=OFF WITH_NEON=OFF WITH_OPENCL=OFF WITH_OPENH264=OFF WITH_OPENSC_PKCS11_LINKED=OFF WITH_OPENSSL=ON WITH_OPUS=ON WITH_OSS=ON WITH_PCSC=ON WITH_PKCS11=ON WITH_PLATFORM_SERVER=ON WITH_POLL=ON WITH_PROFILER=OFF WITH_PROXY=ON WITH_PROXY_APP=ON WITH_PROXY_EMULATE_SMARTCARD=OFF WITH_PROXY_MODULES=ON WITH_PULSE=ON WITH_RDTK=ON WITH_SAMPLE=ON WITH_SANITIZE_ADDRESS=ON WITH_SANITIZE_ADDRESS_AVAILABLE=1 WITH_SANITIZE_MEMORY=OFF WITH_SANITIZE_MEMORY_AVAILABLE=0 WITH_SANITIZE_THREAD=OFF WITH_SANITIZE_THREAD_AVAILABLE=0 WITH_SDL_IMAGE_DIALOGS=ON WITH_SDL_LINK_SHARED=ON WITH_SERVER=ON WITH_SERVER_CHANNELS=ON WITH_SERVER_INTERFACE=ON WITH_SHADOW=ON WITH_SMARTCARD_EMULATE=ON WITH_SMARTCARD_INSPECT=OFF WITH_SMARTCARD_PCSC=ON WITH_SOXR=OFF WITH_SSE2=OFF WITH_SWSCALE=ON WITH_SYSTEMD=ON WITH_THIRD_PARTY=OFF WITH_UNICODE_BUILTIN=OFF WITH_URIPARSER=ON WITH_VAAPI=OFF WITH_VAAPI_AVAILABLE=1 WITH_VALGRIND_MEMCHECK=OFF WITH_VALGRIND_MEMCHECK_AVAILABLE=0 WITH_VERBOSE_WINPR_ASSERT=ON WITH_VIDEO_FFMPEG=ON WITH_VIDEO_FFMPEG_AVAILABLE=1 WITH_WAYLAND=ON WITH_WEBVIEW=ON WITH_WEBVIEW_QT=OFF WITH_WINPR_DEPRECATED=OFF WITH_WINPR_TOOLS=ON WITH_WIN_CONSOLE=ON WITH_X11=ON WITH_XCURSOR=ON WITH_XEXT=ON WITH_XFIXES=ON WITH_XI=ON WITH_XINERAMA=ON WITH_XRANDR=ON WITH_XRENDER=ON WITH_XV=ON
Build type:          RelWithDebInfo
CFLAGS:              -g -O2 -ffile-prefix-map=/build/freerdp-nightly-3.0.0+0~20240205024826.1471~1.gbp763462=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wpedantic -Wno-padded -Wno-cast-align -Wno-declaration-after-statement -fPIC -Wall -fvisibility=hidden -Wimplicit-function-declaration -Wredundant-decls -g -fno-omit-frame-pointer -fsanitize=address -fsanitize-address-use-after-scope
Compiler:            GNU, 11.2.0
Target architecture: x64

[17:38:05:591] [185315:0002d3e8] [DEBUG][com.freerdp.core] - [freerdp_connect_begin]: resetting error state
[17:38:05:705] [185315:0002d3e3] [DEBUG][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_INPUT] Using udev for HIDAPI joystick device discovery
[17:38:05:731] [185315:0002d3e3] [DEBUG][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_INPUT] Using udev for joystick device discovery
[17:38:05:778] [185315:0002d3e8] [DEBUG][com.freerdp.client.common.cmdline] - [freerdp_client_load_static_channel_addin]: loading channelEx rdpdr
[17:38:05:778] [185315:0002d3e8] [DEBUG][com.freerdp.client.common.cmdline] - [freerdp_client_load_static_channel_addin]: loading channelEx rdpsnd
[17:38:05:778] [185315:0002d3e8] [DEBUG][com.freerdp.channels.channels.cliprdr.client] - [cliprdr_VirtualChannelEntryEx]: VirtualChannelEntryEx
[17:38:05:778] [185315:0002d3e8] [DEBUG][com.freerdp.client.common.cmdline] - [freerdp_client_load_static_channel_addin]: loading channelEx cliprdr
[17:38:05:778] [185315:0002d3e8] [DEBUG][com.freerdp.channels.drdynvc.client] - [drdynvc_VirtualChannelEntryEx]: VirtualChannelEntryEx
[17:38:05:778] [185315:0002d3e8] [DEBUG][com.freerdp.client.common.cmdline] - [freerdp_client_load_static_channel_addin]: loading channelEx drdynvc
[17:38:05:779] [185315:0002d3e8] [DEBUG][com.freerdp.primitives] - [primitives_autodetect_best]: primitives benchmark: only one backend, skipping...
[17:38:05:779] [185315:0002d3e8] [DEBUG][com.freerdp.primitives] - [primitives_autodetect_best]: primitives autodetect, using generic
[17:38:05:804] [185315:0002d3e3] [DEBUG][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_ERROR] Invalid renderer
[17:38:05:804] [185315:0002d3e3] [DEBUG][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_ERROR] Invalid window
[17:38:05:854] [185315:0002d3e8] [DEBUG][com.freerdp.core] - [freerdp_tcp_default_connect]: resetting error state
[17:38:05:854] [185315:0002d3e8] [DEBUG][com.freerdp.core] - [freerdp_tcp_default_connect]: connecting to peer <IP_ADDRESS>
[17:38:05:873] [185315:0002d3e3] [INFO][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_RENDER] OpenGL shaders: ENABLED
[17:38:05:873] [185315:0002d3e3] [INFO][com.freerdp.client.SDL] - [winpr_LogOutputFunction]: [SDL_LOG_CATEGORY_RENDER] Created renderer: opengl
[17:38:05:881] [185315:0002d3e8] [DEBUG][com.freerdp.core.gateway.arm] - [arm_tls_connect]: connecting to afdfp-rdgateway-r1.wvd.microsoft.com 443
Overriding existing handler for signal 10. Set JSC_SIGNAL_FOR_GC if you want WebKit to use a different signal

(process:185412): libsoup-WARNING **: 17:38:15.007: gssapi step failed: No credentials were supplied, or the credentials were unavailable or inaccessible: SPNEGO cannot find mechanisms to negotiate

@gs250427 the issue is located and known, just hard to fix ;)
if you require a graphical webview for your connections compile with -DWITH_WEBVIEW=ON -DWITH_WEBVIEW_QT=ON (you need qt5 dev headers installed)


Implementation of periodic purging

can you fix the CI please?

can you fix the CI please?

Fixed ones that are related. Pushed to rretriable clients pr since some of the things are already fixed there


Missing device API and data

The following data are not returned:

root password change
os version of the device
turn off / turn on wifi

Is it possible to turn wifi off?
When changing WiFi Network, is there a way to choose the WiFi interface?

Recap

root password change
os version of the device
turn off / turn on wifi
get current interface


[SPARK-38678][TESTS] Enable RocksDB tests on Apple Silicon on MacOS

What changes were proposed in this pull request?
This PR aims to enable RocksDB-related test coverage on Apple Silicon on MacOS.

In kvstore, remove the following in RocksDBSuite and RocksDBIteratorSuite Java test.

assumeFalse(SystemUtils.IS_OS_MAC_OSX && SystemUtils.OS_ARCH.equals("aarch64"));

Remove ExtendedRocksDBTest test tag.
Remove ExtendedRocksDBTest test tag annotation from the following core module tests.

HistoryServerDiskManagerSuite
HybridStoreSuite
AppStatusListenerSuite

Remove ExtendedRocksDBTest test tag annotation from the following streaming module tests.

RocksDBStateStoreIntegrationSuite
RocksDBStateStoreSuite
RocksDBSuite

Remove RocksDBStateStoreProvider exclusion from providerOptions.

StreamingSessionWindowSuite

Why are the changes needed?
RocksDB 7 supports Apple Silicon officially.
Does this PR introduce any user-facing change?
No. This is a dev-only change.
How was this patch tested?
Manually test on Apple Silicon environment with Java 17.
$ build/sbt "kvstore/test" "core/testOnly *RocksDB*" "sql/testOnly *RocksDB*" "sql/testOnly *.StreamingSessionWindowSuite"

Thank you, @viirya !

All tests passed in https://github.com/apache/spark/pull/35993/commits/24abff91e5c6f7fbcd37a9ea734c820beade4fff  and Java linter is fixed at https://github.com/apache/spark/pull/35993/commits/d9ae2cb8031167a84795186b93539b1af873f4b7. The Python linter is irrelevant to this PR.
annotations failed mypy checks:
[23](https://github.com/dongjoon-hyun/spark/runs/5726920552?check_suite_focus=true#step:15:23)
python/pyspark/pandas/ml.py:62: error: Incompatible types in assignment (expression has type "Index", variable has type "MultiIndex")  [assignment]
[24](https://github.com/dongjoon-hyun/spark/runs/5726920552?check_suite_focus=true#step:15:24)
python/pyspark/pandas/frame.py:6133: error: unused "type: ignore" comment
[25](https://github.com/dongjoon-hyun/spark/runs/5726920552?check_suite_focus=true#step:15:25)
python/pyspark/pandas/frame.py:6292: error: Incompatible types in assignment (expression has type "Index", variable has type "MultiIndex")  [assignment]
[26](https://github.com/dongjoon-hyun/spark/runs/5726920552?check_suite_focus=true#step:15:26)
Found 3 errors in 2 files (checked 325 source files)

Merged to master.

LGTM + 1, thanks @dongjoon-hyun ~~~

Thank you, @LuciferYang !