OBJ-58 Part III: Folder Traversal

Description
This still has a little way to go, but I thought it'd be wise to go ahead and get some feedback. Requested changes can go in this PR or another (since this is going to a feature branch).
This PR contains the basic mechanisms for "folder traversal" of a Object Storage bucket.
How this works
There are three mechanisms used for folder traversal: prefix, delimiter, and marker.
Prefix
In reality, a bucket is only capable of holding flat objects. For organization, objects can grouped together using a common prefix:
my-folder/file1.txt
my-folder/file2.txt
In this example, it would be appropriate to display these two objects as belonging to a folder called my-folder.
We can specify a prefix when hitting the /object-list endpoint. This ensures that all objects returned BEGIN with the provided prefix.
Delimiter
The delimiter lets you limit results to one hierarchal level. Consider the following objects:
file1.txt
my-folder/file2.txt
If we only want to see objects at the "top level", we can specify a delimiter of "/". This will return file1.txt only.
Marker
We use a marker to get paginated results. Results are not paginated with our usual pattern. It is not possible to get a specific page of objects. We must pass a marker (the name of object) to /object-list, and it will give us a page of objects following the marker.
As an example, assume the following objects in a bucket:
file1.txt
... (1-99)
file100.txt
file101.txt
We make a request to get the first 100 objects. We then pass make another request to /object-list with a marker of file100.txt. We'll get back file101.txt.
Because of the way this mechanism works, objects are displayed in an infinite scroll.
Notes
Things missing from this PR:

Styling (ignore icons, etc.)
Finalized copy for empty states, error states, etc.
Virtualization. Eventually I'd like to use something like React Window so that if things are still smooth if a user is scrolling through thousands of objects. (This is unlikely, as we only fetch 100 at a time).

~NOTE: You must use dev. Use dev account 6, bucket named jc3.~
^ This is no longer necessary, though I'd still recommend it since that bucket is in a state with lots of scenarios.

Looks good. Left some nitpicky stuff, but nice work.

Is breadcrumb-ing this on the roadmap? Using the browser back button works, but in a large tree I'd like to have some visual navigation if possible.

Yes, breadcrumb-ing (or some other navigational pattern) is on the roadmap.


Min/max height attributes/properties

Controlling the minimum and maximum height of the text-area is a common thing. Some DX/UX tests participants were expecting to see attributes for doing that. Should we introduce those or something like min-rows, max-rows that will be standing for height?

Let’s keep this as an enhancement request for now. Add your ”+1” reaction if you really need this.

The current way of controlling this is to use CSS min|max-height for the <vaadin-text-area> element.
vaadin-text-area {
  min-height: 100px;
  max-height: 300px;
}

See live examples: https://vaadin.com/components/vaadin-text-field/html-examples#text-area-demos

min-height: 10px;
didn't work

@lanmaster do mean that the field does not shrink to 10px? There's an issue about that: #229

So take to consideration:
https://github.com/vaadin/vaadin-text-field/issues/506

Let me react to @jouni
There is simple use case as TextArea can be only scroll entirely then you cannot use well prefix and suffix component as it is hard to e.g. place any content into middle in such suffix or prefix, because if it is scrollable than such component ends out of visible area ... so if you need content to be possibly seen to user all the time ... like buttons, advice, status indicator, data indicator, and so on you can not do that for TextArea. So if you needed that you have to add extra wrapping so than there is not reason for suffix and prefix component at all if there is no simple way to adjust that.

Thanks for the use case description, @netbeansuser2019!
To me it seems like that’s a separate topic, whether or not the prefix and suffix elements scroll together with the text content (vs how to control the sizing of <vaadin-text-area>).
If I understood correctly, I think what you are asking is for a way to directly pass the rows attribute to the internal <textarea> element. I don’t think we want to do that, as that exposes the internal implementation details of the component. That said, we could still offer an API to set the height limits as “rows”, for example with min-rows and max-rows attributes. How those would internally work, might be using the rows attribute on the textarea, but might be something else.
As for the other use case (scrolling), that could also be opt-in/out. Though, I admit that I don’t remember any concrete use cases where you’d want the prefix/suffix element to scroll with the text.
Finally, as a workaround, you can achieve the desired scrolling behavior by using position: sticky;. Note, that it doesn’t work in IE11 or old Edge versions.
<vaadin-text-area>

Prefix

</vaadin-text-area>

I do not think so it could be fixed by "sticky" in case of "middle".

Not sure what you mean with ”middle” – can you elaborate?

I mean like any icon shown in middle of visible area not in middle of entire scrollable area.

You mean like this?

That can be done like this:
[slot="prefix"] {
  position: -webkit-sticky;
  position: sticky;
  top: 50%;
  transform: translateY(-50%);
}

Firstly this should be possible just from API.
If I used your code in https://www.w3schools.com/Css/tryit.asp?filename=trycss_position_sticky
so wrapped to DIV as styled as flex and no padding and set fixed size and overflow to scroll that has such two div-s inside such sticky one has never been in middle of visible area with new Edge and even FF, but ends on "the first line".

Hey, I’m just trying to help, provide a workaround 🤗 Perhaps it should be a built-in feature, but that’s probably not going to happen very soon, so we need to make due with workarounds until then.
I didn’t test this this in all sorts of situations, so there probably are cases where sticky doesn’t work like you’d want it to.
Would be great if you could provide example code. It’s a bit hard to understand the problem you described above.

I tried to replicate the case that you describe, the best I understood. Feel free to ”remix” the example: https://glitch.com/~peppermint-rambunctious-entree


Can't get beyond the first batch when feeding in a dense_vector_sequence

I have managed to feed numpy objects into Paddle by using something like np.array.tolist():
from paddle.trainer.PyDataProvider2 import *

import numpy as np

UNK_IDX = 2
START = "<s>"
END = "<e>"

def _get_ids(s, dictionary):
    words = s.strip().split()
    return [dictionary[START]] + \
           [dictionary.get(w, UNK_IDX) for w in words] + \
           [dictionary[END]]

def hook(settings, src_dict, trg_dict, file_list, **kwargs):
    # Some code ...
    # A numpy matrix that corresponds to the src (row) and target (column) vocabulary
    settings.thematrix = np.random.rand(len(src_dict), len(trg_dict))
    # ...
    settings.slots = [ integer_value_sequence(len(settings.src_dict)),
                           dense_vector_sequence(len(setting.src_dict)),
                            integer_value_sequence(len(settings.trg_dict))]
    # ...

@provider(init_hook=hook, pool_size=50000)
def process(settings, file_name):
    # ...
    for line in enumerate(f):
        src_seq, trg_seq = line.strip().split('\t')
        src_ids = _get_ids(src_seq, settings.src_dict)
        trg_ids = [settings.trg_dict.get(w, UNK_IDX)
                           for w in trg_words]
        trg_ids = [settings.trg_dict[START]] + trg_ids
    yield src_ids , settings.thematrix[src_ids].tolist(), trg_ids

Somehow the vectors can't seem to get pass the first batch and Paddle throws this error:
~/Paddle/demo/rowrow$ bash train.sh
I1104 18:59:42.636052 18632 Util.cpp:151] commandline: /home/ltan/Paddle/binary/bin/../opt/paddle/bin/paddle_trainer --config=train.conf --save_dir=/home/ltan/Paddle/demo/rowrow/model --use_gpu=true --num_passes=100 --show_parameter_stats_period=1000 --trainer_count=4 --log_period=10 --dot_period=5
I1104 18:59:46.503566 18632 Util.cpp:126] Calling runInitFunctions
I1104 18:59:46.503810 18632 Util.cpp:139] Call runInitFunctions done.
[WARNING 2016-11-04 18:59:46,847 default_decorators.py:40] please use keyword arguments in paddle config.
[INFO 2016-11-04 18:59:46,856 networks.py:1125] The input order is [source_language_word, target_language_word, target_language_next_word]
[INFO 2016-11-04 18:59:46,857 networks.py:1132] The output order is [__cost_0__]
I1104 18:59:46.871026 18632 Trainer.cpp:170] trainer mode: Normal
I1104 18:59:46.871906 18632 MultiGradientMachine.cpp:108] numLogicalDevices=1 numThreads=4 numDevices=4
I1104 18:59:46.988584 18632 PyDataProvider2.cpp:247] loading dataprovider dataprovider::process
[INFO 2016-11-04 18:59:46,990 dataprovider.py:15] src dict len : 45661
[INFO 2016-11-04 18:59:47,316 dataprovider.py:26] trg dict len : 422
I1104 18:59:47.347944 18632 PyDataProvider2.cpp:247] loading dataprovider dataprovider::process
[INFO 2016-11-04 18:59:47,348 dataprovider.py:15] src dict len : 45661
[INFO 2016-11-04 18:59:47,657 dataprovider.py:26] trg dict len : 422
I1104 18:59:47.658279 18632 GradientMachine.cpp:134] Initing parameters..
I1104 18:59:49.244287 18632 GradientMachine.cpp:141] Init parameters done.

More details on http://stackoverflow.com/questions/40421248/why-is-paddle-throwing-errors-when-feeding-in-a-dense-vector-sequence-to-a-seqto and the data+code that i use to run train.sh is in https://github.com/alvations/rowrow .
What does the error means? Why is it not going pass the first batch?
Although the vectors I am using are random vectors, I hope to read a pickled file that loads a similar matrix that corresponds to the src_dict and target_dict. I would consider them to be dense since all cells in the matrix contains floating point values that ranges between [0.3, 1.0].
Is there any example of how to load a dense_vector_sequence in Paddle?

Second field of inputs are calculated as follow code.
settings.thematrix = np.random.rand(len(src_dict), len(trg_dict))
...
yield src_ids , settings.thematrix[src_ids].tolist(), trg_ids

So, it just like
import numpy as np
print np.random.rand(3, 2)[0]

which just print a vector of float with two value.

But src_ids should be a list of int from src_ids = _get_ids(src_seq, settings.src_dict), so it would look something like:
>>> import numpy as np
>>> np.random.rand(3,2)[[0]]
array([[ 0.16089545,  0.36819477]])

Would Paddle treat that as a single list of floats? Or a list of list of floats?

OK, let me dig out what happened. Please wait for a little while.

Thank you in advance!

1、numpy array of dense_vector is supported but not supported dense_vector_sequence. So please use .tolist() at last line.
2、It seems here you're yield a vector with length 442, but the input_types dimension is 45661.

1、numpy array of dense_vector is supported but not supported dense_vector_sequence. So please use .tolist() at last line.

Thanks for tip, i'll use .tolist()

2、It seems here you're yield a vector with length 442, but the input_types dimension is 45661.

Hmmm, that's strange. In the normal case of the one-hot embedding data_layer with integer_value_sequence(), the dimensions would be the vocabulary size (no. of rows), right? I.e. settings.slots = [integer_value_sequnece(len(settings.src_dict))]
So in this case, the size of the dense_vector_sequnece() would be the no. of rows is also the vocabulary size of the src_dict (45661), right?

Should I close this issue?

The dimension of input types always the length of vector.The integer_value is just a one hot vector with the length of dimension. Same as dense vector.
For example, the image classification job, the inputs are a dense vector and a integer value. The dense vector should be all pixels of one image, and integer value is the label, a.k.a an one hot vector. The video classification job, the inputs are a dense vector sequence and a integer value. The dense vector sequence should be each frame of image's pixels.
In your case, the word id is an integer value, a.k.a one hot vector with length of vocabulary size. But, the embedding field you provide, should be a dense vector with embedding dimension.

Is training process ok now?

Yes, the training process runs now =)
Thanks for the explanation on the input types. Maybe this should be documented somewhere in the docs: http://www.paddlepaddle.org/doc/
@reyoung Thank you once again!

@alvations Yes, we should add some documentation for it.


Encounter search returns Bad request from Reference Server

Is the 400 response because there is no data in the reference server, or is there something else wrong here?

@heathfrankel Hello Heath
In this particular case, the problem is related to the unknown search parameter "discharge-disposition" for the HAPI server. You can see this by clicking the details button, which will open a modal window. Scroll down if needed, and you will see the response data.
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "processing",
      "diagnostics": "HAPI-0323: Unknown search parameter "discharge-disposition" for resource type "Encounter". Valid search parameters for this search are: [account, appointment, based-on, class, date, diagnosis, episode-of-care, identifier, length, location, location-period, part-of, participant, participant-type, patient, practitioner, reason-code, reason-reference, resource-placeholder, service-provider, special-arrangement, status, subject, type]"
    }
  ]
}

In general, if we have some code for the response in the test, it means that all the data for the test has been retrieved.

Behaving as expected.
Discharge disposition is a custom parameter and hence HAPI does not know about and returns 400.
Proposal to remove copnformance requirement of discarge-displosition
However, as AU_CBASE defines this search parameter, the Sparked Server should be configured to support this search parameter.
New card please


Delete/Auto-generate XMonad.Doc.Extending sections

Problem Description
Currently, XMonad.Doc.Extending lists every module with its description. The descriptions were moved to the corresponding Haddock field in each module's file in #609 (thanks @slotThe!). The problem: now there are two places that need to be updated when the description is tweaked (I'm looking at you, #613).
Proposal
Let's just remove the list of modules XMonad.Doc.Extending. Haddock beautifully generates a grouped list of all modules (https://xmonad.github.io/xmonad-docs/xmonad-contrib-0.16.999/), so having the list in X.D.Extending isn't really adding anything.
Checklist

[x] I've read CONTRIBUTING.md

Agreed, let's kill that list with fire

Closed by https://github.com/xmonad/xmonad-contrib/pull/620 (839302533bed6c6ece709a9d8508cc9b773b3975)


fix: do not error for remote chart if there's a missing local repo cache

What this PR does / why we need it:
This PR closes #11961 by continuing to scanReposForURL if one of the local repos doesn't have a cache rather than erroring. This PR also adds the hint to helm repo update to ErrNoOwnerRepo to catch cases that are expecting to find it in the local cache (i.e. u := localrepo/cache).
Ultimately, this makes it so that a full HTTP URL for the chart will never fail because in chart_downloader.go it will proceed to downloading it if scanReposForUrl returns ErrNoOwnerRepo (line 216):

If there is no special config, return the default HTTP client and swallow the error.

This PR also adds a test that tests for the case where there's a non-empty repository config but an empty repository cache.
Special notes for your reviewer:
I verified this actually fixes #11961 by using the reproduction steps listed there compared with the released/installed version of helm and the manually built version located in bin/helm (after running make build). Here was the final output of that:
/mnt/d/work/helm$ helm template traefik --repo https://helm.traefik.io/traefik
Error: no cached repo found. (try 'helm repo update'): open /home/seese/.cache/helm/repository/ingress-nginx-index.yaml: no such file or directory
/mnt/d/work/helm$ bin/helm template traefik --repo https://helm.traefik.io/traefik
---
# Source: traefik/templates/rbac/serviceaccount.yaml
kind: ServiceAccount
apiVersion: v1
metadata
<...>

If applicable:

[ ] this PR contains documentation
[x] this PR contains unit tests
[ ] this PR has been tested for backwards compatibility

Looking at the comments in chart_downloader.go, I think the original intention of scanReposForURL is to handle more than just finding the first repo in repositories.yaml that has the same URL. I don't have time to ensure the changes are not introducing a regression, so I'm leaving the PR as is. This ensures the least amount of regressions, is easier to grok/approve, requires less tests, solves my specific use cases, etc. in favor of leaving "making scanReposForURL" more performant for another, more determined contributor.

@mikeseese Looks like there's some CI issue, might be worth a merge from main?

Thanks @MissedTheMark for the review! I just rebased off of main. Let me know if there are any other issues.


Finding number of digits in an integer in JS #406

Have you read the Contributing Guidelines on Pull Requests?
Yes
Description
I've added some techniques to find number of digits in an integer in JavaScript
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
#406

@SKAUL05 , @atarax665  , @hushee69 kindly review this PR and do let me know if there is something to optimize/change.

@HarshCasper @plazzy99 @atarax665 Reminder to all the mentors, kindly review this PR.


 I thought the WYSIWYG cleans the pasted input but I was wrong.
Is there any easy way to implement/enable this? Or do I have to edit it a lot?
Cheers,
C

The place of rules for pasting from Word has been created but the rule set is currently a bit empty (will have to get some real word installations of common versions to play with).
https://github.com/Voog/wysihtml/blob/master/parser_rules/advanced_and_extended.js#L663
Currently it just clones the basic rules with rather minor changes. You can define a completely different rule set for ms word paste cleanup by assigning whatever rules you like to msOfficeRules. For example something like this would basically keep all but really basic formatting:
var msOfficeRules = {
  tags: {
    strong: {},
    b:      {},
    i:      {},
    em:     {},
    br:     {},
    p:      {},
    ul:     {},
    ol:     {},
    li:     {},
    a:      {
      check_attributes: {
        href:   "url"
      }
    }
  }
};


Domain Server working can't host EZXSS

Hi There,
I'v managed to identify that the server itself is working however I still cannot access the /manage/install route

AllowOverride All has been configured
All the modules have been enabled (php-curl, headers and rewrite)

I have tailed the apache error logs and this is what I get:
AH00052: child pid 22959 exit signal Segmentation fault (11)
Furthermore, once I load the page, it sates: ERR_EMPTY_RESPONSE
I'm wondering what am I missing here?
Cheers,

This seems like an issue with your server setup and not an ezXSS issue. I will close this for now.

It was,
I ended up getting this working by using Nginx as a reverse proxy and Apache to handle PHP requests (I have other virtual hosts being hosted).


Edit Tower Boss stats change some of the other Pal too.

Trying to edit Zoe, after edit, some of the pal that i have also change to have the same skill n iv as Zoe.

If you have backup sav, try add a new value to those common pals(Regular & Lucky & Alpha) whose skill tag is 'none', this ensures that common pal will not be affected.


pipenv install fabric3 doesn't work with an error

Issue description
When I tried to update a package maintained with pipenv after update pipenv to 2018.7.1, I met the following error and couldn't update it.
$ pipenv update django

...

pipenv.patched.notpip._vendor.packaging.markers.InvalidMarker: Invalid marker: 'platform_python_implementation != "PyPy"; platform_python_implementation != "PyPy"', parse error at '; platfo'

I investigated and found that it is caused by fabric3 package in my case. I could reproduce the error with the following command in a clean project.
$ pipenv --version
pipenv, version 2018.7.1
$ pipenv install fabric3
Installing fabric3...
Looking in indexes: https://pypi.python.org/simple
Requirement already satisfied: fabric3 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (1.14.post1)
Requirement already satisfied: six>=1.10.0 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from fabric3) (1.11.0)
Requirement already satisfied: paramiko<3.0,>=2.0 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from fabric3) (2.4.1)
Requirement already satisfied: bcrypt>=3.1.3 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from paramiko<3.0,>=2.0->fabric3) (3.1.4)
Requirement already satisfied: cryptography>=1.5 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from paramiko<3.0,>=2.0->fabric3) (2.2.2)
Requirement already satisfied: pynacl>=1.0.1 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from paramiko<3.0,>=2.0->fabric3) (1.2.1)
Requirement already satisfied: pyasn1>=0.1.7 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from paramiko<3.0,>=2.0->fabric3) (0.4.3)
Requirement already satisfied: cffi>=1.1 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from bcrypt>=3.1.3->paramiko<3.0,>=2.0->fabric3) (1.11.5)
Requirement already satisfied: asn1crypto>=0.21.0 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from cryptography>=1.5->paramiko<3.0,>=2.0->fabric3) (0.24.0)
Requirement already satisfied: idna>=2.1 in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from cryptography>=1.5->paramiko<3.0,>=2.0->fabric3) (2.7)
Requirement already satisfied: pycparser in /path/share/virtualenvs/venvname-CSo2ZBZk/lib/python3.6/site-packages (from cffi>=1.1->bcrypt>=3.1.3->paramiko<3.0,>=2.0->fabric3) (2.18)

Adding fabric3 to Pipfile's [dev-packages]...
Pipfile.lock (43168b) out of date, updating to (8f29af)...
Locking [dev-packages] dependencies...
path/py3/lib/python3.6/site-packages/pipenv/resolver.py", line 76, in main
    system=system,
  File "/path/py3/lib/python3.6/site-packages/pipenv/resolver.py", line 63, in resolve
    allow_global=system,
  File "/path/py3/lib/python3.6/site-packages/pipenv/utils.py", line 402, in resolve_deps
    req_dir=req_dir
  File "/path/py3/lib/python3.6/site-packages/pipenv/utils.py", line 293, in actually_resolve_deps
    results = resolver.resolve(max_rounds=PIPENV_MAX_ROUNDS)
  File "/path/py3/lib/python3.6/site-packages/pipenv/patched/piptools/resolver.py", line 104, in resolve
    has_changed, best_matches = self._resolve_one_round()
  File "/path/py3/lib/python3.6/site-packages/pipenv/patched/piptools/resolver.py", line 209, in _resolve_one_round
    for dep in self._iter_dependencies(best_match):
  File "/path/py3/lib/python3.6/site-packages/pipenv/patched/piptools/resolver.py", line 311, in _iter_dependencies
    yield InstallRequirement.from_line(dependency_string, constraint=ireq.constraint)
  File "/path/py3/lib/python3.6/site-packages/pipenv/patched/notpip/_internal/req/req_install.py", line 193, in from_line
    markers = Marker(markers)
  File "/path/py3/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/packaging/markers.py", line 281, in __init__
    raise InvalidMarker(err_str)
pipenv.patched.notpip._vendor.packaging.markers.InvalidMarker: Invalid marker: 'platform_python_implementation != "PyPy"; platform_python_implementation != "PyPy"', parse error at '; platfo'

Expected result
The installation command pipenv install works.
Actual result
The above error occurs and the installation process fails.
Steps to replicate
$ pip install pipenv==2018.7.1
$ pipenv --version
pipenv, version 2018.7.1
$ pipenv install fabric3

If I miss anything important to share, please let me know. Thank you in advance.
(I believe pasting the result of pipenv --support is not necessary in this case. If it's necessary, please let me know.)

I also get this error by doing just pipenv update. My version is pipenv, version 2018.7.1.  This happened right after I did pip install -U pipenv

Hi guys!  Can you try pulling from master and trying again?  I think we fixed this.

Also it'd be nice to see the pipenv --support It is apart of the issue template for a reason :)

According to #2508 (a very similar? the same? issue), pipenv --clear may help as well.

Let me know if I can help any other way.

I have tried removing lock file. Reinstalling pipenv. Reinstalling all dependencies and no luck. :( This also happens to me when I try to pipenv install

Rolling back to pipenv==2018.6.25 does work for now.

Hi @amir20!  Thanks for using pipenv and for giving us all that information.  Hmm if pipenv —clear didn’t work than I don’t think you had the master branch installed.  This is an unreleased command that is currently only in master.  Trying to replicate with your Pipfile now.

@amir20 after testing with the latest commit from master I can confirm that your pipfile installs fine...as long as I have MS Build Tools installed!  I’m going to close this now as it’s very similar to another issue as @uranusjr mentioned.  If it still doesn’t work with the master branch let me know!

pip install git+ssh://git@github.com/pypa/pipenv.git@master actually works because I do have my ssh keys. I just misunderstood something earlier. I didn't realize that --clean was something that was added in master.
I can now run pipenv --clear which says Clearing caches….
With the cache cleared, pipenv update works! So I think we are all good here.
And you are welcome about using pipenv. I was new to python world a few months ago and I couldn't understand why nothing decent existed out there for managing dependencies. I am loving pipenv now because it's exactly what I would expect a dep management tool to do.

@uranusjr thank your for your support! pipenv --clear after updating the package to the HEAD works like a charm :)


Support detection of legacy VS products

Resolves issues #24

@heaths,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:white_check_mark: Build vswhere 1.0.49+g1c98f107f3 completed (commit https://github.com/Microsoft/vswhere/commit/1c98f107f3 by @heaths)


Bump DTLSSocket to 0.1.4

Coverage remained the same at 62.545% when pulling 3b67ff0c130c32fe0765076f88d43a6b4365f076 on ggravlingen-patch-1 into 5c9ec9d157bb66cdf560a6e14ea86b2002138749 on master.

Coverage remained the same at 62.545% when pulling 3b67ff0c130c32fe0765076f88d43a6b4365f076 on ggravlingen-patch-1 into 5c9ec9d157bb66cdf560a6e14ea86b2002138749 on master.

Coverage remained the same at 62.545% when pulling 3b67ff0c130c32fe0765076f88d43a6b4365f076 on ggravlingen-patch-1 into 5c9ec9d157bb66cdf560a6e14ea86b2002138749 on master.


kpt DF integral generation creating huge tempfiles

I just recently started doing band structure calculations using PySCF's KKS class, but I'm getting very large tempfiles (larger than 800 gb!). For this specific example, I'm doing a calculation on NiTTFtt (Nickel tetrathiafulvalene), which I read using an extension I made to read .cif-formatted files (which I can't share, unfortunately - maybe this could be a feature request? But that's beside the point). I have included the .cif file if that helps.
As far as I understand, because I'm doing a calculation which only has 1 periodic dimension (it's a chain), I have to use density fitting - this is required for any non-3D PBC calculations. However, using DF generates massive temp and _cderi files. How do you suggest I go about doing these calculations, since this file size seems to be far larger than necessary for this type of calculation?
I saw the notes in pyscf/pbc/df/df.py about the 3-integral files being large, but there's no recommendation for how to get around this issue when they're simply too large, other than dumping DF integral intermediates to a separate temp file - which I don't know how to do, or how that fixes the problem.
Script:
## NiTTFtt.py
import numpy as np
from pyscf.pbc import dft
from local.mol_tools import load_from_cif

kmesh = [9,1,1]

cell = load_from_cif('NiTTFtt_monomer.cif')  # Just loads cell.a, cell.unit, and cell.atom from the .cif file.
cell.basis = '6-31g'
cell.charge = 2 * np.prod(kmesh)
cell.verbose = 6
cell.dimension = 1
cell_lengths = [np.linalg.norm(vec) for vec in cell.a]
cell.mesh = np.asarray([int(np.ceil(8*d)) for d in cell_lengths])
cell.build()

kpts = cell.make_kpts(kmesh)

mf = dft.KKS(cell, kpts=kpts, xc='B3PW91').density_fit()
mf.kernel()

band_lines = cell.make_kpts([50,1,1])
np.save('band_kpts.npy', band_lines)
band_e, band_c = mf.get_bands(band_lines)
np.save('band_energies.npy', band_e)

Example files part-way through a calculation (python NiTTFtt.py > NiTTFtt.out):

.cif file used in the script (changed to .txt so I could upload it to github):
NiTTFtt_monomer.txt
Thank you very much in advance for any help,
Simon

You may use gdf.build(j_only=True) for DFT calculations to avoid the full build of density fitting integral.

Does this setting affect the convergence or accuracy of the calculation, or
is it negligible for most systems?
On Wed, Sep 22, 2021 at 4:01 PM Zhihao Cui @.***> wrote:

You may use gdf.build(j_only=True) for DFT calculations to avoid the full
build of density fitting integral.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/pyscf/pyscf/issues/1058#issuecomment-925326433, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ALLINYO3GSSKILEHO6GSFN3UDI7ZLANCNFSM5ESHGSSQ
.
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.

No. For normal DFT, it is the same as the full integral.

I set mf.with_df._j_only = True before running the kernel, and sure enough the tempfile sizes went down to ~33gb in my case - still large, but at least manageable. However, the tempfiles grow again to >500gb after kernel, during the following steps, especially mf.get_bands. It looks like the _j_only argument is getting carried through to this step, but the files are still massive.
For now, I'm going to split up my call to get_bands to only get the energy for a few kpts at a time and then concatenate them, but if you have another idea to avoid large files without this extra step, I'd appreciate it.

It sounds like this could be easily fixed in the code. But the benefit of
get_bands is that you don't have to redo the SCF. So, while this fix is not
optimal, you could instead redo the SCF at each kpt needed for your band
structure (by passing a scaled_center kwarg to cell.make_kpts()) .
Calculating the band structure will be a lot more expensive (in time), but
you will only ever need the tempfiles associated with a single SCF
calculation.
On Mon, Sep 27, 2021 at 11:36 AM Simonsays095 @.***>
wrote:

I set mf.with_df._j_only = True before running the kernel, and sure
enough the tempfile sizes went down to ~33gb in my case - still large, but
at least manageable. However, the tempfiles grow again to >500gb after
kernel, during the following steps, especially mf.get_bands. It looks
like the _j_only argument is getting carried through to this step, but
the files are still massive.
For now, I'm going to split up my call to get_bands to only get the
energy for a few kpts at a time and then concatenate them, but if you have
another idea to avoid large files without this extra step, I'd appreciate
it.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pyscf/pyscf/issues/1058#issuecomment-927992444, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADGAJC7CWHL47INJ6YDR65DUECFQTANCNFSM5ESHGSSQ
.
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.

I have a few questions about the get_bands function, but I submitted a new issue (#1063) to keep this one on-topic.
The really large file is the one generated in _make_j3c, which is unlinked at:
https://github.com/pyscf/pyscf/blob/09834c8f5a4f5320cdde29d285b6ccd89b3263e0/pyscf/pbc/df/df.py#L169
The unlinking changes the name to a .nfs... file, which stays around until the script closes - is that why you suggest performing an SCF calculation on each k-point rather than letting get_bands get the energies for the extra ones? I would like it if, instead of unlinking this large file and letting it stick around until the script closes, it's deleted and discarded at the end of the get_bands function call, since it's no longer needed. As it stands, my DFT calculations take several days to run with just 9 k-points, so I would like to stay away from using more k-points if possible.

I am indeed using a hybrid functional - I set the _j_only=True argument based off of the recommendation by @zhcui to set gdf.build(j_only=True). Since the kernel and get_bands functions call gdf.build in them, setting _j_only=True seems like the easiest/only way to set the j_only argument in these functions without rewriting them.
That being said, it looks like my kernel results using _j_only=True are identical to the kernel results without setting this option. I'm not sure yet about the results of get_bands, since the script crashes due to lack of memory space before finishing.

Sorry, I did not see that you are using functional with non-local exchange. In that case, j and k are both required (and you can't use j_only=True). Thanks @tberkel for reminding this.

Alright, so we're back to square one - is there another way to reduce these file sizes? I could try switching over to a functional that doesn't use nonlocal exchange and set _j_only=True, but the file sizes were still very large when actually computing the band structure with get_bands. Would it help if I were to use a different basis more suited for PBC calculations, or use an ECP or pseudopotential? I'm not very familiar with either of those in practice, but I could learn if it helps reduce the file sizes to something more manageable.

You may try using the GTH pseudopotentials and the corresponding basis sets to see if it reduces the size of your problem (number of basis functions). The size of the tmp file increases at the get_bands call because the k points for band calculation are not included in the SCF calculation so the program will recompute the integrals for all the needed k points. You may generate the integrals for whatever k points you need and save them on the disk so that you don't need to regenerate them each time, e.g.,
from pyscf.pbc imort df, dft
mydf = df.GDF(cell)
mydf.kpts = kpts
mydf.kpts_band = kpts_band
mydf._cderi_to_save="ints.h5"
mydf.build()

mf = dft.KKS(cell).density_fit(with_df=mydf)
mf.kernel()
mf.get_bands(kpts_band)

In the future, I think we could add the option to compute these integrals for different k points on-the-fly.

The parameter j_only is automatically assigned for pure DFT functionals. For hybrid functionals, there is no simple way to reduce the size of temporary files. I will close the issue for the moment.


Ability to set custom logo

First pass at setting a custom logo for teams via a script run by Covid Watch locally.  I got it working successfully with .png files (.svg and .jpeg tests were not successful yet and going to bed now).
The Login page now always has the Covid Watch logo in the top left and shows the user's organization logo upon logging in.  See gif example.
I left a lot of comments in the custom-logo.js file that is the script to run.  Test it out locally by switching between the .png files I linked for Soylent Green and Pepsi on your desktop (simulating the real situation of downloading some customer's logo and uploading that based on its file path on your desktop).
Feedback welcome.

note: using Pepsi as a logo is just as an example

Note that if organizationID is invalid, Firebase supplies us with an error in the CLI:

Similar situation if logoPath is invalid, we get a helpful error in the CLI:

I'm mentioning this because there is only one custom error message and that is for validating environment.  The other two arguments passed into the CLI for running super-admin.js are covered in terms of validation by pre-existing errors.


CLI installer is broken by 2.49.0 release

The CLI based installer via curl is broken if it requires sudo access.
$ curl -fL https://install-cli.jfrog.io/ | sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2510  100  2510    0     0  23320      0 --:--:-- --:--:-- --:--:-- 23457
Downloading the latest version of JFrog CLI...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 25.5M  100 25.5M    0     0  45.0M      0 --:--:-- --:--:-- --:--:-- 45.0M
mv: cannot create regular file '/usr/local/bin/jf': Permission denied
We'd like to install the JFrog CLI executable in /usr/local/bin. Please approve this installation by entering your password.
mv: invalid option -- 'e'
Try 'mv --help' for more information.
mv: cannot create regular file '/usr/bin/jf': Permission denied
We'd like to install the JFrog CLI executable in /usr/bin. Please approve this installation by entering your password.
mv: invalid option -- 'e'
Try 'mv --help' for more information.
could not find supported destination path in $PATH

This is caused by the line below:
https://github.com/jfrog/jfrog-cli/blob/a559d32017ccccfbc45a1d26d4514ea29b33b3ac/build/installcli/jf.sh#L77-L79
The if statement should be:
       if sudo mv $FILE_NAME "$1"

Same here, broke our CI/CD ...

Ditto

Can install it like this:
curl -fL https://releases.jfrog.io/artifactory/jfrog-cli/v2-jf/2.48.0/scripts/install-cli.sh | sh

@gwjo @gavinclarkeuk @alexiaizenberg @akire0ne
Thanks for flagging this problem. We apologize for the inconvenience. We're currently in the process of preparing a speedy fix, which you can track here: https://github.com/jfrog/jfrog-cli/pull/2240. We'll be sure to keep you updated on our progress.

@gwjo @gavinclarkeuk @alexiaizenberg @akire0ne
Version 2.49.1 with the fix is out now. Feel free to share your thoughts and feedback on it.


doc/fix: version previously unversioned changelog entries

Pull request checklist:

[x] ~CHANGELOG.md was updated, if applicable~ (not applicable)

Description
The changelog was not correctly updated for v2.2.1 and v2.2.2 so I introduced sections for those versions and placed the relevant entries under the appropriate version.
I also added a "new" changelog entry for v2.2.2 since no description previously existed for that change.

I also moved the "Major" entries from the "Unversioned" section to the top.
(Technically, this is unrelated to the declared scope of this PR so I will revert 036b9a1 if desired.)


Add elemental-seedimage-hooks package

The elemental-seedimage-hooks package contains hooks to copy rpi firmware when building a raw disk image.

Recreated to see if the OBS integration will pick this up.


Vk.com: suddenly stops scrobbling

Hello! Today I saw thats scrobbling stop working on Vk.com. I'm using Google Chrome 54.0.2840.99 m.

It's because of internal VK changes. Will be fixed in next release.
You can install this version as a temporary solution.

@alexesprit please update firefox version ;)

@IRainman updated.

When is the next release coming?


ota_client.py: improve _create_regular_files

In the previous implementation, when we handle the first copy of hardlink file, the main process will be blocked.
In the new implementation, handling first copy of hardlink file is done in the _create_regular_file method, so only a subprocess will be blocked.
More details as follow:

hardlink_dict is only used in the main process now, previous_reginf is passed instead of the whole dict,
hardlink_dict is sha256hash[tuple[reginf, event]] now, a multiprocessing.Event object is used to ensure the first_copy.
process pool dispatching logics is placed back to _create_regular_files method.

@Bodong-Yang
Can you revert auto generated files - app2/otaclient*_pb2*.py - before review?

@Bodong-Yang Can you revert auto generated files - app2/otaclient*_pb2*.py - before review?

Which commit should I revert to?

Oh that is cause by the git merge, I should replace these files with upstream version instead of merge them!

Oh that is cause by the git merge

Your git or editor setting or something?

Oh that is cause by the git merge

Your git or editor setting or something?

resolved in the latest commit.

Oh by the way, I also think that we can use multiprocessing to accelerate the processing of regular_file.txt, since it has thousands of records.

Oh by the way, I also think that we can use multiprocessing to accelerate the processing of regular_file.txt, since it has thousands of records.

We have to measure it. If the consumption time to process regular_file.txt is a few percent, I think we don't need to optimize it.

Oh by the way, I also think that we can use multiprocessing to accelerate the processing of regular_file.txt, since it has thousands of records.

We have to measure it. If the consumption time to process regular_file.txt is a few percent, I think we don't need to optimize it.

Actually this optimization makes the code simpler,
please check the commit 046e40a.

please check the commit 046e40a.

sorry new code should be separated PR. Or, we can't close this PR :pray:

please check the commit 046e40a.

sorry new code should be separated PR. Or, we can't close this PR pray

I think this change can be within this PR since the change is minor actually.
The code do the same thing as before.

please modify total_regular_files.

Fix in commit f0680f4.


feat(storefront): allow custom ordering of storefront sections

AMLOS-763
Description
AML 2.0 has a Sort dropdown for the Most Popular section on storefront.  Sort would be beneficial for most Storefront See More pages.
Acceptance Criteria

The use can sort See More pages (Newest, Title, Rating)

How to test code
Pull this branch
Test the following API calls:
# Storefront
GET /api/storefront/{id}/?ordering={ordering}

# id (optional) -- can be recommended, featured, most_popular, or recent
# ordering (optional) -- comma-separated list of fields on a listing to order by

# My Listings
GET /api/profile/{profile_id}/listing/?ordering={ordering}

# profile_id -- user's profile id or "self"
# ordering (optional) -- same as above

# Frequently Visited Listings
GET /api/profile/{profile_id}/listingvisits/frequent/?ordering={ordering}

# profile_id -- same as above
# ordering (optional) -- same as above

Examples:
# Order recent section by average rating, then total votes (ascending order)
http://localhost:8001/api/storefront/recent/?ordering=avg_rate,total_votes

# Order entire storefront by title (descending order)
http://localhost:8001/api/storefront/?ordering=-title

# Get featured listings in default order
http://localhost:8001/api/storefront/featured

# Get your listings in alphabetical order
http://localhost:8001/api/profile/self/listing/?ordering=title

# Get your frequently visited listings, last modified first
http://localhost:8001/api/profile/self/listing/?ordering=-edited_date

# Get your frequently visited listings, default ordering (descending by visit count)
http://localhost:8001/api/profile/self/listing/?ordering=

Please Review
@aml-development/ozp-backend-team
Checklist

[x] Read CONTRIBUTING.md
[x] Write code to complete task
[x] Python Code is PEP8 Compliant
[x] Add unit tests for new code
[ ] All tests must pass before merging the pull request
[ ] At least 2 people reviewed code

:+1:

:+1: functionally works


max-height text isue

Hello,
I used bootstrap and if I used col-md-12 and like to use the registration history not higher than 450 px the letters are messed up, how can I fix this?

Greetings Theo

@Theolodewijk are you able to post your chart config and data? In particular, what is the value of the responsive and maintainAspectRatio settings?

Registration History

            <canvas id="myChart"></canvas>

var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
    type: 'line',
    data: {
        labels: ['Januari',"Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],
        datasets: [{
            label: "Bezoekers",
            fill: true,
            backgroundColor: "rgba(151,187,205,0.2)",
            borderColor: "#C5D9E3",
            borderWidth: 2,
            data: [
                <?=get_total_website_visits_stats('01', date('Y'))?>,
                <?=get_total_website_visits_stats('01', date('Y'))?>,
                <?=get_total_website_visits_stats('02', date('Y'))?>,
                <?=get_total_website_visits_stats('03', date('Y'))?>,
                <?=get_total_website_visits_stats('04', date('Y'))?>,
                <?=get_total_website_visits_stats('05', date('Y'))?>,
                <?=get_total_website_visits_stats('06', date('Y'))?>,
                <?=get_total_website_visits_stats('07', date('Y'))?>,
                <?=get_total_website_visits_stats('08', date('Y'))?>,
                <?=get_total_website_visits_stats('09', date('Y'))?>,
                <?=get_total_website_visits_stats('10', date('Y'))?>,
                <?=get_total_website_visits_stats('11', date('Y'))?>,
                <?=get_total_website_visits_stats('12', date('Y'))?>
            ],
            pointRadius: 5,
            pointHoverRadius: 10
        }]
    },
    options: {
        responsive: true,
        tooltips: {
            mode: 'index',
            intersect: false,
        },
        hover: {
            mode: 'nearest',
            intersect: true
        }
    }
});

??

@Theolodewijk sorry I haven't had a chance to look at this yet and try and reproduce it.

okay

I had a thought on this. Could you try setting maintainAspectRatio: false? I have a feeling what is happening is that the aspect ratio of the div is changing and the chart is trying to keep the same aspect ratio and then it's getting stretched

Thanks, I have added and works fine now, only I must make it mobile friendly by add some values for different media.
as you can see on the site https://telegram-p2000.nl

Awesome, looks good on my phone :)

@Theolodewijk is this resolved? if so, could you please close this issue.

Closing as out of date


Numpy gmres

Adds GMRES to the numpy backend, and tests of it to numpy_backend_tests.

Closing to fix automatic merge issue


Uncaught Error: no FileLoader associated with this extension: ".wav" in url "sfx/crash.wav"

On netgo, it does not register the .wav extension, causing everything to crash.
Would be nicer if it would register a .wav FileLoader, which did "nothing" (maybe log what he should've done, or that it's not yet implemented)
This isn't needed when audio is fixed (#272), but till then, this is a nice-to-have feature.

What about a generic file loader which does "nothing", every resource that does not have an existing loader assigned to it will get sent to it. From there we could log/panic/handle the exception appropriately.

From there we could log/panic/handle the exception appropriately.

We already can do these things, we don't need a generic file loader for that? :wink:

Closed in #494


Fix error in docker mode when triton output path is not specified

See https://github.com/triton-inference-server/model_analyzer/issues/725 for details on the failure.
The solution is to implement a temp log file (to match the code in server_local.py)

Quick question: Is it ok if we just silently create a random file for the output without letting user know about it? Other than that, LGTM!

Yes, It's a temp file that automatically gets removed when the program terminates. The user will never even know it existed.


Fixes the implementation of HMR

What does this PR do?
These changes apply when the target hot setting is true:

It adds the NamedModulesPlugin plugin.
Instead of configuring only the webpack-hot-middleware, it now checks if the target will run in order to configure the dev server or the middleware.
If the target uses the babel-polyfill, it now makes sure the HMR entries are added after it and not just on top of the list.

Before this change, it wasn't possible for a target to use HMR on the dev server.
How should it be tested manually?
yarn test
# or
npm test

Pull Request Test Coverage Report for Build 10

17 of 17 (100.0%) changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 7:
0.0%

Covered Lines:
391

Relevant Lines:
391

💛  - Coveralls

☠


Python 3.7 reached EOL, set minimum Python version to 3.8

Since Python ´3.7´ reached EOL:

Set minimum Python version to 3.8
Remove builds for 3.7
Remove CI/CD tests for 3.7
Take advantage of 3.8 and above features, where applicable.

Hi Mirko , I would like to contribute to kivy , and I think this issue will be a good starting point, please assign this to me.

Hi @nidhi-2619 , the issue has been assigned to you.
If you need help during the development, feel free to ask on the #dev channel on Discord


( Tiny Change ) Update README.md

I believe you changed the config option adapt_until_sleep to transition_until_sleep after I posted the graph, so I renamed the config option there too.
There was also a deleted user on the contributions list so I went ahead and removed that too.

Oh no, I must have made that change accidentally!
adapt_until_sleep is a better name.

Oh no, I must have made that change accidentally!
adapt_until_sleep is a better name.

I believe it may be a bit too late to change the name 😂


Update Dockerfile to new toolkit hash.

@ethanbao Any idea why these tests are all failing? It seems unrelated.

https://github.com/googleapis/artman/pull/282


Fix #85 with non-empty redhat security source and empty-list checks.

Status
READY
Description
The Red Hat security updates are deprecated, and the old source location now contains just an empty directory tree.  This caused Dagda to attempt to push empty lists into the MongoDB, which generated #85.  This fix both adds protections on the MongoDB write by not writing empty lists, and by changing the download URL to one that works.  Note that this is a temporary fix, because the Red Hat update indicates that this is still a deprecated source.  The v2 should be used instead.
Related PRs
Unknown.
TO-DOs

[X] Tests
[ ] Documentation

I don't believe there to be any documentation changes necessary.
Deploy Notes
No changes are necessary for deployments.  Currently, it is unknown whether this upgrade will have major changes to existing databases, due to the change in the URL for pulling down the alternate list of security issues.
Steps to Test or Reproduce
Testing:
git pull --prune
git checkout <feature_branch>
make test

Impacted Areas in Application
This affects the Red Hat security issues URL, which currently is an empty tar file.

Coverage increased (+0.4%) to 68.466% when pulling af9b7ddf799f9280df34ad691a0c62e890cdabd6 on groboclown:bug85-final into 78715bd71108a5044fc81bb12d43c7fc5378f47a on eliasgranderubio:master.


[Bug][BR-4] bridge-app can't commission using controller(chip-tool).

From chip-certification-tool created by joonhaengHeo: CHIP-Specifications/chip-certification-tool#932
Describe the bug
bridge-app can't commission using controller(chip-tool).
I think bridge-app is only supported thread.
Is this test only available on Thread-supported Devices?
[1691542360.361952][33293:33295] CHIP:DMG:              AttributeReportIB =
[1691542360.362020][33293:33295] CHIP:DMG:              {
[1691542360.362101][33293:33295] CHIP:DMG:                      AttributeDataIB =
[1691542360.362197][33293:33295] CHIP:DMG:                      {
[1691542360.362261][33293:33295] CHIP:DMG:                              DataVersion = 0xbb46d872,
[1691542360.362286][33293:33295] CHIP:DMG:                              AttributePathIB =
[1691542360.362388][33293:33295] CHIP:DMG:                              {
[1691542360.362448][33293:33295] CHIP:DMG:                                      Endpoint = 0x0,
[1691542360.362540][33293:33295] CHIP:DMG:                                      Cluster = 0x31,
[1691542360.362665][33293:33295] CHIP:DMG:                                      Attribute = 0x0000_FFFC,
[1691542360.362821][33293:33295] CHIP:DMG:                              }
[1691542360.363007][33293:33295] CHIP:DMG:
[1691542360.363098][33293:33295] CHIP:DMG:                              Data = 2,
[1691542360.363204][33293:33295] CHIP:DMG:                      },
[1691542360.363325][33293:33295] CHIP:DMG:
[1691542360.363375][33293:33295] CHIP:DMG:              },
[1691542360.363480][33293:33295] CHIP:DMG:
[1691542360.363524][33293:33295] CHIP:DMG:      ],
Steps to reproduce the behavior

Run bridge-app
Commission using ble-wifi.

Expected behavior
No response
[BR-4]Commissioner.txt
[BR-4]TH_log.txt
No response
PICS file
No response
Screenshots
No response
Environment
TH Version : TH Fall2023 - beta3
Additional Information
No response

For this test, should the chip-tool be instantiated for commissioning? Becuase when running a docker ps, I don't see it runnig.
What command should I run? @joonhaengHeo, can you give more details on how to reproduce the bug?
The dialog says this 'For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.'

Bridge app usually gets paired using Onnetwork and we use the same against sample app.

@raul-marquez-csa
First of all, this test case was tested manually rather than using a harness. Test Harness only displays Manual. I proceeded with Test Harness's bridge-app running as shown below.
cd apps
sudo ./chip-bridge-app
To proceed with this Test Case, commissioning of Commissioner and bridge-app is required.
The attached file is a log from the commissioning process, and can be reproduced in chip-tool by commissioning using the ble-wifi command as shown in the example command below.
sudo ./chip-tool pairing ble-wifi 1 [APName] [Password] 20202021 3840

After reproducing the issue, it seems that the problems goes deeper into the execution and apps code.
Will leave this unassigned for now so someone else with knowledge on this can take a look.


fix(badge): not being full rounded with one digit

☁ Nx Cloud Report
CI is running/has finished running commands for commit e491f6b01ae333cf846f42dae12d86e0d0c34ac6.  Click to see the status, the terminal output, and the build insights.
📂 See all runs for this branch

✅ Successfully ran 1 target

nx affected --target=test --base=9e8899437c29bb26269264e7347c10e4f5eafadc --head=e491f6b01ae333cf846f42dae12d86e0d0c34ac6 --exclude=workspace --output-style=stream-without-prefixes -- --ci --code-coverage --runInBand

Sent with 💌 from NxCloud.


Fix background symbol & parsing bug

Test case
> sleep 10 && sleep 10
> jobs
[0] Running   [sleep 10]
[1] Running   [sleep 10]

The command has a syntax error but gets to execute. We should not allow empty commands before the symbol &.

The same applies to the pipe symbol |.


MAV_CMD_DO_REPOSITION Ground Speed

Setting Param1 for command MAV_CMD_DO_REPOSITION is returning the default (-1). The pixhawk groundspeed needs to be set to inputted Param1 as the Mavlink message says it does.

Is the command supported? Quick check of mavlink_mission.cpp seems to indicate maybe not. Does it return the unsupported message error in SITL (Debug) ?https://github.com/PX4/Firmware/blob/master/src/modules/mavlink/mavlink_mission.cpp#L1482

Command is supported. PX4 moves to specified location when using the REPOSITION, tested with SITL. Only thing that is not working is the speed command. After quick look in the code it is returning the default -1. Just needs to be changed to use the cmd.param1 which is specified in the Mavlink Documentation.

Just FMI, where is this set in code?

For sure.
https://github.com/PX4/Firmware/blob/master/src/modules/navigator/navigator_main.cpp
Around Line 320 is where it starts. 336 is where it looks like it gets the speed.

Looks like this might be fixed in https://github.com/PX4/Firmware/commit/21bcc0d2f40d307c3c88009ff5a7f13e8dbbe93e

Roger, closing as this appears to be fixed in the issue mentioned above.


Ajax pages not refreshing options

Hi,
Using selectric with an Ajax architected website. So need to use selectric('init') on every page load once the Ajax call has returned.
However, it's not keeping my options from my initail init.
{                     responsive: true,                     arrowButtonMarkup: '<b class="button"></b>',                     disableOnMobile: false }
The 'init' is working, but resetting my options, to the defaults.
Thanks,
Tom

Try using selectric('refresh').
Let me know if this works

Tried both, to no avail.
Currently changed the core to the above settings, but not ideally come bower update / bower install

Are you using the latest version (v1.9.6)?

Yes.

I couldn't reproduce the problem here.
Can you create a reduced test case in https://jsfiddle.net/?

I faced same issue.
I gived disabledOnMobile option.
However that plugin is refreshed,
This option will be ignored.
Please check following link.
https://github.com/lcdsantos/jQuery-Selectric/blob/master/src/jquery.selectric.js#L716

If you want to refresh selectric element When non-mobile environment.
You have to follow this code (Until now)
if ($element.data('selectric').disableOnMobile === true) {
    if ($element.data('selectric').utils.isMobile() !== true) {
        $element.selectric('refresh');
    }
}
else {
    $element.selectric('refresh');
}

@KennethanCeyer The intention of disabledOnMobile is to disable the rendering of markup. It would be awesome if you could clarify your use case a bit for me? What would you expect selectric to do?


Use object as the key of IOC container?

IOC container use object as the key type, instead of Type.
By applying this, we can not only:
this.Add<IEventBus>(new EventBus);

But also:
this.Add("event bus A", new EventBus());
this.Add(EnumEventBus.A, new EventBus());

This is useful if we have multi instances with the same type.

Removed in v7.0.0. Use the new-type pattern instead.


wasi-nn: remove BackendKind, add wrapper structs

One improvement that came from discussions with @geekbeast is that BackendKind, the enum used for differentiating between ML implementation, is no longer necessary. Instead, we can use the generated GraphEncoding type as the key to map to the right implementation.
Also, this PR adopts the Wrapper(Box<dyn ...>) pattern everywhere, which now includes backends and registries. Since wasi-nn accepts multiple implementations for all of these things, we need a way to virtually dispatch to the right implementation. Previously we used the Box<dyn ...> type explicitly in many places but this change opts to use a wrapper around this, expecting users to create the wrapper via From and Into and internally accessing the implementation via Deref and DerefMut. The idea is to eliminate some of the "type clutter;" let me know if you agree.

Do not merge! This is a draft since it depends on https://github.com/bytecodealliance/wasmtime/pull/6893; let's review that first.


Netflix error -check log for details

I'm submitting a ...

[x] bug report
[ ] feature request
[ ] support request

General infomration
I'm running latest 0.12.2,  Kodi build 18.0Alpha1 git 95762bd 17 Oct on 2 separate RPI2, both had the same problem reported here: https://github.com/asciidisco/plugin.video.netflix/issues/199 after upgrading to 0.12.2 this issue was resolved. however now only one of RPI2 im getting a Netflix error and cant get to the profiles page (the other RPI2 is working as  #expected!?) Tried uninstalling, rebooting, clearing setting etc.. Both RPI are identical in set-up, same version, same addons, same configuration (or so i believe! i can see any differences)
Prerequisites

[x] Are you running the latest version?

Description
[Description of the bug or feature]
Netflix error when opening Neflix addon
Steps to Reproduce

[First Step]
Open Neflix addon

Expected behavior: [What you expected to happen]
show profiles
Actual behavior: [What actually happened]
nothing apart from error
Context (Environment)
RPI2 Kodi 18 (17 oct)
Installation

[ ] I installed the plugin via zip from the Releases page
[x] I´m using the Netflix Repo
[ ] I´m using a different source (Please tell which)

Operating System

[ ] Linux (x86/x64)
[ ] OSX (x86/x64)
[ ] Windows (x86/x64)
[x] Linux (ARM)
[ ] Android

Debug log
kodi.log

downgrading to 0.12.0 has seemed to have fixed the issue.

I have the same issue. However downgrading to 0.12.0 is a fix that is not solid. After some time it stops working. I am running under the same conditions as above on an RPi3.
The kodi log I get is the following:
13:28:07.073 T:1736438768   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--

NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
Error Type: <type 'exceptions.TypeError'>
Error Contents: int() argument must be a string or a number, not 'NoneType'
Traceback (most recent call last):
File "/home/osmc/.kodi/addons/plugin.video.netflix/service.py", line 16, in
from resources.lib.NetflixHttpRequestHandler import NetflixHttpRequestHandler
File "/home/osmc/.kodi/addons/plugin.video.netflix/resources/lib/NetflixHttpRequestHandler.py", line 30, in
netflix_session=NETFLIX_SESSION)
File "/home/osmc/.kodi/addons/plugin.video.netflix/resources/lib/NetflixHttpSubRessourceHandler.py", line 31, in init
self.prefetch_login()
File "/home/osmc/.kodi/addons/plugin.video.netflix/resources/lib/NetflixHttpSubRessourceHandler.py", line 42, in prefetch_login
if self.netflix_session.is_logged_in(account=self.credentials):
File "/home/osmc/.kodi/addons/plugin.video.netflix/resources/lib/NetflixSession.py", line 241, in is_logged_in
exp = int(cookies[0][domains][domain][cookie_key].expires)
TypeError: int() argument must be a string or a number, not 'NoneType'
-->End of Python script error report<--

Hi Guys,
I got the same issue as well.
2 days ago everything worked until I started from scratch to build a new LE-RPi with Netflix on it.
Today I tried to install Netflix again, neither from Zip nor from Repository worked for me. Newest Milhouse LE is installed. My Steps:
Libreelec --> Libreelec (Milhouse, Kodi 18) --> Inputstream.Adaptive --> LibWideDevine ( SSH Command) --> Netflix Repository --> Netflix
2/3 Dependencies are installed, the 3. (Script.Module.Pycryptodome) was unavailable ???
So I installes it over .zip.
---> Netlix Error : See Log ...

01_KODI.log

17:50:12.418 T:1749087120   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
- NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
Error Type: <type 'exceptions.TypeError'>
Error Contents: __generate_msl_header() got an unexpected keyword argument 'id_key_request'
Traceback (most recent call last):
File "/storage/.kodi/addons/plugin.video.netflix/service.py", line 16, in
from resources.lib.NetflixHttpRequestHandler import NetflixHttpRequestHandler
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/NetflixHttpRequestHandler.py", line 30, in
netflix_session=NETFLIX_SESSION)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/NetflixHttpSubRessourceHandler.py", line 31, in init
self.prefetch_login()
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/NetflixHttpSubRessourceHandler.py", line 50, in prefetch_login
self.kodi_helper.set_esn(self.netflix_session.esn)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/KodiHelper.py", line 224, in set_esn
self.delete_manifest_data()
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/KodiHelper.py", line 233, in delete_manifest_data
msl = MSL(kodi_helper=self)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/MSL.py", line 69, in init
self.init_rsa_keys()
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/MSL.py", line 82, in init_rsa_keys
self.__perform_key_handshake()
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/MSL.py", line 635, in __perform_key_handshake
encrypt=False)
TypeError: __generate_msl_header() got an unexpected keyword argument 'id_key_request'
-->End of Python script error report<--

same here. have been watching last night, no problems.
no more login tonight. downgrade to 12.0 worked. 12.1 and 12.2 do not work.

(Script.Module.Pycryptodome) was unavailable ???
pycryptodome is built-in on LibreELEC 8.1.x/9.0- the kodi add-on system is mis-reporting this dependency.

Thx for the quick reply.
So its not my fault and ill try downgrading to12.0 and wait for a fix !

Did downgrading work for you @LtFeroX

12.0 is not stable for me. Some movies work other don't.  << It kind of works >>

0.12.0 Not Working at all for me :/
After putting in my Email and pw i got a request Error and After restarting Netflix it says Error - See Log ...

Same here, some work, some don't. Looks like anything in subfolders doesn't work? Or they might (coincidentally) have the same codec? Let us know what you need to troubleshoot this...

@LtFeroX Your issue has nothing todo with the plugin, it´s either your Distro or Kodi version missing the Cryptodome dependency.
For the rest:
Version 0.12.3 should fix the issues, please retest & report.
(You may need to clean your addons userdata in order to be able to retain the functionality)
A few more words: Please do not consider this plugin stable yet. The plan is to release a stable* version when Kodi 18 will be stable/released. So might be another 3 to 5 months since so.
In the meantime, please test & treat this as am Alpha version to test. We need your feedback to stabilise, but things will break from time to time...
*stable: As far as we can call it stable as Netflix has no public API & they can break it anytime without us getting a warning.

Yea that was my First idea to install the missing dependencie, but how? I tried to install it with a .zip, but its not Working. @MilhouseVH said its already Inside Kodi 18... i got the latest Milhouse Kodi Version and added the Custom Channel for updates... i might try 12.3

@LtFeroX You can't install this dependency like other Python based ones, as it contains OS dependent binary stuff...
It either is a problem in that one particular @MilhouseVH build you´re using (doubt that a bit,a s we might see more reports about this) or something borked on your machine.
Updating the plugin won't help.
My advice would be to use another SD card & try with a fresh system (donwload new latest etc.)

Thx for ur help! So your advice is to use some of the nightly builds, that you have linked under your Addon ? A friend has no Probleme using a @MilhouseVH Build that is a week old... ill try some older builds and Report then!

@LtFeroX Try to download the same build as your friend uses then, yes. this might be a helpful resource as well: https://github.com/asciidisco/plugin.video.netflix/wiki/Installation

@LtFeroX I may be mistaken, but I think I only did this:

Download LibreELEC.USB-SD.Creator.Win32.exe and download & install the latest version

Pick your source and download the .tar from here:
https://forum.kodi.tv/showthread.php?tid=298462 (x86_64)
https://forum.kodi.tv/showthread.php?tid=298461 (RPi & RPi2/3)

Install Widevine using SSH:
curl -Ls http://nmacleod.com/public/libreelec/getwidevine.sh | bash

In case you wish to be able to update, set the correct channel:
RPi Zero/RPi1: http://milhouse.libreelec.tv/builds/master/RPi
RPi2/RPi3: http://milhouse.libreelec.tv/builds/master/RPi2
Generic (x86): http://milhouse.libreelec.tv/builds/master/Generic

Download netflix repo from here:
https://github.com/asciidisco/plugin.video.netflix

As far as I remember, it work as a charm on RPi, Rpi2, RPi3 and an x86 machine on all of them I tried it.
Note: beta builds so expect issues & haven't tested 0.12.3 yet but is supposed to fix our issue...

That excactly the Way i did it ... but ill try it again this way.
Thx

@asciidisco
Let me know if I can help. I would like to contribute at least through testing and reporting. I think this plugin will be great! I have been wanting this for a long time!  The reports I post here is to help and I do understand that this software is under development and what that means.  Thanks!

@aspymid Sure. This wasn't meant to be offensive in any way, I just wanted to clarify (again) that this piece of software is yet nothing people can & should rely on :)
Any reports & testing is highly appreciated :)

I´m closing this issue for now, as a few people with similar problems (according to their logs) on the Kodinerds forum have retested this & confirmed that it´s working.
If you´re using version 0.12.4 & do run into the issues mentioned here again, please fell free to reopen.

upgraded to latest 0.12.4 and confirmed issue now solved.

A few more words: Please do not consider this plugin stable yet. The plan is to release a stable* version when Kodi 18 will be stable/released. So might be another 3 to 5 months since so.
In the meantime, please test & treat this as am Alpha version to test. We need your feedback to stabilise, but things will break from time to time...

Noted and appreciate the hard work, always happy to test.

I confirm!  This issue is not present in 0.12.4 ... Thanks!

I get this issue on 0.12.7

Having a similar issue as @DrCord (script.module.pycryptodome) with the latest version of OSMC and the latest version(s) of the addon, the latest being 0.13.12... Any pointers?

See #237

sudo apt-get install build-essential python-pip
sudo pip install -U setuptools
sudo pip install wheel
sudo pip install pycryptodomex

@caphm I actually managed to sort it out. Ran into another issue with the streaming helper not installing, so I ended up manually installing it and now everything works.


Key Remapping conflicts with menu option presses

Describe the bug
When the Key Remapping plugin is toggled on, and an in-game menu is opened that accepts key presses for options (Spirit Tree, or Jewelry Box) is opened, you can't pre-select your option by holding the key down before the menu pops up.
To Reproduce
Steps to reproduce the behavior:

Go to a spirit tree or jewelry box in-game.
Toggle the Key Remap Plugin on, and remap F1 to 1 (can be any remap, 1 is safe to test with as its on every menu type)
Hold down the number 1 on your keyboard
Click on the spirit tree menu
Your client won't select the 1 menu option immediately, without re-pressing the number 1.

Expected behavior
In every in-game menu that can be passed by keyboard commands (holding space to continue through prompts, numbers for choosing menu options) if you're holding the key before the menu pops up, it will select the option you're holding down on the next tick after the menu is open, near instantly, and without you having to press the key again.
Screenshots
I can do a screen recording, but you won't be able to see me pressing the key on my keyboard if I'm just recording the screen. I don't know how to record with voice over, but if this is needed I can figure it out.
Environment (please complete the following information):

OS: macOS
RuneLite version: 1.6.14
Launcher version: 2.1.1 (I did "About RuneLite" for this value, no idea if that's the right place)

Additional context
These are my logs I didn't see anything pop up while I was doing the steps to reproduce.
This isn't game-breaking, but it is a regression that only started happening on the most recent release, based on the currently open issues for the last few days, I'd guess it has something to do with keyboard bank pin?

The old behavior was actually broken, since if you pressed 1 it would send: keypress f1, typed 1, keyrelease f1 - this was recently discovered and fixed due to the bank pin stuff, since pressing 1 would both hit f1 and also enter in bank pin 1. "Fixing" this again would sort of break the whole awt keylistener contract where you are getting keytyped events without keypresses, which is not great.

Does this mean skilling methods like this won't work anymore?
That's really surprising though, I have gotten so used to that I thought it was kinda just a quirk of the game.

Is this something that RL would ever consider making an option to "re-break" or should I just close this issue?
I wouldn't want to try to make a PR for it if you don't think it fits.

I don't know of a way to fix this that wouldn't reintroduce the original problem/be broken. Also I don't see a way to change this behavior back without sending keytyped events without any keypresses which seems somewhat sketchy. Do you?

I definitely don't understand the problem-space well enough to give a solution, but I guess I don't really see the problem with sending keytyped events and keypresses? since a key is being pressed afterall.

Does adding a check for plugin.chatboxFocused() in the keyTyped event in the key remapping listener work? That might fix it actually.

I can try after work today. Thanks for humoring me through this issue so far!

I did what you said and added  && plugin.chatboxFocused() to the end of this line https://github.com/runelite/runelite/blob/94482f5aed49604fa7c45631c98cddc2b0ebb208/runelite-client/src/main/java/net/runelite/client/plugins/keyremapping/KeyRemappingListener.java#L62
My original issue ✅
Keyboard Bank Pin ✅
F key remapping still working ✅
Working just as expected. Any other cases I should try testing? Are there unit tests that I should try to write to prep for a PR?

Just see if the existing tests fail or not.

I'm actually having trouble with the tests, I think I'm missing some important dependency because even without my change the tests fail for me.
To test I changed my run config from maven install -DskipTests -f pom.xml to maven install -f pom.xml but I'm getting a bunch of NullPointerExceptions in the "Cache" section of the tests.
Here's a subset of the verbose test run output
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.034 sec <<< FAILURE! - in net.runelite.cache.script.disassembler.DisassemblerTest
test(net.runelite.cache.script.disassembler.DisassemblerTest)  Time elapsed: 0.033 sec  <<< ERROR!
java.lang.NullPointerException: null
  at net.runelite.cache.script.disassembler.DisassemblerTest.test(DisassemblerTest.java:65)

Running net.runelite.cache.KitDumperTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.03 sec <<< FAILURE! - in net.runelite.cache.KitDumperTest
test(net.runelite.cache.KitDumperTest)  Time elapsed: 0.029 sec  <<< ERROR!
java.lang.NullPointerException: null
  at net.runelite.cache.KitDumperTest.test(KitDumperTest.java:68)

Running net.runelite.cache.ObjectManagerTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.005 sec <<< FAILURE! - in net.runelite.cache.ObjectManagerTest
test(net.runelite.cache.ObjectManagerTest)  Time elapsed: 0.005 sec  <<< ERROR!
java.lang.NullPointerException: null
  at net.runelite.cache.ObjectManager.load(ObjectManager.java:60)
  at net.runelite.cache.ObjectManagerTest.test(ObjectManagerTest.java:56)

Running net.runelite.cache.SpriteManagerTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.029 sec <<< FAILURE! - in net.runelite.cache.SpriteManagerTest
test(net.runelite.cache.SpriteManagerTest)  Time elapsed: 0.027 sec  <<< ERROR!
java.lang.NullPointerException: null
  at net.runelite.cache.SpriteManager.load(SpriteManager.java:58)
  at net.runelite.cache.SpriteManagerTest.test(SpriteManagerTest.java:55)

Running net.runelite.cache.TrackDumperTest
[main] INFO net.runelite.cache.util.Djb2Manager - Loaded 1402 djb2 hashes
Tests run: 2, Failures: 0, Errors: 1, Skipped: 1, Time elapsed: 0.032 sec <<< FAILURE! - in net.runelite.cache.TrackDumperTest
test(net.runelite.cache.TrackDumperTest)  Time elapsed: 0.029 sec  <<< ERROR!
java.lang.NullPointerException: null
  at net.runelite.cache.TrackDumperTest.test(TrackDumperTest.java:73)

Running net.runelite.cache.InterfaceManagerTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.008 sec <<< FAILURE! - in net.runelite.cache.InterfaceManagerTest
test(net.runelite.cache.InterfaceManagerTest)  Time elapsed: 0.007 sec  <<< ERROR!
java.lang.NullPointerException: null
  at net.runelite.cache.InterfaceManager.load(InterfaceManager.java:59)

Try deleting $TEMP/cache-165

@abextm Nice, that allowed me to get further in the tests, running the whole sweet now.

Tests finished and they pass now


script and library in one

Figure how to allow for invoking a NodeJS script from the command line while ALSO using it as a library with exports.
The issue is solved when we can demonstrate invoking the same JavaScript file J from the command line, node J --arguments, and with npm install from another package.
https://github.com/ArtemGr/bounty/blob/549cc6c94eb67b1d9beea9eead5a1c8d53ecfcfc/google-drive/google-drive.js#L3

There is a $44 open bounty on this issue. Add to the bounty at Bountysource.

Hey mate, have you seen https://github.com/super-cache-money/make-runnable? it is able to run 'require' scripts and has a few examples. I tested them out. They work fine for function exports but no good for class exports.
what type of nodejs script areyou planning to execute ?

Hi, Nabeel!
Looks cool, will give it a go!

what type of nodejs script areyou planning to execute ?

Function exports will do!
Most libraries should be runnable, IMHO, and vice versa.
make-runnable might be too heavy for the smaller libraries (such as log.js or termkit-pause) but we can check their code to see how they differentiate between the command line and library modes.
For a use case, termkit-pause here, when invoked from command line, should demostrate how it implements the pause.

You can execute .js files in the command line like this:
node -e 'require("./index.js").pause()'

Following the example of make-runnable I've found https://nodejs.org/dist/latest-v15.x/docs/api/modules.html#modules_accessing_the_main_module
cf. the changes in https://gist.github.com/ArtemGr/1e668405bb07bb330cc4717f6b8f891e/revisions

Also using the form suggested by @mkamalkayani in package.json
@Nabeelhassan , @mkamalkayani , you're welcome to claim the bounties (I'll wait a few days before recycling)


identity.web.Auth: get_token_for_user() returns error, despite tokens refreshed to latest

Problem statement:
For our Flask App, we are not limiting web-sign-in session to 1 hour, but we are seeing get_token_for_user() returning error 1hr after user has logged in. Expectation is that as long as id/access tokens are refreshed (exp in tokens not yet expired(), get_token_for_user() would return valid session user.
What's found:
user = self._get_user()
if not user:  # Validate current session first
return {"error": "interaction_required", "error_description": "Log in required"}
def _get_user(self):
    id_token_claims = self._session.get(self._USER)
    return id_token_claims if id_token_claims is not None and _is_valid(id_token_claims) else None

In get_user(), it tries to validate the 'exp' of the session saved user. Even though the user has refreshed access/id token when accessing other protected API (i.e. token with exp to a later time than login time), this Flask session saved user id_claim still retains the exp (as of log_in time only), and hence this error will happen 1 hour after complete_login()
More history at: https://github.com/Azure-Samples/ms-identity-python-webapp/issues/121
Thanks!

@victorho-ty , please run pip install git+https://github.com/rayluo/identity.git@renew-session to install a fix from its feature branch, and let me know how that works. Thanks.


FlutterViewController needs a way to correctly start running before being shown on macOS

Currently FlutterViewController has a private method called launchEngine that's called from viewWillAppear. That registers internal plugins, starts the engine, and sends the initial settings. There's no public way to trigger that flow, which means that if a developer wants to create a FlutterViewController that's hidden, but start running it, they can't; if they start running the engine directly using engine methods, then it won't get the internal plugins or settings.
We should change the way that non-engine code is triggered, or if that's not viable, add public API to trigger that flow.

I can found this functions on iOS platform(and android)
And, I think such functions (such as multi-window and sharing engine) are more useful in the desktop platform

Looks like launchEngine does three things today:

initialise the keyboard
set the engine's associated viewController
launch the engine

We already do 2 in the initialiser, and I assume the use-case we're concerned about is the case where the engine is already running, so seems like we could fix this by making the keyboard initialisation conditionally (check if it's already initialised) in viewWillAppear.
Some of this code is likely to get refactored pretty soon with the multi-window work, but seems like this is probably not too bad a fix for now.

Related issue was caught in https://github.com/flutter/engine/pull/34072 (workaround for that issue has landed).

The add-to-app pattern is to create and run the engine (example is in the app delegate):
https://github.com/flutter/flutter/blob/ddeb0b99c5650ff3c5c720e6a69337bd03a567da/dev/integration_tests/ios_host_app/Host/AppDelegate.m#L39-L40
Then inject the running engine into the view controller:
https://github.com/flutter/flutter/blob/ddeb0b99c5650ff3c5c720e6a69337bd03a567da/dev/integration_tests/ios_host_app/Host/MainViewController.m#L95-L97
Lots of examples of how this works in:
https://github.com/flutter/flutter/blob/master/dev/integration_tests/ios_host_app/Host/MainViewController.m

From https://github.com/flutter/flutter/issues/105347:
For iOS the FlutterViewController is presented with a running flutterEngine in the host app:
    FlutterEngine *flutterEngine =
        ((AppDelegate *)UIApplication.sharedApplication.delegate).flutterEngine;
    FlutterViewController *flutterViewController =
        [[FlutterViewController alloc] initWithEngine:flutterEngine nibName:nil bundle:nil];
    [self presentViewController:flutterViewController animated:YES completion:nil];

https://docs.flutter.dev/development/add-to-app/ios/add-flutter-screen?tab=engine-swift-tab#show-a-flutterviewcontroller-with-your-flutterengine
See also sample https://github.com/flutter/samples/blob/e3b51bb17f887ee97c0b10ead68f9d3fef063da0/add_to_app/prebuilt_module/ios_using_prebuilt_module/IOSUsingPrebuiltModule/ViewController.swift#L46
Expose -[FlutterViewController initWithEngine::] for macOS:
https://github.com/flutter/engine/blob/bbc9bd899d704c8f27225010973f8c246d3a523e/shell/platform/darwin/macos/framework/Source/FlutterViewController_Internal.h#L35-L37
Make this code work:
  func openFlutterApp() {
    guard
      let contentViewController = NSApplication.shared.keyWindow?.contentViewController
    else { return }

    let flutterViewController = FlutterViewController(
      engine: flutterDependencies.flutterEngine, // THIS DOESN'T EXIST
      nibName: nil,
      bundle: nil)
    flutterViewController.view.setFrameSize(NSMakeSize(500, 500))
    contentViewController.presentAsModalWindow(flutterViewController)
  }


libftdi1: 1.3 -> 1.4

Motivation for this change
Version 1.4 supports new FTDI chips.
Things done
Using libftdi1 in a productive environment.

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

[X] NixOS
[ ] macOS
[ ] other Linux distributions

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

Thanks!


Enable LTO optimization by default for runtime releases.

This is done by generalizing the primordial IREE_SIZE_OPTIMIZED flag into a IREE_RUNTIME_OPTIMIZATION_PROFILE that:

Can enable 'lto' or 'size'.
Is scoped to just the runtime targets.
Minimally does the right thing for 'size' on Linux vs just on Windows (not the goal of this patch but drops ~300KB from binary sizes when enabled).

The compile time delta for a clean build of the runtime in full LTO vs regular mode was not measured precisely but is in the noise (i.e. <1m). As such, just enabling by default for Python release binaries.
Others can be enabled via: -DIREE_RUNTIME_OPTIMIZATION_PROFILE=lto, which is recommended for benchmarking, etc.
Note that this removes the use of the CMake option IREE_SIZE_OPTIMIZED. It was never even declared properly as an option and didn't do the same class of thing across Windows/Linux. This has been fixed and it can be enabled via -DIREE_RUNTIME_OPTIMIZATION_PROFILE=size. Note that as on Windows, this implies LTO. If old behavior without LTO is desired, we can add a profile for that.
Progress on #898.

@ScottTodd I expect that the change of the linking mode has effectively just fuzzed execution a bit and caused a latent bug to surface in the tooling. I'm going to squash this branch for easy access but could use your help to resolve/land.

@ScottTodd I expect that the change of the linking mode has effectively just fuzzed execution a bit and caused a latent bug to surface in the tooling. I'm going to squash this branch for easy access but could use your help to resolve/land.

Interesting. I can help tomorrow. A few thoughts from a quick look:

Are the failure consistent, or flaky?

If the failures are in the same tests each run, could exclude or mark XFAIL

Could run a few times at HEAD to see if the PR itself is changing behavior

I've seen what look like system (driver/hardware/OS/etc.) flakes on the AMDGPU runners (mostly for ROCm, but also for Vulkan). Not sure if I've seen CPU flakes. Reducing parallelism helped with some classes of flakes (resource exhaustion or multithreaded compilation across dozens of runs at once hitting race conditions... idk)

Diagnostics are lacking... wonder if that's from not having debug symbols or what. Would really like more info from the tests...
https://github.com/openxla/iree/actions/runs/8319107825/job/22761993141?pr=16811#step:10:45
=================================== FAILURES ===================================
_____ IREE compile and run: test_constantofshape_float_ones::cpu_llvm_sync _____
[gw88] linux -- Python 3.11.8 /runner-root/actions-runner/_work/iree/iree/venv/bin/python
Error invoking iree-run-module
Error code: 245
Stderr diagnostics:

Stdout diagnostics:
EXEC @test_constantofshape_float_ones

Compiled with:
  cd /runner-root/actions-runner/_work/iree/iree/SHARK-TestSuite/iree_tests/onnx/node/generated/test_constantofshape_float_ones && iree-compile model.mlir --iree-hal-target-backends=llvm-cpu -o model_cpu_llvm_sync.vmfb

Run with:
  cd /runner-root/actions-runner/_work/iree/iree/SHARK-TestSuite/iree_tests/onnx/node/generated/test_constantofshape_float_ones && iree-run-module --module=model_cpu_llvm_sync.vmfb --device=local-sync --flagfile=test_data_flags.txt

Retried the failing jobs... same test failures on both CPU and Vulkan. So could mark as XFAIL to unblock this. Should still investigate though.

On my Windows machine I see the compiler crashing on these test cases at tip of tree and with this PR:
FAILED onnx/node/generated/test_shape_end_1/model.mlir::cpu_llvm_sync
FAILED onnx/node/generated/test_shape_start_1_end_negative_1/model.mlir::cpu_llvm_sync
FAILED onnx/node/generated/test_shape_start_1/model.mlir::cpu_llvm_sync
FAILED onnx/node/generated/test_shape_start_negative_1/model.mlir::cpu_llvm_sync
FAILED onnx/node/generated/test_shape_start_1_end_2/model.mlir::cpu_llvm_sync
FAILED onnx/node/generated/test_shape_end_negative_1/model.mlir::cpu_llvm_sync

So the CPU failures on CI here are strange... Could skip them instead of XFAIL to keep the same set of tests running across platforms.

Would really help to have asserts enabled in the pkgci build that these tests use. That is disabled right now: https://github.com/openxla/iree/blob/ee32fc7b74b4aad49fc46d67ea6c1f617416c4d4/.github/workflows/pkgci_build_packages.yml#L81-L83

Would really help to have asserts enabled in the pkgci build that these tests use. That is disabled right now:
https://github.com/openxla/iree/blob/ee32fc7b74b4aad49fc46d67ea6c1f617416c4d4/.github/workflows/pkgci_build_packages.yml#L81-L83

Fwiw, I think I fixed the issue behind that todo un another setup. But yeah.
Ok, I'm taking all of this as orthogonal to this patch (but still needs addressing). How do I mark those tests? (Sorry, running a few things here...)

How do I mark those tests?

https://github.com/openxla/iree/tree/main/experimental/regression_suite/external_test_suite the CPU and Vulkan JSON files. Can add to either skip_compile_tests to exclude entirely or expected_run_failures.
CPU should add these:
test_constantofshape_float_ones
test_dropout_default_mask_ratio
test_reduce_min_empty_set

Vulkan should add these:
test_constantofshape_float_ones
test_dropout_default_mask_ratio

Okay, CI is happy now.


alerts reports not working with kubernetes

Hello, this is not currently an actionable bug report.  Lots of people have alerts and reports working with Kubernetes.  If you believe you have discovered a bug in Superset that needs patching, please provide the information from the bug report template like information about your instance, your version, deployment method, what you expect vs. what you're seeing.
Or if you have questions about how to configure and troubleshoot, I suggest asking in the Apache Superset Slack chat or in Github discussions -- though in those places you will also need to provide more detail to get a response.

Closing due to lack of detail.


Dynamic Code Splitting webpack ^3.8.1

Hi,
I am using webpack ^3.8.1 and the Code Splitting feature, which is working:
import(/* webpackChunkName: "category" */ components/category/index)
Now I want to dynamically import chunks/components like this, which is not working - I got an error in the browser:
let path = '/components/category/index';
import(/* webpackChunkName: "category" */ ${path});
Error: services lazy ^.*$?5417:54  Uncaught (in promise) Error: Cannot find module '/components/category/index'.
Here is my webpack.config.js
const path = require("path");

module.exports = {
	entry: {
		main: "./theme/src/js/main.js"
	},
	output: {
		path: path.resolve(__dirname, "theme/assets/js"),
		publicPath: "./asset/assets/js/",
		filename: "[name].js",
		chunkFilename: "[name].bundle.js"

	},
	resolve: {
		modules: [
			path.resolve(__dirname, "theme/src/js"),
			path.resolve(__dirname, "node_modules")
		]
	},
	module: {
		loaders: [
		{
			test: /\.js$/,
			loader: "babel-loader",
			query: {
				babelrc: false,
				cacheDirectory: true,
				presets: ["latest"],
				plugins: [
					["transform-class-properties"],
					["es6-promise"],
					["syntax-dynamic-import"]
				]
			},
		}
	]}
};

I am grateful for every tip.
Cheers Patrick

webpack doesn't support full dynamic expressions. Only partially dynamic expressions are supported.
const path = "category";
import(/* .. */`compontents/${path}/index`)


Test that images can start notebook servers

#303 fixes a bug where the legacy buildpack can't launch a notebook server. We should probably be testing that notebook servers can start in all of our builders.

Can we close? Not sure if this is still relevant?

This is still relevant, since we can have buildpacks that don't work at all and the tests will pass. #343 fixes this by verifying that notebooks actually start in our test images.


Is that possible run this program without "CameraInfo" topics

Hi,
I forgot record the camera information topic in my rosbag. Is it possible to run cam2liar program?

You need the camera_info topic


Configurable .classpath file name

Both linter-javac and autocomplete-java have configurable .classpath file name to avoid conflict with Eclipse.
It would be nice if atom-maven also has corresponding configurable file name so that we can avoid .classpath file name altogether.

Hi @endymuhardin , thanks for your feature request!  I've put this in for you and released a new version 1.1.0.  Let me know how if it works for you!

No response from OP, closing this issue as completed.


Uploader - edit filename timezone and add FL tag

From our meeting today -
cc @koonchaya

Add 'FL' tag - like AM

Add info icon next to (what will be) Timezone Source → text - “Learn more here.”

Rename Filename Timezone → Timezone source

Rename the 4 options

a. Device configuration → Timezone in metadata
b. Timezone in filename (keep as is)
c. UTC → Ignore file, use UTC
d. Site timezone → Ignore file, use site timezone

IF songmeter or audiomoth files detected, default should be ‘a’

All other options grayed out/not available to select

IF frontier lab BAR files detected, default should be ‘b’

All other options grayed out/not available to select

IF NOT audiomoth, songmeter or BAR files, default should be option ‘d’ (ignore file, use site timezone)

Nice to have - option ‘d’ includes site timezone in UTC+5

Grey out options ‘a’ and ‘b’

Originally posted by @carlybatist in #2006

Example frontier lab filename: 20231119T000000+0930_REC_-13.64526+134.30475.wav


wlroots 0.6.0

Breaking changes:

https://github.com/swaywm/wlroots/pull/1660
https://github.com/swaywm/wlroots/pull/1611
https://github.com/swaywm/wlroots/pull/1624
https://github.com/swaywm/wlroots/pull/1672

We now require libinput >= 1.9.0.
An error was discovered in Rootston's damage tracking implementation; compositors who referenced it should review the changes.

wlroots 0.6.0 has been released:
https://github.com/swaywm/wlroots/releases/tag/0.6.0


Refactor ECR login to use get-login-password (#15)

Tests
$ make publish-all-aws DOCKER_REPO=XXXX.amazonaws.com AWS_CLI_REGION=XXXX AWS_CLI_PROFILE=XXXX
/Library/Developer/CommandLineTools/usr/bin/make -C ../operator  "DOCKER_REPO=\"XXXX.amazonaws.com\"" " AWS_CLI_PROFILE=\"XXX\"" " AWS_CLI_REGION=\"XXXX\"" publish-aws
Login Succeeded
# ...etc etc...

Related Issues
<!--
    Reference related issues here. For more information: https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue
->
Resolves #15.

Used the comments on this Gist for implementation inspiration.

Taking a look! Thanks for this - I don't recall if I'd actually been able to fully test the auto-publish for this initial release. I'll mock up ECR on my end and get this tested and merged.