client-side apply applies manifest partially

What happened:
I used kubectl apply to apply a change to a Kyverno policy. Only part of the change was applied.
when I used kubectl apply --server-side all the changes were applied
What you expected to happen:
I expected client-side kubectl apply to correctly apply all the changes, just like server-side apply does.
How to reproduce it (as minimally and precisely as possible):

You'll need the Kyverno cluster policy CRD. If you have Kyverno installed, it's already installed as part of all the CRDs.
If not, I put just the cluster policy CRD in a gist. You can install it like so:
$ kubectl apply -f https://gist.githubusercontent.com/the-gigi/a287130c5ac76d71bde84e39ba709022/raw/4936ab70e9f3874483db6917d5d1bd502861dbba/clusterpolicies.kyverno.io.yaml --server-side

customresourcedefinition.apiextensions.k8s.io/clusterpolicies.kyverno.io serverside-applied

Then install the policy:
$ echo '
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
  name: disallow-pod-anti-affinity
spec:
  validationFailureAction: Enforce
  failurePolicy: Ignore
  rules:
    - name: disallow-pod-anti-affinity
      match:
        any:
          - resources:
              kinds:
                - Deployment
                - StatefulSet
      exclude:
        all:
          - resources:
              namespaces:
                - ns-1
                - ns-2
      validate:
        message: >-
          Policy Violation: Workload with pod anti-affinity not allowed by policy.
        pattern:
          spec:
            template:
              spec:
                =(affinity): {}
' | kubectl apply -f -

clusterpolicy.kyverno.io/disallow-pod-anti-affinity created

Now, apply the following change using client-side apply.
echo '
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
  name: disallow-pod-anti-affinity
spec:
  validationFailureAction: Enforce
  failurePolicy: Ignore
  rules:
    - name: disallow-pod-anti-affinity
      match:
        any:
          - resources:
              kinds:
                - Deployment
                - StatefulSet
      exclude:
        all:
          - resources:
              namespaces:
                - ns-3
      validate:
        message: >-
          Policy Violation: Workload with pod anti-affinity not allowed by policy.
        pattern:
          spec:
            template:
              spec:
                =(affinity):
                  X(podAntiAffinity): null
' | kubectl apply -f -

clusterpolicy.kyverno.io/disallow-pod-anti-affinity configured

The expected changes are:

the excluded namespaces should be just ns-3, instead of ns-1 and ns-2
the spec affinity at the bottom should be X(podAntiAffinity): null instead of '{}'

However, only the 1st change was actually applied:
$ kubectl get clusterpolicies disallow-pod-anti-affinity -o yaml | yq '.spec.rules[0]'
exclude:
  all:
    - resources:
        namespaces:
          - ns-3
match:
  any:
    - resources:
        kinds:
          - Deployment
          - StatefulSet
name: disallow-pod-anti-affinity
validate:
  message: 'Policy Violation: Workload with pod anti-affinity not allowed by policy. '
  pattern:
    spec:
      template:
        spec:
          =(affinity): {}

Now, let's repeat the same command except we will use server-side apply
echo '
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
  name: disallow-pod-anti-affinity
spec:
  validationFailureAction: Enforce
  failurePolicy: Ignore
  rules:
    - name: disallow-pod-anti-affinity
      match:
        any:
          - resources:
              kinds:
                - Deployment
                - StatefulSet
      exclude:
        all:
          - resources:
              namespaces:
                - ns-3
      validate:
        message: >-
          Policy Violation: Workload with pod anti-affinity not allowed by policy.
        pattern:
          spec:
            template:
              spec:
                =(affinity):
                  X(podAntiAffinity): null
' | kubectl apply --server-side --force-conflicts -f -

clusterpolicy.kyverno.io/disallow-pod-anti-affinity serverside-applied

Now, all is well including the affinity in the spec
$ kubectl get clusterpolicies disallow-pod-anti-affinity -o yaml | yq '.spec.rules[0]'                   kind-trouble | default
exclude:
  all:
    - resources:
        namespaces:
          - ns-3
match:
  any:
    - resources:
        kinds:
          - Deployment
          - StatefulSet
name: disallow-pod-anti-affinity
validate:
  message: 'Policy Violation: Workload with pod anti-affinity not allowed by policy. '
  pattern:
    spec:
      template:
        spec:
          =(affinity):
            X(podAntiAffinity): null

Anything else we need to know?:
kubectl patch works like a charm. This command fixes the issue:
kubectl patch clusterpolicy disallow-pod-anti-affinity --type=json -p='[{"op": "replace", "path": "/spec/rules/0/validate/pattern/spec/template/spec/=(affinity)", "value": {"X(podAntiAffinity)": null}}]'

And, this command sets it to the original value
kubectl patch clusterpolicy disallow-pod-anti-affinity --type=json -p='[{"op": "replace", "path": "/spec/rules/0/validate/pattern/spec/template/spec/=(affinity)", "value": {}}]'

In addition, I ran the client-side apply with verbose logging, which shows the request body that kubectl uses and indeed it is missing the 2nd change to the affinity. Here is the relevant snippet from the output
"spec":{"rules":[{"exclude":{"all":[{"resources":{"namespaces":["ns-3"]}}]},"match":{"any":[{"resources":{"kinds":["Deployment","StatefulSet"]}}]},"name":"disallow-pod-anti-affinity","validate":{"message":"Policy Violation: Workload with pod anti-affinity not allowed by policy. ","pattern":{"spec":{"template":{"spec":{"=(affinity)":{}}}}}}}]}}
I0714 21:44:19.239019   90445 round_trippers.go:466] curl -v -XPATCH  -H "User-Agent: kubectl1.25.2/v1.25.2 (darwin/amd64) kubernetes/5835544" -H "Accept: application/json" -H "Content-Type: application/merge-patch+json" 'https://<IP_ADDRESS>:54057/apis/kyverno.io/v1/clusterpolicies/disallow-pod-anti-affinity?fieldManager=kubectl-client-side-apply&fieldValidation=Strict'

Environment:

Kubernetes client and server versions (use kubectl version):

$ kubectl version --short
Flag --short has been deprecated, and will be removed in the future. The --short output will become the default.
Client Version: v1.25.2
Kustomize Version: v4.5.7
Server Version: v1.25.6

Cloud provider or hardware configuration:

MacBook Pro M1 Max

OS (e.g: cat /etc/os-release):
macOS Venture

Client side apply has some known issues(I'm sure there should be a duplicate issue of this one but I couldn't have found it) (especially applying when null values) and as we tried to move to server side apply and suggest users to use server side apply, I think we can close this as not planned.

/close


add Python version / package versions?

I would like to add the Python version / package versions. It seems that some packages only work on Python 3.10. I added that in the docs. I guess it would make sense to add package versions as well, @Flova  could you help me out or even add them here when appropriate?

We use ros noetic, which is based on Ubuntu 20.04.
The targeted python version for Ubuntu 20.04 is python 3.8 as stated here: https://wiki.ubuntu.com/FocalFossa/ReleaseNotes
I would strongly prefer using the base python version of the Ubuntu release as it makes makes our life way easier (e.g. on lab machines where we have no root access. There are ways around it but we want to keep the setup easier for people that are not that into python and ros.
That being said I currently don't have a Ubuntu 20.04 machine that is capable of training my vision code, so I would prefer targeting a wider range for that.
We can also use something like poetry to calculate our dependency graph for a range of python versions and lock the packages, so the setup is the same everywhere. But it is a bit more complex as one would need to install poetry, install the deps with it and source also the poetry environment.

Which ones where only compatible with 3.10?

abjad==3.15
@Flova

Also #8 adds new deps, so we might want to wait for them and bump this one. Or we merge this one now and add versions in the other PR.

if you are fine with sentencepiece lets merge this @Flova


Offline copy?

Hi Team,
To be able to run Install-PackageProvider you need to be local administrator. But as we all know it is a security risk if your local administrator account have access to internet. So how I could get offline copy (download by my regular account with less credentials) and then do the local installation?

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

ID: 5f3177f5-67dd-8077-335a-4528f01662c9
Version Independent ID: 1ca59e2b-35f8-34c8-19ec-609bf8d11527
Content: Install-PackageProvider (PackageManagement)
Content Source: reference/6/PackageManagement/Install-PackageProvider.md
Product: powershell
GitHub Login: @joeyaiello
Microsoft Alias: jaiello

@SteveL-MSFT @sdwheeler  I'm going to move this issue to Package Management since Install-PackageProvider is a Package Management cmd.

@Petri-X you can track this issue in our PackageManagement repository https://github.com/OneGet/oneget/issues/414#issue-391909029


mat-select option not showing selected value

values display when open select, but when select one no action in option instead of displaying name of selected value.
data coming from api, when it was static was working fine? if this related.
"@angular/core": "~7.1.0",
"@angular/forms": "~7.1.0",
"@angular/material": "^7.2.2"
 <mat-form-field floatLabel="auto">
  <mat-select  formControlName="AccountTypeId">
    <mat-option *ngFor="let acc of account_types" [value]="acc.id">
      {{ acc.AccountTypeNameArabic }}
    </mat-option>
  </mat-select>
</mat-form-field>

Sorry, but this isn't a lot to go on. Closing for now, but it can be reopened if there's more info or a Stackblitz showing the issue.

I am also facing this issue in Angular 7.
I am using dynamic forms with formfactory in angular 7.
When I try to pass these values to the dropdown component then the material dropdown doesn't displays the selected value. The value is indeed there as I've checked it after debugging and on search, the value is passed correctly.
However, the value is not showing as pre-selected in the dropdown.
If I try to manually select any other value then it is displaying normally.
Here is the code from my dropdown component where I've used the material dropdown:
<mat-form-field>         <mat-label >{{ model.label}}</mat-label>       <mat-select          [(value)] = "model.value"        [formControlName]="model.key"         [placeholder]="model.placeholder"        [disabled]="model.disabled"        (onChange)="onChange.emit($event)"        (onInput)="onInput.emit($event)"         (onFocus)="onFocus.emit($event)"        (onBlur)="onBlur.emit($event)"        [(ngModel)]="model.value"        [value] = "1">          <mat-option  *ngFor="let option of model.options" [value]="option.value">{{option.label}}         </mat-option>        </mat-select>     </mat-form-field>
Here is the part of snippet from my actual parent ts file where I've used dynamic forms and used formfactory:
` this.practiceDropdown= new Dropdown({
key: "practiceId",
label: "Practice",
});`

I set value on this dropdown by following code:
setInputs() {;   this.formDropdown.get("practiceId").setValue(this.practiceId);  }
Please note that the dropdown works fine if I use Primeng dropdown in the dropdown component instead of the angular material dropdown.:
<p-dropdown      [options]="options"      [placeholder]="model.placeholder"     [disabled]="model.disabled"     [autoWidth]="false"      (onChange)="onChange.emit($event)"     (onInput)="onInput.emit($event)"      (onFocus)="onFocus.emit($event)"     (onBlur)="onBlur.emit($event)"     [formControlName]="model.key"     ></p-dropdown>
Any leads would be appreciated.
Cheers!


Scan and Evalutaion into csv

Hi, thanks for your answers on #144.
About the first question, I am currently trying to add the result from the evaluation into the csv file. This is because I believe it will be a better way to select the best models when using Predict(). Right now I just open and write the .csv file in my scripts after the scan ... not always feasible ...
You mentioned new available tools in your answer, is there any doc about them and what version to use ?
Also, I have access to a computing network (handled with slurm) and I wanted to split the trainings between different nodes (CPU, of course slower than a GPU but since there is only one of the latter and hundreds or the former ... parallel wins over serial). SO basically I just split the experiment dict into smaller ones and distribute them over the different nodes. And in the end I concatenate the csv for analysis.
But this poses a problem when appending the csv file due to the file stageout. Is something related to that being investigated or in the making ?

I will put together an example Notebook for the new features. Will try to do it today.
In the meantime, can you clarify the meaning of "stageout" here. Also, did I gather it correctly that what you are doing now for parallelism, is completely automated?

For the evaluation result to go into csv, I will look into this as well. I think it makes sense to have that as an option as it's consistent with Scan().


charger/easee: comment

@philm5 I‘m sure you are aware that we hold a copyright on the easee.go. I‘m kindly asking you to not make modifications of it publicly available. Thank you.

Sorry this was unintentional. I wanted to try to remove that as the test token is currently being revoked. I wanted to test my easee wallbox before sponsoring:
[main  ] FATAL 2024/12/28 15:56:13 sponsortoken: rpc error: code = Unknown desc = token blocked due to public exposure, please generate new token or contact<EMAIL_ADDRESS>for support

Ahh, sorry, let me fix the test token! Should be fixed in 5min.


Keep getting "[Errno 110] Connection timed out" when python run.py

Is it normal? Or is it just me?
Traceback (most recent call last):
  File "run.py", line 34, in main
    bot.run()
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/slackbot/bot.py", line 34, in run
    self._client.rtm_connect()
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/slackbot/slackclient.py", line 42, in rtm_connect
    self.parse_slack_login_data(reply)
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/slackbot/slackclient.py", line 63, in parse_slack_login_data
    self.websocket = create_connection(self.login_data['url'])
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/websocket/_core.py", line 489, in create_connection
    websock.connect(url, **options)
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/websocket/_core.py", line 216, in connect
    options.pop('socket', None))
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/websocket/_http.py", line 67, in connect
    sock = _open_socket(addrinfo_list, options.sockopt, options.timeout)
  File "/home/user/.virtualenvs/slackbot/lib/python2.7/site-packages/websocket/_http.py", line 109, in _open_socket
    sock.connect(address)
  File "/usr/local/opt/python-2.7.9/lib/python2.7/socket.py", line 224, in meth
    return getattr(self._sock,name)(*args)
error: [Errno 110] Connection timed out

I'm going to close this because I haven't had any problems anymore. I might have done something wrong. Apologies.


natively support Structured Field Values

What is the feature you are proposing?
Structured Field Values is the standard spec for serialize structured object into http header value.

RFC 8941: Structured Field Values for HTTP

https://www.rfc-editor.org/rfc/rfc8941.html

It already referrered by tons of newly defined http specs.

References to RFC 8941

https://datatracker.ietf.org/doc/rfc8941/referencedby/

And also,  IETF HTTP Working Group currently working on retrofit SFV with existing headers.

Retrofit Structured Fields for HTTP

https://httpwg.org/http-extensions/draft-ietf-httpbis-retrofit.html

So we can say it's a best practice to use SFV for headers, not JSON in any headers.
For avoiding developer using JSON or any other format, or SFV like format via hand-made-string-concat, Hono can natively support SFV encoder/decoder and guide developer to use it.
for example.
c.res.headers.append('Cache-Status', 'OriginCache; hit; ttl=1100, "CDN Company Here"; hit; ttl=545')

can be type gurded, by require SFList for value when key is Cache-Status.
c.res.headers.append('Cache-Status',  sfv.encodeList([{
  "value": "Symbol(OriginCache)",
  "params": {
   "hit": true,
   "ttl": 1100
  }
 },
 {
  "value": "CDN Company Here",
  "params": {
   "hit": true,
   "ttl": 545
  }
 }
]))

FYI: I published typed SFV library to npm https://github.com/jxck/structured-field-values
Thanks.

Hi @Jxck !
It's very interesting, and your library seems very good. If we implement it, we will add the feature to c.header(). I'll try to investigate the SFV more. Thanks.

Hi @yusukebe
What do you think about implementing structured field values (SFV) following the RFC 8941 for our headers? It could streamline our communication, making it more standardized and efficient.
Some points to think about:

Standardization: Aligning with RFC 8941 ensures our headers adhere to established standards, improving interoperability.
Efficiency: Structured field values keep data representation compact, reducing bandwidth usage.
Clarity: The structured syntax enhances readability and simplifies debugging.

However, there is a con. This may take a while because many programmers don't know SFV.


Examples

Hi, have examples to use?

Check out https://github.com/danhol86/dh-messages-api/blob/master/build/test.js
Not looked at this for over a year, so not sure if still works....

Hi, have examples to use?

Was a couple of bugs, which hacked to get to work now. If call 'npm run start' then should now generate the qr code link and the test will generate a new QR code image in the folder. Once this has done, comment out New() in test.ts and can use the Existing();

Examples now added with docker


PFLOTRAN reader not able to read new file

After opening a file and plotting it, it is not possible to delete the plot and close the file and open a new file. I get the original file opened at the beginning of the session. This is on a Mac running Mac OS X, but also occurs with linux, so I suspect there is a problem with the reader. Attached are two visit files pflotran1.h5 and pflotran.h5. I am not able to open pflotran.h5 after first opening pflotran1.h5 and then closing the file and trying to open pflotran.h5. It is necessary to quit visit and then open pflotran.h5....Peter
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 643
Status: Resolved
Project: VisIt
Tracker: Bug
Priority: Normal
Subject: PFLOTRAN reader not able to read new file
Assigned to: Jeremy Meredith
Category: -
Target version: 2.2.2
Author: Peter Lichtner
Start: 03/05/2011
Due date:
% Done: 0%
Estimated time:
Created: 03/05/2011 04:29 pm
Updated: 03/30/2011 01:43 pm
Likelihood: 5 - Always
Severity: 3 - Major Irritation
Found in version: 2.0.1
Impact:
Expected Use:
OS: All
Support Group: DOE/SciDAC
Description:
After opening a file and plotting it, it is not possible to delete the plot and close the file and open a new file. I get the original file opened at the beginning of the session. This is on a Mac running Mac OS X, but also occurs with linux, so I suspect there is a problem with the reader. Attached are two visit files pflotran1.h5 and pflotran.h5. I am not able to open pflotran.h5 after first opening pflotran1.h5 and then closing the file and trying to open pflotran.h5. It is necessary to quit visit and then open pflotran.h5....Peter
Comments:
I only see the "pflotran.h5" file in the attachments. I haven't attached many files, so I don't know what to suggest maybe you could try re-attaching the second ("pflotran1.h5") file again and see if it sticks? As per email exchange with Jeremy, I reassigned to him. However, we still need example data files to reproduce and test. I recall Cyrus mentioning some issues with file attachments on our redmine site. Will email him about it. Here is another try to upload a different file to read. Correction: Support Group: SciDAC...Peter I changed the PFLOTRAN reader to be very aggressive about closing HDF5 ID's when done with them. I also changed other readers: Pixie no longer claims it can read PFLOTRAN files, and Chombo and H5Part now properly close the file when they give up on reading it. This closes off a few avenues where symptoms like this might crop up, so my hope is that the combination of these fixes resolves the issue.

0654_pflotran.h5.zip
0654_pflotran1.h5.zip


CNVkit deprecated option "loh" used

I was just running a number of targeted sequencing samples with the CNVkit option. Then this error appeared. The loh option does not seem to be used when assigning batches.
bcbio_nextgen version: 1.0.0
cnvkit version: 0.8.1
Seems this option was removed from CNVkit in 0.8.0: https://github.com/etal/cnvkit/releases/tag/v0.8.0
CalledProcessError: Command '/home/ubuntu/local/share/bcbio/anaconda/bin/cnvkit.py loh -t -s /bioinf-data/work/structural/14M23_S8/cnvkit/raw/14M2653_S8-sort-chromfilter.cns -o /bioinf-data/work/structural/14M23_S8/cnvkit/raw/tx/tmp6sk4Wq/14M23_S8-sort-loh.pdf /bioinf-data/10112-cnv-testrun-5/work/freebayes/14M23_S8-filter-14M23_S8.vcf.gz
usage: cnvkit.py [-h]

                 {batch,target,access,antitarget,coverage,reference,fix,segment,call,diagram,scatter,heatmap,breaks,gainloss,gender,metrics,segmetrics,import-picard,import-seg,import-theta,export,version}
                 ...
cnvkit.py: error: invalid choice: 'loh' (choose from 'batch', 'target', 'access', 'antitarget', 'coverage', 'reference', 'fix', 'segment', 'call', 'diagram', 'scatter', 'heatmap', 'breaks', 'gainloss', 'gender', 'metrics', 'segmetrics', 'import-picard', 'import-seg', 'import-theta', 'export', 'version')
' returned non-zero exit status 2
___________________________________________________________________________
ubuntu@ip-172-31-7-159:/bioinf-data/work$ cnvkit.py loh -h
usage: cnvkit.py [-h]
                 {batch,target,access,antitarget,coverage,reference,fix,segment,call,diagram,scatter,heatmap,breaks,gainloss,gender,metrics,segmetrics,import-picard,import-seg,import-theta,export,version}
                 ...
cnvkit.py: error: invalid choice: 'loh' (choose from 'batch', 'target', 'access', 'antitarget', 'coverage', 'reference', 'fix', 'segment', 'call', 'diagram', 'scatter', 'heatmap', 'breaks', 'gainloss', 'gender', 'metrics', 'segmetrics', 'import-picard', 'import-seg', 'import-theta', 'export', 'version')

I was mistaken. The svplot option results in loh being called.

Ben -- thanks so much for the heads up and apologies about missing this. I pushed a fix to remove the loh plot from CNVkit plots, so if you update to the latest development: bcbio_nextgen.py upgrade -u development it should hopefully work cleanly for you.

Will try that in a moment. Amazing how quick you are with fixes. Thanks!


let state chart handle transition itself using nodepath, delete _handle_transition() in state class

Hi, I am new to your plugin and love your work!
In the current implementation, the transition logic is eventually done by state's _handle_transition() method, where lots of recursive stuff is involved. I find that the process of  determining the parent-child relationship between state nodes are performed repeatedly, things like: is_ancestor_of(target), if target in get_children(), etc. I'm worried this might have an impact on performance.
Here I try to let the state chart handle the transition, using the nodepath between source state and target state. In this way, no parent-child relationship check is needed as the nodepath tells it clearly. I tried all your example and currently found no conflicts yet.
However,  as I am not familiar with godot's profiler, I can't tell if this change can really improve the performance or just do the opposite. I will be appreciated if you can review this PR or even test its performance!

I really wish you created an issue before spending time on this PR. You probably spent a lot of time on this and while I appreciate the effort I really can't merge this.
Please let me lay out my reasoning for this:
First, we have not established that there is actually a problem that needs solving. The PR  is based on a hunch that something may be bad for performance without bringing any evidence. There is a performance test harness part of the project and right now 1000 state charts doing transitions require about 0.5-0.8ms of script time per frame. To me this looks absolutely reasonable and most projects will never even come close to this amount of live state charts.
Second, we don't have any evidence that this new code will actually improve things. I gave it a quick shot with the profiler and I couldn't see any difference - we were still between 0.5 to 0.8ms per frame. Now depending on how the state chart is setup and how you measure stuff numbers may be different but from what I see there is no discernible difference in performance.
Finally, this PR changes the very heart of how the library works internally. I have no doubt that it works for the examples as you tested with them, but the examples only are a smoke test and every change in transition handling can subtly change how the state chart as a whole behaves. Event order may change, evaluation order of guards may change, state activation order may change and all of this can have unexpected side effects on existing projects. As you can tell by the amount of comments I added to the logic this was very hard to get right. And your change even may have gotten it right on first try. But validating this is a lot of work for which I don't currently have the bandwidth and I would have to deal with the fallout if there were bugs introduced by this.
So all in all it just doesn't make sense to merge this. It fixes no problem, the proposed changes have no measurable impact on performance and merging it would potentially introduce new bugs.

Thanks for your reply! Your concerns are reasonable. It's better to keep things unchanged then. Very like your plugin and Youtube tutorial, keep up the great work!


keybindings not work with vi mode in fish

Keybindings work with the default mode in fish, but not with the vi mode.
However I can use keybindings with vi mode after I executed function fzf_key_bindings in fish shell. If I open another shell, I need to do it again.
I tried adding fzf_key_bindings in the config.fish, so this function can execute automatically when I startup fish, but the keybindings still does not work.

Hi, vi mode was added to fish pretty recently, right? Unfortunately I personally don't use fish and don't have enough experience or knowledge on fish. Looking for contribution.

It looks like that in vi mode the keybindings  in fzf_key_bindings.fish will be overwritten by vi mode keybindings or just make no effect, I am not sure. Anyway I can use keybindings by executing `fzf_key_bindings' in fish shell after launching it.

Can you share your configuration file?

# config.fish

set fisher_home ~/SourcePackages/fisherman
set fisher_config ~/.config/fisherman
source $fisher_home/config.fish

fish_vi_mode

I use fisherman to manage the plugins for fish, i only installed theme-agnoster, fasd and pkg-fasd

Related: https://github.com/fish-shell/fish-shell/issues/2254
So probably this will be fixed in the next release of fish. The comments in the issue imply that the user key bindings should be written with both emacs and vi mode in mind. But fortunately fzf key bindings already work just as expected in both modes.

From my quick investigation it seems that (.config/fish/config.fish):
set fish_key_bindings fish_vi_key_bindings

Is changing the function that is going to be called to set keybindings. It was previously fish_user_key_bindings and FZF installed it's bind hook in .config/fish/functions/fish_user_key_bindings.fish, but it's not going to be ignored.
As a workaround I've moved the bindings into .config/fish/functions/fish_prompt.fish. It can be outside of the function fish_prompt and still works.
I'm doing some personal trickery (haven't used fzf install script), so just for reference I have appened:
source .fzf/shell/key-bindings.fish
fzf_key_bindings

I found a simple solution, which seems to me like the proper way to configure using both the fzf keybindings and fish vi keybindings. I added fish_vi_key_bindings to the file ~/.config/fish/functions/fish_user_key_bindings.fish, before the fzf_key_bindings line. My file looks like this:
fish_vi_key_bindings
fzf_key_bindings

Note that this is on fish 2.2.0.
I think this is not an fzf issue—just a quirk of how configuration works in fish. I suggest adding a note  in the README file in the Tips section mentioning this for people who want to use the vi key bindings and close the issue.

This should be fixed in fish 3.0 via https://github.com/fish-shell/fish-shell/pull/5195 - that causes fish to not erase all bindings every time a binding function is called.
So I'd say this is a fish problem and can be closed.


Add armv7-unknown-linu-gnueabihf to installers

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

r? @steveklabnik


what is difference between listed pretrained models

Hi, I want to ask that what is difference between "PGDbase" and "PGDtrained" model listed in here for MNIST dataset. Also, there seems to exist two Cleverhans MNIST for mnist which I found in your code here, what is difference between these two model? Final, can you provide training detail that how is these models pretrained? for example, how many epoch used to train each of these model or some setting?

The "cleverhans" means the model architecture is from the MNIST example in Cleverhans. We have two models with the same prefix, one is adversarially trained while the other is not, so that you can compare the robustness property.
Sorry, I didn't document the training protocol for the models.
Best,
-Weilin


i18n PT

Issue Summary
So have some issues with camelcase files in languages directory
Steps to Reproduce

Change your language to pt-PT
Refresh the page

Additional info

Postleaf version: lastest
PHP version: 7
Affected browsers: tested on Firefox and Chrome
Operating system: Xubuntu 16.04

I'hve fixed renaming the file:
app/source/languages/pt-pt.php -> app/source/languages/pt-PT.php
I think that doesn't need an pull request, but I can do it if you like :smile:

Well, I've created an pull request to fix that and add PT-BR translation :dancer:
#69

As mentioned in #69, this needs to be addressed in Language.php so we can obtain the filename/path independent of the language code.
Thanks for reporting this!

Oh, sure! :dancer:
Should I make new pull request to add pt-BR translation or aren't need?

Nah, the file will stay the same. Just need to change how it's referenced (currently using the language code, but it will change to use the actual pathname).

Sorry, I mean add translantion to Brazilian Portuguese(pt-br), rigth now just have Portuguese(pt) translation.

Whoops, sorry! Didn't notice that the PR was for pt-br! I'll accept now and adjust for consistency.

@claviska Could you do the same in pt-br?
because:
Language pack not found: pt-BR.php

Missed that one. Done.


Update links in framework/configure-apps folder

replace redirected links
replace site-relative links with file-relative links

Contributes to #15560

@mairaw Thanks for the review!


chore: remove anyerror and unreachable Result returns

First, this removes the anyerror dependency and instead uses thiserror to expose parsing errors. Secondly, this makes many getx() and setx() functions return an Option instead of a Result<T, FooErr>. The main reason for this change is that it follows the std's convention (e.g. Vec::get). Finally, this patch removes all Result return types that do not ever return an error.

This looks like a really helpful change! I think that using results for tree edit operations is still necessary however, as I would like an error to be thrown if the edit operation is infeasible.

Which edit operations should be able to return an Err(_)? I noticed that there are a few asserts (e.g. https://github.com/sriram98v/phylo-rs/pull/23/files#diff-9794019b962b882943346745baf52516c9f655c4198f992f64bfdb6bd545f9d2R738-R742) but these would panic and not return an error.

Right, never mind! I meant to add errors to the SPR, NNI, and TBR traits, but I haven't gotten to it yet. Currently, I will add those soon. I would say leave those traits unchanged for the time being (SPR, NNI, and TBR); the other changes in this pull request look fine to me. I will send a "request change" to this PR


ChatOps commands unresponsive

I'm currently trying to use Slack to deploy applications to Heroku. I would run the basic deploy command once then it wouldn't work after that. I would just like some assistance on what I may have missed.

Have you added your heaven as a receiver for the repo's webhooks?

No, I haven't. I didn't believe I needed to add it.

I added some stuff recently that should help with this kind of setup error.


Should I worry about the memory usage?

As data grows, there will be more rows and columns, will pilosa run out of memory. As I see, there is only api for setting data, not deleting data, except remove the whole index.

@young118 you will definitely need to consider memory usage as data grows.
Currently there are a couple of options, but both require down time.

You can add nodes to the cluster to increase the amount of memory available
You can stop pilosa, remove data files, restart pilosa. This option gives you greater granularity than deleting an entire index; you can delete fields, or event specific shards within a field.

I'll see if we currently have an issue open pertaining to more granular data deletion. If not, we can track that request here.

@travisturner So in option 2, in my case, I hava some time fileds and some int fields.I see a standard file and a lot of standard_YMDH files in each time field, and a bsi_xxx file in each int filed.How can I remove the shard 0 data? Is the 0 file in each fragments the shard 0 data?Do I have to delete all the 0 files in each directory or I just have to delete some "base" 0 file and the others will be delete automatically?

@young118 yes, the 0 file in each fragments directory is the data file for shard 0 for that field. so if you wanted to delete shard 0 for all fields, you would have to delete all of the 0 files.


fn map9(fuzz_a: Fuzzer<a>, .., fuzz_i: Fuzzer<f>, f: fn(a, ..., i) -> result) -> Fuzzer<result>

https://github.com/aiken-lang/fuzz/pull/7


release: Helm release missing from index.yaml

The release 0.7.0-dev20200520  is not present in https://reanahub.github.io/reana/index.yaml however we can find it in the repository releases https://github.com/reanahub/reana/releases.
This needs to be fixed as the Helm executable relies on index.yaml to fetch the latest release.

This specific case has been addressed in https://github.com/reanahub/reana/pull/316 by releasing manually. The problem is that we are using on tag push event and we were pushing the tags reana-X.Y.Z | reana-X.Y.Z-devYYYYMMDD which is what Chart Releaser relies on, so:

We push the tag
The GitHub action runs
Chart Releaser detects no changes as the tag is already created

Some real solutions:

Trigger manually
Push two tags: one tag to trigger the GitHub actions, second tag with the format previously stated which will be created by Chart Releaser
Others? Here the list of possible events that can trigger GitHub Actions workflows

P.S.: It wasn't straight forward to come to this conclusion as GitHub actions, contrary to Travis CI or REANA, do not have a notion of history of previous workflow runs for a single workflow/commit/pull request/branch, one can see the history of different workflow/commit/pull request/branch.

I would also go for (b). It might seem that we're triggering too many releases but I think it's because we're in a helm early stage. I want to think that in the future our charts will be more stable and won't trigger so many GitHub Actions workflows.


Measure history r cv fix

Test with CMS111v5
measure history was not properly handling continuous variable measures (measures with OBSERV values). this code makes it so measure history does properly handle those measure types.
Note: there are pre-existing issues with the saved expected OBSERV values populating correctly in the patient builder. This seems to be unrelated to the measure history changes. I've added an internal bug: BONNIE-353.

there are tests for this in the queue of tests for this sprint, but none currently in existence.


Are the cargo crates released to crates.io?

Are the cargo crates released to crates.io? If no, is there a plan for releasing it to crates.io? Thank you!

Hey, the crates are not released, we have no reason to release them on crates.io at the moment, but if you need any of the modules, you can fork the repo, copy and paste the crates into your project directly or publish the crates on your own crates.io account, everything is MIT, so anything here is yours too :)


using shelf_proxy as fallback handler in shelf_route

I'm trying to use proxy handler as a fallback handler for shelf_route like this:
Handler staticHandler = proxyHandler("http://localhost:8080/");
Router rootRouter = router(fallbackHandler: staticHandler);
handler = const Pipeline()
    .addMiddleware(logRequests())
    .addMiddleware(exceptionHandler())
    .addHandler(rootRouter.handler);

but it says the following:
Error thrown by handler.
Bad state: The 'read' method can only be called once on a shelf.Request/shelf.Response object.
package:shelf/src/message.dart 119:7           Message.read
package:shelf_proxy/shelf_proxy.dart 47:25     proxyHandler.<fn>
package:shelf_route/src/route_impl.dart 34:31  _BaseRoute.createHandler.<fn>.<async>

Is that by design or it's a bug?

This is caused by dart-lang/shelf#49.


Go to File not working with search.exclude

Issue Type: Bug
I have a folder in my Workspace as follows:
project-core
project-core/blocks/name/options.php
I have been trying to exclude the all .php files from project-core/blocks but have been unsuccessful. I have tried numerous restarts and in User settings.json and Workspace settings.json. All that I have tried:
		"files.exclude": {
			"**/project-core/blocks/**/*.php": true
		},
		"search.exclude": {
			"**/project-core/blocks": true,
			"project-core/blocks": true,
			"project-core/blocks/**/*.php": true,
			"**/project-core/blocks/**/*.php": true,
			"**/project-core/blocks/*": true,
			"./project-core/blocks": true
		}

Every time I Cmd+P (Go to file) and type options.php, I get results from under project-core/blocks/ too.
Note: This isn't listed in "recently opened". I have cleared that just in case too. But it's listed under file results.
Edit: Have the same issue with search too, despite cog icon being enabled next to files to exclude.
VS Code version: Code 1.42.1 (c47d83b293181d9be64f27ff093689e8e7aed054, 2020-02-11T14:44:27.652Z)
OS version: Darwin x64 16.7.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-7600K CPU @ 3.80GHz (4 x 3793)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_offsurface_control: disabled_offsurface_synchronization: enabled_onvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
5, 4, 5

Memory (System)
32.00GB (10.79GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none

Sorry, I figured out the problem. Looks like folder name isn't supported, as it's a relative path, and I have to use "/blocks" instead.
If I have two folders in my project:
project/blocks
project-core/blocks
And I only wish to exclude project-core/blocks, is there any way to do that?

You can create create per-folder settings using .vscode/settings.json inside of project-core or picking this folder in Settings UI (dropdown after Workspace) and add blocks/**/*.php to exclude pattern.
However it will hide these files from explorer too.

Seems like this has been answered. Thanks @IllusionMH
Thus closing


all the test and downloading part done

Also checks if the directory exists or not, before downloading.

travis failing due to network problems on their end. the code is ok


Change print statement to print function

This change is to hepl prepare the code for Python 3 compatibility.

Request is against wrong repository


It's not finding templates on Windows 10

I have following package versions:
coverage==4.4.1
Django==1.11.1
django-coverage-plugin==1.5.0
pytest==3.0.7
pytest-cov==2.5.1
pytest-django==3.1.2

.coveragerc contains:
[run]
plugins =
    django_coverage_plugin

Running pytest with:
pytest --cov-report term-missing --cov=core

correctly calculates coverage for the Python files in core but doesn't find any of the templates.
Running the same command, code and venv on a Linux machine works as expected and finds the templates.

Thanks for the bug report, @tolomea
I don't have access to a windows system for testing, but I'm currently at pycon and I'll try to see if I can scrounge up someone to help on sprint Monday.

Let me know if there is any additional information I can provide or experiments I could do.

I am running into the same issue on my project. What would be needed to solve this problem?

I've been running into the same issue. I believe I've found the cause of this bug.
In plugin.py line 151 the plugin gets the path to the django template library template directory by importing django.template and then accessing the __file__ attribute of the module. In line 169 it then compares every filename it is given to this path.
For some reason the path returned by __file__ doesn't have the exact capitalization of the actual Windows path to the module - the python standard library directory name Lib is returned as lib. I believe this is a bug in the CPython implementation. However I was not able to find anything on the CPython bugtracker about this, and I don't feel well versed in CPython internals enough to report it as a bug there. I found this question on stackoverflow which indicates that this has been an issue for a while, but unfortunately doesn't seem to have been considered as a bug by the answerer. If anyone wants to report it as a bug, please do so.
The way the __file__ capitalization causes this bug is when the filenames are compared in line 169 - the provided filenames do have the proper capitalization of Lib, and the check does a case-sensitive .startswith check, which then always fails, leading to the plugin never executing the code it needs to work.
An easy workaround/fix for the bug is to do the comparison case-insentively by converting both the path returned by __file__ and the provided filename to lowercase, either by calling the .lower() method, or by passing them to os.path.normcase() (which more or less does the same). I can confirm that this fixes the bug in my installation. However this might cause other problems when the paths contain Unicode characters, I haven't tested that.

(This part is less directly related to the issue. I apologize if this is deemed as too off-topic.)
While looking through the plugin source to find the cause of this bug, I got a bit puzzled by the way the plugin works. From what I understand from the code, it registers itself to trace every file in django.template and then tries to pull out the template paths, as well as info about node boundaries, from any function called render with appropriate function locals when it is called, and uses this info to build the coverage data.
This approach seems a little odd to me, especially as the plugin doesn't actually intend to trace the contents of django.template, but rather the templates themselves, which coverage.py doesn't handle. This appears to me like it could be rather inefficient, and would run into problems once the Django developers introduce another function somewhere in the code that is also named render and has similar function locals.
Since the information of which parts of the template get traced and which ones aren't can be inferred from which Nodes have render called, wouldn't it also be possible to accomplish template coverage by monkey-patching nodes' render method with a decorator-like function that records that the node was executed (including the boundary information), and then passes the call through to the original render method?
I admit that this method would be more of a hack than an actual solution, but it seems cleaner to me than the current approach.
Again, I apologize for digressing from the original bug, and I don't want to make it sound like I'm trying to tell the maintainers what to do, I just now stumbled upon this project and so don't know the whole picture.

Thanks @bugreport1234! That's very helpful.
It sounds like running CI tests on Windows testing just got added to my to-do list. Some of the code provided by Martijn Pieters in the Stack Overflow looks to be directly relevant, too. Thank you for linking directly to the issue!
I can't speak for the other co-maintainers, but I'm currently focused on trying to fix bugs and add documentation. Once we're stable and have tests for all of the current issues, I'd be happy to look at performance improvements or a refactor of the code, but can't commit to a timeline on that front. Thanks for bringing it up, though!

I'm putting Windows CI in place (as part of moving from Travis to GitHub Actions), and the test suite is failing.  In my case, it's because of these different environment variable definitions:
HOME = C:\Users\runneradmin
TEMP = C:\Users\RUNNER~1\AppData\Local\Temp
TMP = C:\Users\RUNNER~1\AppData\Local\Temp

I don't know why TEMP is a shortname while HOME is a longname.  But this breaks a comparison happening in coverage.py.

I think this is now fixed in d287548.  Let me know if it does or doesn't work.


Update Syn - 0.0.3

Any specific reason why not to use latest version on https://github.com/bitovi/syn , which is 0.1.4?

0.1.x  is not compatible

do they have any kind of changelog or upgrading doc to explain what the incompatibilities are ?

One of the biggest change is the renaming from Syn to syn for their global variable.
It would still be great to upgrade to a maintained version of the library, even though it requires a bit more work

We can use (syn || Syn) to access it then. No big deal for using latest version.

@aik099 no need to use this IMO. If we upgrade to the new lib, we can simply use the new name.

OK.

Please merge, this version works better, the change of Syn to syn, In think is a big change (other version of Mink)

the change of Syn to syn I think is a big change (other version of Mink)

This can only be problematic to whoever extended the driver and have created new methods that make use of ->withSyn() because most of these methods have Syn. hardcoded which now would be invalid.
And again we can just do window.Syn = window.syn; to solve that problem for custom Selenium2 driver based drivers.

Please merge, this version works better

Please explain in detail what means works better. It's most unlikely that Syn developers would release new versions is that works worse, than previous version.

The current version (from 2010 more or less) is older than this version (30 Jun 2014) and you don't need to upgrate all the library maybe for MinkSelenium2Driver 1.3.1
Obviously when you upgrade from v0.0.3 to v0.1.5 or v0.2.0 you need to renaming from Syn to syn, maybe for MinkSelenium2Driver 1.4.0

The Syn is just an internal dependency. Upgrading it doesn't bring any new features to the driver, so no feature release is necessary. Just a regular patch release.

For example in some project (complex project with a javascript and css) with the old version when we use "keypress" and auto drag happens, and thinks like that.
Please tell us if you want upgrade this old library from 2010 without control version like you can see in https://github.com/bitovi/syn and https://github.com/bitovi/syn/releases to the v0.0.3 from 2014 like we proposed.
We want to send more PRs, but if this is proccess is so burocratic we prefered use other tool or a fork.
Thanks

We want to send more PRs, but if this is proccess is so burocratic we prefered use other tool or a fork.

It's simple really. Currently outdated version of Syn library is used. Thanks for informing us about that. You're proposing to upgrade to another outdated version of it. Why not upgrade to the latest version. If something needs to be changed in the driver code (e.g. replacing Syn to syn), then this can be done as part of the PR.
After looking back at previous posts I can't find any specific reason why you won't want to use 0.1.x (or even 0.2.x, that was released 5 days ago) and still want to stick to to 0.0.x releases.

Jump to 0.2.x is the end of the road, the natural way is:

Syn  Version
MinkSelenium2Driver

0.0.x
patch the current version

0.2.x + other functionalities*
new MickSelenium2Driver version

*Other functionalities like typing

Ah, I see now. You want to do a Syn upgrade via several PRs, where this one upgrades to latest 0.0.x and next PR upgrades to 0.2.x?

Yes!

@stof , this can be merged now. Tests pass as well.

@stof ?

Ok, merging this (even though I don't understand the need to perform the upgrade in 2 steps, given that all the upgrade work would end up in the same step anyway)


Peer package update causes unexpected major version bump for v0 packages

Example:
package-a 0.1.0
package-b 0.1.0, it has a peer dependency of package-a
Update package-a:
package-a 0.1.0 => 0.2.0
Expected result:
package-b 0.1.0 => 0.2.0
Actual result:
package-b 0.1.0 => 1.0.0
As far as I know, the fixture related to this issue is not used.

Hm, I guess that your suggestion makes sense - it's worthwhile to only bump the minimal version required so this could be adjusted for 0.x packages. PR are welcome 😉


NoSuchBucket Error when trying to deploy a customized solution

I was following this guide to deploy the AWS Serverless Image Handler. I used the given template, and I was able to successfully deploy it.
However, I want to customise the code so that it can use query parameters like in the issue 57. So I forked the repository, made the change, but haven't been able to replace the old lambda with my new customised one.
I used the following commands to build my project on the Mac OS.
cd deployment ./build-s3-dist.sh my-bucket
After the build was done, I uploaded the following to my S3 bucket my-bucket
serverless-image-handler-custom-resource.zip
serverless-image-handler-ui.zip
serverless-image-handler.zip
I went on to create the stack from the generated .template file. The first couple of steps passed, but then the creation failed with the following error.
Error occurred while GetObject. S3 Error Code: NoSuchBucket. S3 Error Message: The specified bucket does not exist (Service: AWSLambda; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: 6b666b56-dc62-11e8-acb0-8df0d82e071b)
Could someone point out what could be wrong in the steps that I did?

I am confused by this instruction.
source-bucket-base-name should be the base name for the S3 bucket location where the template will source the Lambda code from. The template will append '-[region_name]' to this value. For example: ./build-s3-dist.sh solutions. The template will then expect the source code to be located in the solutions-[region_name] bucket
For example if my bucket's name is my-bucket and it's in the region eu-central-1 and I've built the project with the command ./build-s3-dist.sh my-bucket, where exactly should the source code be located?
Should it simply be in the my-bucket, should I create another bucket called my-bucket-eu-central-1 or what should I do? However, I did try both of the above, and in both cases got NoSuchBucket error while deploying.

release v3.1.0 has been pushed, please see README for the instructions for building custom deployment on Amazon Linux

sudo ./build-s3-dist.sh $DIST_OUTPUT_BUCKET $VERSION

For example if my bucket's name is my-bucket and it's in the region eu-central-1 and I've built the project with the command ./build-s3-dist.sh my-bucket, where exactly should the source code be located?
your source code should be in my-bucket-eu-central-1 and you should be testing the deployment in eu-central-1, make sure you provide version in the build command as well.


Errors when unzip the files from baidu drive

Hello! I meet the error "gzip: stdin: invalid compressed data--format violated" when deal with  the file Anet_v1-3_train_val.tar. I down load the split128 from baidu drive and conduct the "cat" to generate the file Anet_v1-3_train_val.tar. How can I solve this problem?

same problems, have you slove it ?

No. Have you solved it yet?

same problems, have you slove it
No. Have you solved it yet?

same problems, have you slove it
No. Have you solved it yet?

not yet, still “gzip: stdin: invalid compressed data--format violated"

same problems, have you slove it
No. Have you solved it yet?

not yet, still “gzip: stdin: invalid compressed data--format violated"

Any solution?


Update GNN  stellargraph with DGL

Description

This PR replaces stellargraph reference in the training & validation scripts. This will address the issue #945  & #925

Checklist

[x] I am familiar with the Contributing Guidelines.
[x] New or existing tests cover these changes.
[x] The documentation is up to date with these changes.

FYI, we will be targeting 23.11 for this PR

Consider renaming examples/gnn_fraud_detection_pipeline/stages to examples/gnn_fraud_detection_pipeline/src since model.py isn't a stage.

/OK to test

/ok to test

/ok to test

/merge


Removed version 97 reference in dom-leaks article

Stable is 98, and about to switch to 99 this week. So 97 is outdated and our docs can assume that everyone has got it.
So I'm removing the reference to this version from the dom-leaks article.
Fixes #1770.

Before: https://docs.microsoft.com/en-us/microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks#open-the-detached-elements-tool
After: https://review.docs.microsoft.com/en-us/microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks?branch=pr-en-us-1772#open-the-detached-elements-tool
https://review.docs.microsoft.com/en-us/microsoft-edge/devtools-guide-chromium/experimental-features/?branch=pr-en-us-1772#experiments-which-are-turned-on-by-default - added Detached Elements (on by default for external users since v97)

Docs Build status updates of commit 041ded7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 0f10acd:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 9ac510a:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:warning:Warning
View
Details

microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/experimental-features/index.md

Line 48, Column 3: [Warning: bookmark-not-found] Cannot find bookmark '##emulation-support-dual-screen-mode' in 'devtools-guide-chromium/experimental-features/index.md', did you mean '#emulation-support-dual-screen-mode'?

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 023fa8e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 0c0adc7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit a58b25e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/memory-problems/dom-leaks.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


FI-3023: Add default env vars and documentation to validator dockerfile

Summary
In anticipation of inferno-resource-validator v1.0.59, this sets two new environment variable defaults in the docker image:

SESSION_CACHE_IMPLEMENTATION=PassiveExpiringSessionCache

Previously the PassiveExpiringSessionCache was the only implementation but then a different session cache was added, without support for a "never expire" value

SESSION_CACHE_DURATION=-1

Sets the session cache to "never expire". This is set on every test kit currently, but it makes more sense to keep these defaults here so we don't have to update dozens of test kits if things change behind the scenes like this.

And adds documentation explaining these variables plus the recommended update sequence when there's a new version.
Note I added the = to the other env var lines because I got warnings like this from the build otherwise:
 - LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line 20)

Testing Guidance
To build the image for 1.0.59 and load it locally without pushing to docker hub, run:
docker buildx build --platform linux/arm64 --build-arg "PROJECT_VERSION=1.0.59" --tag "infernocommunity/inferno-resource-validator:1.0.59" --load .

(this is the same as the build script in the same folder, but with --load instead of --push and only building for arm64)
After that, this can be tested directly against g10 by running this branch: https://github.com/onc-healthit/onc-certification-g10-test-kit/pull/592

Update: 1.0.59 was just now released so marking this as draft while I test that out

Looks like no additional changes needed for 1.0.59 so moving forward with that


Add configuration for BLS to choose the device of output tensors

This PR adds a new configuration to explicitly choose a device for receiving output tensors from BLS calls. The preferred memory can be set within the constructor of InferenceRequest with a new objcect PreferredMemory using parameters preferred_memory_type and preferred_device_id.
Added testing: https://github.com/triton-inference-server/server/pull/5580

@Tabrizian I like this solution more than the fix I implemented. I wish there was an easy way to limit the size of these additional buffers during the BLS definition. It's sort of unknown until you thoroughly test every combination imaginable and see how much memory is getting used. In most of our use cases, the behaviour is data-dependent, and it becomes even harder to predict the usage. I would rather the model fail the execution and return than cause memory issues on the running Triton. Testing for reliability would become much easier then.

I wish there was an easy way to limit the size of these additional buffers during the BLS definition. It's sort of unknown until you thoroughly test every combination imaginable and see how much memory is getting used. In most of our use cases, the behaviour is data-dependent, and it becomes even harder to predict the usage.

@ashafaei This seems like a separate feature request. Please open a feature request here: https://github.com/triton-inference-server/server.


Click on  tag doesn't work.

I am using Angular 1.4.8 with full jQuery 1.11.3 so .bind method differs from default Angular jqLite.
In jQuery: source

Returning false from a handler is equivalent to calling both .preventDefault() and .stopPropagation() on the event object.

I have ng-file-upload directive which wrapping some content where are few links and if I add ngf-select and ngf-select-disabled click on these link doesn't work.
jsfiddle with jQuery + Angular click on link doesn't work
jsfiddle with Angular click on link works

Fixed at 11.1.0


Why is the training speed too slow and is the performance so weird on 4 Titan X GPU ?

For bugs or installation issues, please provide the following information.
The more information you provide, the more likely people will be able to help you.
Environment info
Operating System: Ubuntu 14.04.5
Compiler:  gcc 4.8.4
Package used (Python/R/Scala/Julia): python
MXNet version:
Or if installed from source:  installed by git clone https://github.com/dmlc/mxnet.git ~/mxnet --recursive
MXNet commit hash (git rev-parse HEAD):
If you are using python package, please provide
Python version and distribution: python 2.7.13 anaconda 4.3.0
If you are using R package, please provide
R sessionInfo():
Error Message:
Please paste the full error message, including stack trace.
Minimum reproducible example
if you are using your own code, please provide a short script that reproduces the error.
Steps to reproduce
or if you are running standard examples, please provide the commands you have run that lead to the error.

What have you tried to solve it?

Build environment
nvidia 375.26, cuda 8.0, gcc 4.8.4, ubundu 14.04.5, cudnn 5.1
When I use 4 pascal GPUs ( Titan X) to retrain ResNet 50 from model_load_epoch=90 on imagenet'12 dataset. The speed is very slow. Furthermore, the accuracy is also wrong. The following picture shows two procedures. And there are two weird accuracy. ( MXNET is the latest version )
I don't know why. Before change to pascal GPU, I use 4 M40 GPU have no issue ( Old MXNET version, please see the second picture ) .

Obviously, this is an abnormal phenomenon.
Normally, the results should be shown following as

@ap-hynninen Any idea?

I've trained resnet on Titan X Pascal and didn't see a slow down. How does the code perform when you run it on a single Titan X Pascal ?

@ap-hynninen  Sorry for late reply. We need some time to test.
We uses pre-installed mxnet example, first, we train cifar 10 with single GPU,   with python train_cifar10.py --gpus 7. There is no problem. The training procedure is listed as following
➜  image-classification git:(master) ✗ sudo python train_cifar10.py --gpus 7
INFO:root:start with arguments Namespace(batch_size=128, benchmark=0, data_nthreads=4, data_train='data/cifar10_train.rec', data_val='data/cifar10_val.rec', disp_batches=20, gpus='7', image_shape='3,28,28
', kv_store='device', load_epoch=None, lr=0.05, lr_factor=0.1, lr_step_epochs='200,250', max_random_aspect_ratio=0, max_random_h=36, max_random_l=50, max_random_rotate_angle=0, max_random_s=50, max_random
_scale=1, max_random_shear_ratio=0, min_random_scale=1, model_prefix=None, mom=0.9, monitor=0, network='resnet', num_classes=10, num_epochs=300, num_examples=50000, num_layers=110, optimizer='sgd', pad_si
ze=4, random_crop=1, random_mirror=1, rgb_mean='123.68,116.779,103.939', test_io=0, top_k=0, wd=0.0001)
[10:23:37] src/io/iter_image_recordio.cc:221: ImageRecordIOParser: data/cifar10_train.rec, use 4 threads for decoding..
[10:23:37] src/io/iter_image_recordio.cc:221: ImageRecordIOParser: data/cifar10_val.rec, use 4 threads for decoding..
[10:24:34] src/operator/./cudnn_convolution-inl.h:55: Running performance tests to find the best convolution algorithm, this can take a while... (setting env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to
disable)
INFO:root:Epoch[0] Batch [20]   Speed: 1322.98 samples/sec      Train-accuracy=0.152530
INFO:root:Epoch[0] Batch [40]   Speed: 1388.75 samples/sec      Train-accuracy=0.171875
INFO:root:Epoch[0] Batch [60]   Speed: 1375.13 samples/sec      Train-accuracy=0.221094
INFO:root:Epoch[0] Batch [80]   Speed: 1383.92 samples/sec      Train-accuracy=0.225000
INFO:root:Epoch[0] Batch [100]  Speed: 1390.25 samples/sec      Train-accuracy=0.246484
INFO:root:Epoch[0] Batch [120]  Speed: 1363.02 samples/sec      Train-accuracy=0.260937
INFO:root:Epoch[0] Batch [140]  Speed: 1377.46 samples/sec      Train-accuracy=0.262109
INFO:root:Epoch[0] Batch [160]  Speed: 1386.32 samples/sec      Train-accuracy=0.291406
INFO:root:Epoch[0] Batch [180]  Speed: 1402.37 samples/sec      Train-accuracy=0.289062
INFO:root:Epoch[0] Batch [200]  Speed: 1375.69 samples/sec      Train-accuracy=0.299219
INFO:root:Epoch[0] Batch [220]  Speed: 1389.71 samples/sec      Train-accuracy=0.313672
INFO:root:Epoch[0] Batch [240]  Speed: 1398.73 samples/sec      Train-accuracy=0.310156
INFO:root:Epoch[0] Batch [260]  Speed: 1374.34 samples/sec      Train-accuracy=0.317578
INFO:root:Epoch[0] Batch [280]  Speed: 1391.53 samples/sec      Train-accuracy=0.332031
INFO:root:Epoch[0] Batch [300]  Speed: 1382.85 samples/sec      Train-accuracy=0.335547
INFO:root:Epoch[0] Batch [320]  Speed: 1353.69 samples/sec      Train-accuracy=0.358203
INFO:root:Epoch[0] Batch [340]  Speed: 1371.99 samples/sec      Train-accuracy=0.344922
INFO:root:Epoch[0] Batch [360]  Speed: 1395.19 samples/sec      Train-accuracy=0.364844
However, we train with 2 GPUs, the training speed is extremely slow:
➜  image-classification git:(master) ✗ sudo python train_cifar10.py --gpus 6,7
INFO:root:start with arguments Namespace(batch_size=128, benchmark=0, data_nthreads=4, data_train='data/cifar10_train.rec', data_val='data/cifar10_val.rec', disp_batches=20, gpus='6,7', image_shape='3,28,28', kv_store='device', load_epoch=None, lr=0.05, lr_factor=0.1, lr_step_epochs='200,250', max_random_aspect_ratio=0, max_random_h=36, max_random_l=50, max_random_rotate_angle=0, max_random_s=50, max_random_scale=1, max_random_shear_ratio=0, min_random_scale=1, model_prefix=None, mom=0.9, monitor=0, network='resnet', num_classes=10, num_epochs=300, num_examples=50000, num_layers=110, optimizer='sgd', pad_size=4, random_crop=1, random_mirror=1, rgb_mean='123.68,116.779,103.939', test_io=0, top_k=0, wd=0.0001)
[10:25:19] src/io/iter_image_recordio.cc:221: ImageRecordIOParser: data/cifar10_train.rec, use 4 threads for decoding..
[10:25:19] src/io/iter_image_recordio.cc:221: ImageRecordIOParser: data/cifar10_val.rec, use 4 threads for decoding..
[10:25:22] src/operator/./cudnn_convolution-inl.h:55: Running performance tests to find the best convolution algorithm, this can take a while... (setting env variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to disable)
INFO:root:Epoch[0] Batch [20]   Speed: 7.56 samples/sec Train-accuracy=0.101562
So, please help us to solve this problem
Thank you very much.

I can't reproduce this. I think it's something to do with your particular setup. I suggest just trying things like
running in benchmark mode ( --benchmark 1), run it through a profiler that shows you where the CPU is spending it's time. You can profile the GPU with:
"nvprof python train_cifar10.py --gpus 6,7"
Look for the [CUDA memcpy HtoD] and [CUDA memcpy DtoH] tags, they tell you how much is spent in copying data between CPU and GPU.
Btw. Why are you running this under sudo?

@ap-hynninen
Sorry for late reply. We final find the reason by consulting our server vendor. This is a bug in how the Intel V4 Quick Path interconnect interfaces with PCI-E. Finally, we disable the ACS control in Bios->Advanced->Chipset Configuration->North Bridge->IO Configuration->Intel VT for Directed I/O(VT-d)->ACS Control.
But we have another issue about speed (xxx samples/sec) in training procedure. Please see this link https://github.com/dmlc/mxnet/issues/5365


Unbound variable logic in BindingSets is very confusing.

Current Behavior
The handling of unbound in the bindingsets is rather difficult.  And causes differences between iterator and getValue and getBinding access. With lots of space for subtle bugs.
@Test
	public void testUnbound() {
		QueryBindingSet bs1 = new QueryBindingSet();
		bs1.addBinding(String.valueOf(1), null);
		assertEquals(1, bs1.size());
		assertNull(bs1.getBinding("1"));
		assertTrue(bs1.hasBinding("1"));
		//This part fails
		Iterator<Binding> iterator = bs1.iterator();
		assertTrue(iterator.hasNext());
		Binding next = iterator.next();
		assertNull (next);
	}

I think it would be better to use a special marker value for Unbound and not use null. Current solution for #2741 requires a 3rd array to keep track of band settings.
Expected Behavior
I propose we introduce a singleton variable/type to mark unbound values. To allow for consistent and easier to track logic.
The following should then pass.
@Test
	public void testUnbound() {
		QueryBindingSet bs1 = new QueryBindingSet();
		bs1.addBinding(String.valueOf(1), UNBOUND);
		assertEquals(1, bs1.size());
		assertTrue(bs1.getBinding("1") instanceof Unbound);
		assertTrue(bs1.getBinding("1") == UNBOUND);
		assertTrue(bs1.hasBinding("1"));
		//This part passes
		Iterator<Binding> iterator = bs1.iterator();
		assertTrue(iterator.hasNext());
		Binding next = iterator.next();
		assertTrue(next.getValue() instanceof Unbound);
		assertTrue(next.getValue() == UNBOUND);
	}

Steps To Reproduce
No response
Version
4.0.0-develop
Are you interested in contributing a solution yourself?
Yes
Anything else?
No response

"Unbound" literally means there is no binding value for a particular variable, therefore  doing something like bs1.addBinding(String.valueOf(1), null) shouldn't even be possible IMO. This is also reflected in the javadoc of Binding itself, e.g. on the getValue method:
	/**
	 * Gets the value of the binding. The returned value is never equal to <var>null</var>, such a "binding" is
	 * considered to be unbound.
	 *
	 * @return The value of the binding, never <var>null</var>.
	 */
	Value getValue();

I agree there is a discrepancy here but if anything I'd argue that, rather than fixing the behavior of the iterator, we should be fixing the size method instead: it shouldn't count variables where the value is null, as those are not bindings. And/or possibly we should strength the input validation on BindingSet#addBinding to protest on getting a null value.
Fwiw I vaguely remember that we might be (ab)using the fact that BindingSet doesn't enforce a requireNonNull on the value argument in some places in the SPARQL engine. If that is indeed the case, let's go over those situations and see if we can solve them in a better way.

Yes, the sparql engine does push in null values in a binding in a number of
places. Which is very confusing and fragile. So I would like to fix it in
the engine.
On Tue, Dec 28, 2021, 01:17 Jeen Broekstra @.***> wrote:

"Unbound" literally means there is no binding value for a particular
variable, therefore doing something like bs1.addBinding(String.valueOf(1),
null) shouldn't even be possible IMO. This is also reflected in the
javadoc of Binding itself, e.g. on the getValue method:
/**	 * Gets the value of the binding. The returned value is never equal to null, such a "binding" is	 * considered to be unbound.	 *	 * @return The value of the binding, never null.	 */
Value getValue();
I agree there is a discrepancy here but if anything I'd argue that, rather
than fixing the behavior of the iterator, we should be fixing the size
method instead: it shouldn't count variables where the value is null, as
those are not bindings. And/or possibly we should strength the input
validation on BindingSet#addBinding to protest on getting a null value.
Fwiw I vaguely remember that we might be (ab)using the fact that
BindingSet doesn't enforce a requireNonNull on the value argument in some
places in the SPARQL engine. If that is indeed the case, let's go over
those situations and see if we can solve them in a better way.
—
Reply to this email directly, view it on GitHub
https://github.com/eclipse/rdf4j/issues/3530#issuecomment-1001808129,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHQYFMW5LTRGAIVHAWX2VLUTD62PANCNFSM5KLUHOCA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Yes, the sparql engine does push in null values in a binding in a number of places. Which is very confusing and fragile. So I would like to fix it in the engine.

I think the reason we did had to do with it sometimes being necessary to explicitly register a specific variable as unbound in a particular branch of the evaluation. I'll try and refresh my memory on this by digging through some code. Let's try and hash out a better approach. The unbound marker you suggested might not be a bad solution but I also want to look other options.


mrp add content-type for stdout

Description
MRP add "content-type"="text/plain" to all stdout/stderr logs collected from processes.
Type of change
Please check the options that are relevant.

[ ] Bug fix (non-breaking change that fixes an issue)
[ ] Proposes a change (non-breaking change that isn't necessarily a bug)
[ ] Refactor
[x] New feature (non-breaking change that adds a new functionality)
[ ] Breaking change (fix or feature that would break some existing functionality downstream)
[ ] This is a unit test
[ ] Documentation only change
[ ] Datasets Release
[ ] Models Release

Type of requested review

[ ] I want a thorough review of the implementation.
[x] I want a high level review.
[ ] I want a deep design review.

Before and After
Testing
Manually testing + existing unit tests.
Checklist:

[x] I have performed manual end-to-end testing of the feature in my environment.
[ ] I have added Docstrings and comments to the code.
[ ] I have made changes to existing documentation where needed.
[ ] I have added tests that show that the PR is functional.
[ ] New and existing unit tests pass locally with my changes.
[ ] I have added relevant collaborators to review the PR before merge.
[ ] [Polymetis only] I ran on hardware (1) all scripts in tests/scripts, (2) asv benchmarks.

Codecov Report

Merging #1130 (94146dd) into main (12ebf21) will increase coverage by 0.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1130      +/-   ##
==========================================
+ Coverage   34.13%   34.21%   +0.07%
==========================================
  Files         343      344       +1
  Lines       33408    33661     +253
==========================================
+ Hits        11405    11516     +111
- Misses      22003    22145     +142

Impacted Files
Coverage Δ

agents/droidlet_agent.py
41.50% <0.00%> (ø)

interpreter/craftassist/tasks.py
75.90% <0.00%> (+0.36%)
:arrow_up:

interpreter/robot/tests/world.py
75.18% <0.00%> (+0.72%)
:arrow_up:

lowlevel/minecraft/pyworld/physical_interfaces.py
90.55% <0.00%> (+2.36%)
:arrow_up:


dart2js: deprecate using abstract for methods

The specification no longer allows using the abstract modifier for methods. We should deprecate the syntax -- and remove it very soon.

Verified that an abstract method is a compile time error in 79a8654e5fb30dfce902636961d6a5ffb69e6f85


Add android kernel support via android emulator

Rel: https://source.android.com/docs/setup/create/cuttlefish-cts


OmniSharp does not seem to work with vim-plug when loading for filetypes.

When I try to load OmniSharp via vim-plug only for 'cs' filetypes it does not seem to be working.
For example:
call plug#begin("~/Vimfiles/plugged")
[...]
Plug 'OmniSharp/omnisharp-vim', { 'for': 'cs' }
[...]
call plug#end()

When I open up cs files, the plugin does not get loaded.
It does seem to work on some other plugins though, so I don't know whether this is a problem with omnisharp or vim-plug.
I am posting this here because maybe you might know the reason for it?
And generally speaking, how can I make it happen so that OmniSharp is only loaded when cs files are opened?
Thank you very much for helping :)

It's probably stuffing up the script load order, not sure. It's also totally unnecessary. If you launch vim to a non-cs buffer, OmniSharp-vim will only source a single script https://github.com/OmniSharp/omnisharp-vim/blob/master/plugin/OmniSharp.vim, which configures some defaults and prepares some autocmds. It's not going to affect your startup time. The heavy work doesn't begin until you open a .cs buffer.

Ah ok, thank you :)


Add fill-or-kill (FOK) BinanceTimeInForce

Adds FOK BinanceTimeInForce, documented in the official REST API and implemented in the Python client.

Thank you for merging this! Do you have any specific plans to release a 1.0.7 on Maven soon? (I need a FoK feature for my project).
Thanks for your work on this excellent library.

yes, 1.0.7 will be packaged and published on maven this week.
thanks for your contribution!

Hey - any updates on 1.0.7 (sorry for being annoying)?
Happy new year.

no problem, 1.0.7 is already visible as dependency
have happy holidays too!


Release 0.0.7 to NPM

Hello,
It would be nice to have the latest updates, i.e. the event emitters binding, released to NPM.
Cheers!

+1

bump

+1

Released 0.1.0.


Added caching of currently loading reference files

Coverage increased (+0.09%) to 95.336% when pulling b89bd4a2712b9290883c8cda8e0a0f4e9ea18cec on dev_detailed_check into 31f369d3057fb6d2eecd28a2b26dbc1d6550e7f6 on detailed_check.


Calling different tasks for different iteration

Hi,
May I check if it is possible to define multiple tasks in tasks.py and call just one of them based on certain condition. If it is possible, how to do it ?
My guess is to modify rainbow_example.json script with a if-condition (I am using the rainbow algorithm to train the model). But since the task in that script is defined with a cell I'm not sure how exactly to implement that.
Thank you very much.

You will have to create a task with the same interface as PickUpTask in tasks.py and in the config dict/file which get's passed to
env = AI2ThorEnv(config_dict=config_dict)
will have to include:
'task': {
            'task_name': 'PickUpTask',
            'target_objects': {'Mug': 1, 'Bowl': 5}
        }

I tried to define a new config_dict immediately after
state, done = env.reset(), False (line 157, rainbow main.py)
(inside the if logic) and load it by
env = AI2ThorEnv(config_dict=config_dict)
and it threw me error at line
next_state, reward, done, _ = env.step(action)  # Step  (line 162)
saying:
AttributeError: 'NoneType' object has no attribute 'metadata'
May I know what's wrong with my modification? Thank you so much.


Fix bug in find person feature

If I have a contact with module CS2040, searching by module with keyword CS2040S
should not return that contact.
Fixed this behaviour by removing now obsolete [MODULE_CODE] string representation
of module codes, and checking whether moduleCode.value contains search keyword,
and not the other way round
To be clear, if I have the following contacts with the respective module codes:

A: CS2040
B: CS2030
C: CS2030S

Searching:

find m/CS2040S will return nothing
find m/CS2030 will return both B and C
find m/CS2030S will only return B

Codecov Report

Merging #208 (ee885cc) into master (aa51a15) will increase coverage by 0.78%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master     #208      +/-   ##
============================================
+ Coverage     77.73%   78.52%   +0.78%
- Complexity      697      719      +22
============================================
  Files            97       97
  Lines          2165     2305     +140
  Branches        267      318      +51
============================================
+ Hits           1683     1810     +127
- Misses          388      393       +5
- Partials         94      102       +8

Impacted Files
Coverage Δ

...s/logic/parser/person/FindPersonCommandParser.java
88.23% <ø> (-0.34%)
:arrow_down:

...l/person/ModuleCodesContainsKeywordsPredicate.java
88.88% <100.00%> (ø)

...c/main/java/seedu/address/model/person/Remark.java
66.66% <0.00%> (-11.12%)
:arrow_down:

...in/java/seedu/address/model/person/TeleHandle.java
75.00% <0.00%> (-5.00%)
:arrow_down:

.../modulelesson/DeleteModuleLessonCommandParser.java
96.87% <0.00%> (-3.13%)
:arrow_down:

...in/java/seedu/address/model/person/ModuleCode.java
88.00% <0.00%> (-2.00%)
:arrow_down:

...ess/logic/commands/person/DeletePersonCommand.java
96.93% <0.00%> (-1.61%)
:arrow_down:

...seedu/address/storage/JsonAdaptedModuleLesson.java
77.27% <0.00%> (-0.86%)
:arrow_down:

...logic/parser/person/DeletePersonCommandParser.java
100.00% <0.00%> (ø)

...c/main/java/seedu/address/model/person/Person.java
92.98% <0.00%> (+0.82%)
:arrow_up:

... and 2 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update aa51a15...ee885cc. Read the comment docs.


[BUG] Pydantic Validation Error (APIResponse.hasMore)

Describe the bug
I'm utilizing FastAPI in conjunction with aiohttp to download TikTok videos. Recently I've been dealing with a strange Pydantic data validation error. It happens on and off. By this I mean some times I can issue many requests and successfully fetch and download videos by hashtag, other times I get met with this error and am unable to get any thing back. Then it'll start working again without any code changes. I'm not sure if this is a mismatch between TikTokPy's Pydantic Model for the expected response and TikTok's actual response or if it's TikTok possibly rate limiting.
This is the error:
{
  "detail":
    "An error occurred while retrieving videos: 1 validation error for APIResponse
    hasMore
    Field required [
      type=missing,
      input_value={'log_pb': {'impr_id': '2...10101, 'status_msg': ''},
      input_type=dict
    ]
  For further information visit https://errors.pydantic.dev/2.4/v/missing"
}

This is the chunk of code that fetches and downloads the videos, which is based off the documentation:
async def download_video(self, video: str, hashtag: str):
    if not video.image_post:
        logger.info("Attempting to download video: %s", video.id)
        filename = f"{hashtag.lower()}-{video.id}.mp4"
        url = video.video.download_addr
        file_path = os.path.join(self.video_directory, filename)
        try:
            async with self.session.get(
                url, headers={"referer": "https://www.tiktok.com/"}
            ) as response:
                if response.status != 200:
                    logger.error(
                        "Received HTTP %s when trying to fetch %s. Response Text: %s",
                        response.status,
                        url,
                        await response.text(),
                    )
                    return None

                with open(file_path, "wb") as file:
                    file.write(await response.read())
                logger.info("Video: %s download successful", filename)
                return file_path
        except Exception as e:
            logger.error("Error while saving the file: %s", e)
            return None

async def get_videos_by_hashtag(self, hashtag: str):
    local_videos = self.search_videos_local(hashtag)
    if local_videos:
        logger.info(
            "Found locally saved videos for hashtag %s: %s", hashtag, local_videos
        )
        return local_videos

    async with AsyncTikTokAPI() as api:
        try:
            logger.info("Attempting to retrieve videos for hashtag: #%s", hashtag)
            challenge = await api.challenge(f"{hashtag}", video_limit=3)
        except Exception as e:
            logger.error("Error while making call to tiktokapipy: %s", e)
            raise
        tasks = [
            self.download_video(video, hashtag) async for video in challenge.videos
        ]
        video_paths = await asyncio.gather(*tasks)
        return video_paths

I'm downloading the videos concurrently so I re-use the same aiohttp client session:

async def __aenter__(self):
    async with AsyncTikTokAPI() as api:
        self.session = ClientSession(
            cookies={
                cookie["name"]: cookie["value"]
                for cookie in await api.context.cookies()
                if cookie["name"] == "tt_chain_token"
            }
        )
    return self

async def __aexit__(self):
    if self.session:
        await self.session.close()

To Reproduce
Steps to reproduce the behavior:
It's hard to reproduce consistently. Sometimes I'm testing locally and it works and then all the sudden will start giving me that error over and over. Sometimes, I'll start my machine cold and spin up uvicorn/FastAPI and it'll start failing on the first try, continue failing for an hour+ and then start working again.
Expected behavior
It should consistently fetch, download, and serve the videos.
Version Information
Please include what versions of pydantic, playwright, and tiktokapipy you have installed:
pydantic==2.4.0
pydantic-extra-types==2.1.0
pydantic-settings==2.0.3
pydantic_core==2.10.0
playwright==1.38.0
tiktokapipy==0.2.3
fastapi==0.103.2
uvicorn==0.23.2
System Information
Local:
MacOS 14.0 Sonoma
Docker:
Base Image: ubuntu20.04
Region Information
London, UK

This should be fixed in 0.2.4. Closing as complete.


[Addition]: RisingHF in Shanghai, Chine

Hotspot b58 Addresses
11YXcEEQ4oBtvCPbNKvE1mGwFSBY1hkKE8HKBntwK9g19YDFVfk
and its witnesses
Discord Handle
No response
Reason(s)
They only witness themselves and have similar RSSI

Your Joined 3 hours ago Github.com?
The first move up is Denylist!
Since you care so much about helium? Why use a new account?
Doubt your motives?


Revert "[Numpy] Add qr backward part 2 for wide matrices with m < n"

Reverts apache/incubator-mxnet#18197 as test_np_linalg_qr does not pass and it blocks all development.
@D-Roberts feel free to submit a fix if you have one ready; alternatively I suggest to resubmit your PR together with the fix once it's ready. Thank you

@hzfan please don't merge PRs without verifying that the last CI run is recent. In this case you merged a PR where the CI has not verified it for multiple months.

@mxnet-bot run ci [unix-cpu]


v3.4.1 hidden-* utilities not working at specific widths

Operating system and version
Windows 10

Browser and version
Chrome 75, Firefox 68

Test Case
https://codepen.io/cpj22/pen/WVoKON

The following should be hidden at all device widths. At 767px, 991px, and 1199px widths, it becomes visible.

        this should always be hidden on all device widths!

I hope I'm missing something!

v3 is no longer actively supported, but couple notes:

Use .hidden instead of all those classes.
Nix the .row and .col-xs-12 unless you need grid classes, it's the same as a regular ol'
.
Since v4, we use fractional pixels to ensure media queries don't cause issues like the one you're seeing.


[wip] Attempt to reproduce conditions for #2161

:warning: :hand: Not ready for merge yet. Attempting to reproduce conditions for #2161 :hand: :warning:
cc/ @samshull @DullReferenceException

Is there a 1:1 correlation between reported errors and autofix? I'm not so sure the style checker reports problems, but the autofixer will add a space in one run, then remove it in the next.

@DullReferenceException I believe so, yes. With auto-fix enabled it would suppress the error and attempt to fix it.

Actually, after reviewing, allExcept:['shorthand'] would allow this to pass as expected in es6. You should close this issue.


SyntaxError in /clan/mm-gangster-pqllrrqq

Error in ClashLeaders
SyntaxError in /clan/mm-gangster-pqllrrqq
Unexpected end of input
View on Bugsnag
Stacktrace
(native):0 - parse

View full stacktrace
Created automatically via Bugsnag

An error linked to this issue has been reopened in Bugsnag
SyntaxError in /clan/iran-atishbar-9llgr292

An error linked to this issue has been marked as fixed in Bugsnag
SyntaxError in /clan/rdwn-prl0jvjy

An error linked to this issue has been marked as fixed in Bugsnag
SyntaxError in /clan/thd-l-rb-l9cgljp2

An error linked to this issue has been reopened in Bugsnag
SyntaxError in /clan/kurd-uprgjurr

An error linked to this issue has been marked as fixed in Bugsnag
SyntaxError in /clan/than-long-hoi-g9y9vyvy

An error linked to this issue has been reopened in Bugsnag
SyntaxError in /clan/besttergun-zhu-yi-xin-ge-qgcllvj8

An error linked to this issue has been reopened in Bugsnag
SyntaxError in /clan/aus-crew-2v2gj8lg

An error linked to this issue has been reopened in Bugsnag
SyntaxError in /clan/islam-lqyppy29

An error linked to this issue has been marked as fixed in Bugsnag
SyntaxError in /clan/gokturk-yy29gvjr

An error linked to this issue has been marked as fixed in Bugsnag
SyntaxError in /clan/pars-land-qu92ug2j

An error linked to this issue has been reopened in Bugsnag
SyntaxError in /clan/rbb-hlqh-h-prvj82up

An error linked to this issue has been marked as fixed in Bugsnag
SyntaxError in /clan/punjabi-ylrrgy8u


Getting error in npm test

Hi,
I am getting error in npm test ( jest test ). Is there any solution? Also this is creating problem in mobile center when running unit test.

Duplicate of #159 (you need to mock this lib)


Provide a way to suppress incubating warnings

APIs annotated as @Incubating show up in IntelliJ as nasty yellow warnings. It's good that you're calling out unstable APIs, but when I'm using those knowingly, I want to be able to clear these warnings.

Expected Behavior
I should be able to add a suppress annotation locally, or a compiler flag globally, to clear the warning highlights in code.
Current Behavior
No such annotation or compiler flag exists.
Context
The misleading warnings take time away from real ones. IntelliJ also shows more useful warnings that are code bugs (like NPE), but get lost among the incubating warnings.

These warnings are coming from you IDE, not Gradle.
All Gradle does, is use the annotations properly on non-stable (subject to change/break) code.
Have you tried using the standard suppressions?

->

Note: in some cases IDEA doesn't know that it could put the suppression on the statement or parent block, it only suggests @file:Suppress, I strongly recommend scoping your suppressions to the lowest possible scope:
class BuildTimeTrackerPlugin @Inject constructor(
	private val registry: @Suppress("UnstableApiUsage") BuildEventsListenerRegistry
) : Plugin<Project> {

Thank you for your response. I can confirm that @Suppress("UnstableApiUsage") does have the desired effect. Two follow up questions:

Is the suppression string documented somewhere because I couldn't find it.
I'd still like to be able to suppress globally by adding a compiler flag. I understand the risk that the suppression should be applied to the lowest scope.

It's the name of the IDEA Inspection. You cannot add a compiler flag, because it's in the IDE. You can add it by the menu item I'm showing, or once you learn it, manually. You can also press "Disable inspection" or "Edit inspection profile settings" (which shows the docs). In edit, you can tune it to your liking: e.g. you can remove the Gradle annotation from the list, or tune down the level to weak warning, typo, or other.

Thanks.


Annotations with multiple-line LET-INs

Following the bug report in #1946, type annotations in multiple-line LET-IN definitions do not work:
---- MODULE Apalache_M0 ----

EXTENDS Naturals, FiniteSets

\* @type: (Set(a), Set(b)) => Set(a -> b);
FSets(D, R) ==
    LET
        \* @type: Int -> Set(a -> b);
        F[n \in 0..Cardinality(D)] ==
            IF n = 0
            THEN {<<>>}
            ELSE
                LET
                    \* @type: Set(a -> b);
                    F0 == F[n - 1]
                    \* All functions in F0 have the same domain, choose any one
                    \* @type: a -> b;
                    f0 == CHOOSE f \in F0 : TRUE
                    \* @type: Set(a);
                    D_smaller == DOMAIN f0
                    \* @type: a;
                    d1 == CHOOSE d \in (D \ D_smaller) : TRUE
                    \* @type: Set(a);
                    D_bigger == D_smaller \union {d1}
                IN
                    {
                        [d \in D_bigger |-> IF d \in DOMAIN f THEN f[d] ELSE r]
                        : f \in F0, r \in R
                    }
    IN
        F[Cardinality(D)]

ASSUME
    \A d \in SUBSET (0..3) :
    \A r \in SUBSET (4..5) :
        [d -> r] = FSets(d, r)

====

We should figure out, whether this problem arises from SANY, or we translate the SANY representation incorrectly.

For the multiline LET-IN definitions, there is an easy workaround, e.g., we can rewrite the above example as:
                LET \* @type: Set(a -> b);
                    F0 == F[n - 1]
                IN
                LET   \* @type: a -> b;
                    f0 == CHOOSE f \in F0 : TRUE
                IN
                LET    \* @type: Set(a);
                    D_smaller == DOMAIN f0
                IN
                LET \* @type: a;
                    d1 == CHOOSE d \in (D \ D_smaller) : TRUE
                IN
                LET \* @type: Set(a);
                    D_bigger == D_smaller \union {d1}
                IN
...