[WIP] Staging->master

Please do not merge yet.
PR for promoting staging to master for production deploy next Wednesday.

I would include this one as well: https://github.com/kbase/njs_wrapper/pull/26
But it's not necessary since all things are tested and working in Next. So this PR looks good enough as is.

Since we're hoping to do another update soon after next week, to get the shock->mongo migration feature into production, I think we can wait on #26.  If we had no such plans I might push for it but let's not worry about it.

Ok


Create elasticsearch vs. postgres UX worksheet

Need
For product development of the query service, we have real-world users of data repositories try to complete queries in each query language and report on their experience with each.
The task in this ticket is to create a worksheet for participants in the UX study with the queries and some questions for us to learn about their experience.

In person interview template https://docs.google.com/document/d/14fTw91U1xmlmNzimI5j2V9gppr0ISINVBVG0-15MYDg/edit?usp=sharing
Diary study template https://docs.google.com/document/d/1M3z_SS3mtmtDOggUuUzTXqdvee52l56_sd0DWwLZHoQ/edit?usp=sharing


Problems about disparity calculation

Hi, thanks to your code and paper. I just have a question about disparity before loss calculation. In paper you said you first upsampled the disparity to the original resolution, then you use it for training loss calculation. So you first calculation disparity on three different resolution and then upsample them to the original resolution which is the same size as reference image(left image). Am I right?  If I'm right, I just wonder if there is any wrong with these implementation?Another question is how did you decide the number of batch_size, because is really large.

Hi, firstly, you are right, but what implementations are you refering to? Could you please give more details?
Secondly, we haven't tuned the batch size, it is just set for faster training (in terms of epochs) according to our GPUs (four 32G V100).

Thanks to your reply. Refers to PSMNet, they use trilinear to upsample the depth volume(1/4H1/4W1/4D--->HWD), and then calculate the disparity. It's on the totally 192 disparity range. But if we calculate the disparity on small resolution, the disparity range is also small. So when we use upsampling, can we recover it very well? I just don't know if there is any differences.

Directly upsampling the low resolution disparity may lose some details compared with upsampling cost volume, but we also have refinement modules to obtain the disparity prediction at the original resolution. Also, upsampling a 2D disparity is more memory efficient than upsamling a 3D volume.

emm, I'm still confused. For example, for 1/4H*1/4W, we set the disparity 48, when we use upsampling, the upsampled values are also in 0-47.  But in your network, it works(maybe the network itself can amplify the disparity range). I just can't figure this out. Maybe I'm wrong.

In PSMNet, they use upsampling first which in my opinion contains a disparity range recovering. And then calculate the disparity. Have you ever tested the network without any refinement modules?

When upsampling disparity, a scale factor is also multiplied to account for disparity scale change (see https://github.com/haofeixu/aanet/blob/master/model.py#L97-L98). I believe this is what you are missing currently.


Atom/RSS export or e-mail notifications plugin

When new events get added to calendars, it is useful to get notified about them. This could be achieved by

Atom/RSS feed subscription (possible proxied to option no. 2)
Direct e-mail notifications triggered on all CRUD operations

Currently, I am not seeing anything of this kind listed in the documentation. I was the original driver of DAViCal's RSS feed export module https://gitlab.com/davical-project/davical/commits/master/htdocs/feed.php and this functionality has definitely proven useful over the years. But sabre-dav is obviously the way of the future so looking for ways to get that functionality back.

I think this type of functionality would be much better implemented as a separate package.
Sabre/dav has all the API's and endpoints to make this happen, including ways to add new formats, or hook into events. So I'm not sure if this is a core sabre/dav feature, but I'm happy to help you create a composer package for this (if you are interested in implementing this yourself) and I would also be more than happy to host documentation for this on sabre.io.
So let me know if this is something you can do and if you need my assistance (or pointers) in any way.


[$500] Web/Windows 10 - Emoji - Same emoji is added few times when click quickly on it

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.21-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Navigate to staging.new.expensify.com
Go to any chat
Click on Emoji picker
Click on any emoji in a quick manner

Expected Result:
Only one emoji should be added to chat composer
Actual Result:
Same emoji is added few times when click quickly on it
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] Windows 10: Chrome
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/93399543/e45fdad4-b5d7-431b-a8b5-3b6aaf45ad1a
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01cd4340baf0d7fe2b
Upwork Job ID:<PHONE_NUMBER>369379840
Last Price Increase: 2024-01-03

Proposal
Please re-state the problem that we are trying to solve in this issue.
Quickly clicking multiple times on an emoji in the emoji picker causes multiple emojis to be added into the text field before it is hidden. This is unintended behaviour as only one emoji icon should be added at a time.
What is the root cause of that problem?
This is down to the asynchronous nature of state updates in React and how that leads to a flaw in selectEmoji's current implementation.
https://github.com/Expensify/App/blob/339987bff6dbc7a6f5042b597af73eb4560c396a/src/components/EmojiPicker/EmojiPicker.js#L109-L120
When hideEmojiPicker is called, it schedules an update to the component to re-render with the new state (e.g. hidden). However, this update and subsequent re-rendering doesn't happen immediately, it happens on the next rendering cycle (or "tick"). In the meantime, isEmojiPickerVisible is still true, meaning multiple emojis can be selected. Hence, the guard condition mean to prevent this is of no use when the user does subsequent quick clicks.
What changes do you think we should make in order to solve the problem?

We can modify the implementation to guarantee that selecting an emoji will first hide the emoji picker, before we proceed in calling the onEmojiSelected callback.
One way of doing this is introducing a selectedEmoji state. On unmount (emoji picker hidden), we check if an emoji has been previously selected and only then do we execute onEmojiSelected with its value. This happens once regardless of how many times the user clicked before hiding took place.
What alternative solutions did you explore? (Optional)
Another reasonable alternative is to debounce the selectEmoji function. This should work fairly well, however I feel this is masking the root problem which is we don't currently guarantee that only one emoji is added after the picker is hidden.
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.
Before:
https://github.com/Expensify/App/assets/91962855/10b421d0-50a4-463d-ad69-c6758ad0142c
After:
https://github.com/Expensify/App/assets/91962855/98927423-6e0a-4a84-b372-5aa2228c5220

Contributor details
Your Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/freelancers/~01b63362ffa1c6d28d

Proposal
Please re-state the problem that we are trying to solve in this issue.
Web, Same emoji is added few times when click multiple times on it.
What is the root cause of that problem?
It seems like the issue we're encountering is related to handling multiple clicks on the EmojiPickerMenuItem component. The useSingleExecution hook we're using is designed to prevent multiple executions of the same action, but it appears not to be working as expected.
What changes do you think we should make in order to solve the problem?
Modify the singleExecution function to actually prevent multiple executions. This could involve setting a flag when the function is called and only allowing the function to execute if the flag is not set.
export default function useSingleExecution() {
    const isExecuting = useRef(false);

    const singleExecution = useCallback(
        <T extends unknown[]>(action: Action<T>) =>
            (...params: T) => {
                if (isExecuting.current) {
                    return;
                }
                isExecuting.current = true;
                action(...params);
                // Reset after action is done or after a certain delay
                setTimeout(() => isExecuting.current = false, 300); // Adjust delay as needed
            },
        [],
    );

    return {isExecuting: isExecuting.current, singleExecution};
}

In this modified version, isExecuting is a ref that prevents the action from being executed again if it's already in progress. The timeout resets this flag after a delay, ensuring the function can be called again later. Adjust the delay as needed for our use case.

This seems a low priority bug since it's almost only reproducible in Windows (in mac it's pretty hard to reproduce) I have asked in Slack if this is something we should fix https://expensify.slack.com/archives/C01GTK53T8Q/p1704396331170969

Jack reacted to the post with a NO, so I'm closing this issue.
Thanks team!


Usage with Octane:  Error: Assertion Failed: You cannot access this.$() with jQuery disabled.

Version of x-select: latest
Ember Version / Ember CLI Version: Octane

There are codemods here:

https://github.com/ember-codemods/ember-3x-codemods/tree/master/transforms/jquery-apis
https://github.com/ember-codemods/ember-3x-codemods/tree/master/transforms/jquery-event
https://github.com/ember-codemods/ember-3x-codemods/tree/master/transforms/ember-jquery-legacy
to remove jQuery :)

however, the code looks like it's been updated.
Just need a new release cut

updating package.json to use master resolves the error
    "emberx-select": "github:adopted-ember-addons/emberx-select",


Add AppVeyor config

Fixes #36.
TODO

[ ] Some person in the Electron org enables AppVeyor support for this repo (and sets the appveyor.yml filename to .appveyor.yml)

Apparently there's a way to build both x64 and x86 executables (if #34 is to be believed) but I don't know how to do it via AppVeyor.

Another neat thing that we could do, if this is accepted, is to automatically update rcedit.exe in https://github.com/electron/node-rcedit when master changes.

Thanks for adding this @malept
I pushed a small change just to kick off another build once AppVeyor was enabled on this project, everything looks good 👍 🚢


compare size before comparing contents

No point in reading the contents if the size differs

Reduced the block size to 2**18 which is a cache size on beefier processors


error: not linking environment.etc."nix/nix.conf" because /etc/nix/nix.conf already exists, skipping..

Hey @vic, okay #1 seem to go away now, but now I get this error, I tried moving my /etc/nix/nix.conf, but now I no longer can run flake commands:
error: experimental Nix feature 'nix-command' is disabled; use '--experimental-features nix-command' to override

Additionally, I get the following error msg:
existing file has unknown content c6e31ckcc2f6b79da0755d90c8b9a6934de322cedc3f1fa7580db2fcnc0460d, move and activate again to apply

Thanks

yep that is because a derivation refuses to overwrite existing files. that is a good thing.
something i did at my side is, I moved nix.conf to the current directory and then run  env NIX_CONF_DIR="$PWD" nix run.
also if you take a look at my system module there i read the contents of my nix.conf so it can be part of the new generated config:
https://github.com/vic/vix/blob/a07bf1e8789b3ad7e7a82044c185cbc859d0a6ef/vix/modules/oeiuwq/default.nix#L8

or simply use the following options to the nix command:
nix --experimental-features 'nix-command flakes'

@tami5 did that works for you ?

Yes it did work, forgot I still had the issue open. Thanks @vic


What do the elements in configs/model.json mean?

I have successfully trained an example model using csd data. So, this time I am trying to learn with my own data.

Traceback (most recent call last):
  File "/home/gnc/jtk-svs/mlp-singer_neo/train.py", line 39, in <module>
    main(args)
  File "/home/gnc/jtk-svs/mlp-singer_neo/train.py", line 20, in main
    trainer.train()
  File "/home/gnc/jtk-svs/mlp-singer_neo/trainer/core.py", line 63, in train
    train_dict = self._train_epoch()
  File "/home/gnc/jtk-svs/mlp-singer_neo/trainer/core.py", line 31, in _train_epoch
    pred = self.model(pitch, text)
  File "/home/gnc/anaconda3/envs/happysong_mlp/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/gnc/jtk-svs/mlp-singer_neo/model/core.py", line 28, in forward
    x = self.embed(x)
  File "/home/gnc/anaconda3/envs/happysong_mlp/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/gnc/anaconda3/envs/happysong_mlp/lib/python3.9/site-packages/torch/nn/modules/linear.py", line 103, in forward
    return F.linear(input, self.weight, self.bias)
  File "/home/gnc/anaconda3/envs/happysong_mlp/lib/python3.9/site-packages/torch/nn/functional.py", line 1848, in linear
    return torch._C._nn.linear(input, weight, bias)
RuntimeError: CUDA error: CUBLAS_STATUS_ALLOC_FAILED when calling `cublasCreate(handle)`

I think the cause of this problem is the hyper-parameter value of model.json that is tailored to the csd data.
However, I was able to infer that the meaning of num_pitch is the number of pitches, but I do not know the meaning of d_pitch, num_phone, and d_phone.
If possible, can you tell me all the meanings of the above 3 hyper parameters and model part arguments of model.json?

Hello, thanks for opening this issue. The parameters you mention all have to do with embedding layers.

d_pitch: Embedding dimension for pitch embeddings
d_phone: Embedding dimension for phoneme embeddings
num_phone: Number of phonemes

So the phoneme embedding table will be of size (num_phone * d_phone), and ditto the pitch embedding table.
Let me know if you have more questions!

From what I understand, d_phone and d_pitch are hyperparameters involved in the dimension of the embedding, and changing them affects the 'quality of the model' and has nothing to do with the error I'm experiencing.
In order to solve the problem I have, I will have to accurately count the unique number of characters in my txt file and write them in num_phone.
Is my understanding correct?

From what I understand, d_phone and d_pitch are hyperparameters involved in the dimension of the embedding, and changing them affects the 'quality of the model' and has nothing to do with the error I'm experiencing.

This seems correct, though I can't say for sure that it has nothing to do with the error you've encountered. CUDA messages from PyTorch tend to be very opaque, so I recommend that you try running the model with CPU to get a more informative error message.

In order to solve the problem I have, I will have to accurately count the unique number of characters in my txt file and write them in num_phone.

It depends on how you tokenize and phonemize your input. If you decide to map one character to one token, then yes, that is the strategy you would use. IIRC in my case, I used G2P and mapped one phoneme to one token.

Then can you tell me how the num_phone:47 of model.json you shared is decided?

If I recall correctly, it comes from the way G2P code is written. You can find the list of phonemes in constants.py. The code path is roughly:

serialize.py: Script to serialize data
preprocess.py: Module that defines the Preprocessor class used for serialization
g2p.py: Module that defines the encode() function, which is called by the Preprocessor
constants.py: Defines the set of onset, coda, and nucleus tokens

If I'm not mistaken, if you add up all the onset, coda, ane nucleus tokens defined in constants.py, it totals to 47.
If your custom dataset is also Korean, you can probably use the script without modifying it.

Thank you for your quick and friendly reply!
I solved the problem I had.
To explain the process of solving the problem, as a result of checking the exact error message by changing the device from cuda to cpu in config/model.json,
IndexError: list index out of range

was output, and the number of pitches I entered in model.json and I found out that IndexError appeared because the number of pitches read by the model during the encoding process was different.
I thought I counted the pitches correctly, but I didn't.
For people like me who will use neosapience/mlp-singer with their own song data, it is recommended to accurately count the number of pitches in the pre-processing process.

Happy to hear that you've solved it! Thanks for documenting your fix.


chore: make fedimint-ln-client::db public

When integrating with the client, it's nice to have access to db structs.

When integrating with the client, it's nice to have access to db structs.

For reading purposes right?


getIP

Does the getIP function show the IP of the device or the IP of the server it is connected to?

It's for the device.
/Jonas

24 mars 2016 kl. 15:31 skrev cadywompus<EMAIL_ADDRESS>Does the getIP function show the IP of the device or the IP of the server it is connected to?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub


Use GitHub actions for CI

Are there any objections against using GitHub actions for CI? It's faster than travis (which queues test suites for quite some time) and a native part of the code hosting platform. Also travis changed it's pricing model last fall, so OS projects have less free build minutes.
With GitHub actions it's straight forward to run both Python tests, and even publish a package automatically to PyPI (not sure if @stlehmann currently manually publishes them?). The config for a side project of mine is here. If desired I'll copy and adjust it for pyads.

Are there any objections against using GitHub actions for CI?

Actually my only objection is that I know Travis CI well and have been working with it for a long while now. I haven't used github actions so far.

With GitHub actions it's straight forward to run both Python tests, and even publish a package automatically to PyPI (not sure if @stlehmann currently manually publishes them?)

Automatic publishing on PyPi sounds like a nice feature. Indeed I do the upload manually since the beginning of time.

The config for a side project of mine is here. If desired I'll copy and adjust it for pyads.

If you like you can make a PR to setup CI on Github Actions. This way we can run both CIs in parallel and eventually change to Github if it performs better.

@pylipp Thanks for the bump towards Github Actions. I introduced them with #221. Also Upload to PyPi should happen automatically on release.


Update log4cats-core, log4cats-slf4j to 2.3.2

Updates

org.typelevel:log4cats-core
org.typelevel:log4cats-slf4j

from 2.2.0 to 2.3.2.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (2.2.0).
You might want to review and update them manually.
website/package-lock.json

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.typelevel" } ]

labels: library-update, early-semver-minor, semver-spec-minor, old-version-remains, commit-count:1

Superseded by #64.


HTTP Error: 406 Client Error: Not Acceptable for url

Hello,
I get a client error when connecting to an azure dicom webserver. I can see normally all the records and I can as well remove a selected series from the DICOMweb server through Slicer's extension. But when I try to "download and index" it I get:
DownloadSelectedSeries: Error in getting response from DICOMweb server.
HTTP Error:
406 Client Error: Not Acceptable for url: https://xxx-xxx.azurewebsites.net/studies/1.2.826.0.1.xxxxxx.x.xxx.x.x.xxxxxxxxxxx.xxxx.xxxx/series/1.2.826.0.1.xxxxxx.x.x.x.x.xxxx.xxx.xxxxx.xxxxxx/instances/1.2.826.0.1.xxxx.x.xxx.x.x.8xxxxx.xxx.xxxxxxxx.xxxxx

What could possibly go wrong?
OS: Win 10
Slicer version: 4.13.0-2021-03-03 r29745 / fca084e
Regards
Antonios

Do you have a way to replicate this on a public instance with anonymized data?

@athanell Thanks for the PM with more detail.  Is it correct that no studies can be pulled from Microsoft's dicomweb server using Slicer's dicomweb browser?  (i.e. it's not specific to this data).  I haven't used their server before.
It looks like the underlying issue is the accept header options that Microsoft's server supports vs google and dcm4chee.
I can reproduce this with curl:
curl  "https://<public-server>/studies/1.2.<...>/series/1.2.<...>/instances/1.2<...>/frames/1"

The request headers are not acceptable

but
curl -H 'accept: multipart/related; type="application/octet-stream"'  "https://<public-server>/studies/1.2.<...>/series/1.2.<...>/instances/1.2<...>/frames/1"

Gives me a stream of data that looks valid (this is the header accept string that ohif uses).
Compare their conformance statements:
https://github.com/microsoft/dicom-server/blob/main/docs/resources/conformance-statement.md#retrieve-wado-rs
https://cloud.google.com/healthcare/docs/dicom#dicom_studyseriesinstances
@hackermd do you have experience with this?
MDN indicates that 406 codes are rarely helpful and maybe Microsoft should be more flexible, but it's also possible that a workaround in the client is preferred.
@lassoan might also have ideas.

@pieper yes I can verify that in order to pull data from Microsoft's dicomweb either with python or curl one needs to use the header "accept: multipart/related".
The same error came up with different datasets so I think that it is not a data-specific issue.

Thanks @athanell for reporting the issue and @pieper for looking into it.
I am not sure I understand what the problem is and whether it is a problem with the library or the Slicer application.
The dicomweb_client.api.DICOMwebClient.retrieve_instance_frames() method sends requests with mulipart/related type="application/octet-stream" accept header (see here).
Do you have or could you create a debug log, i.e., configure the dicomweb_client logger with logging.DEBUG?

The downloading in Slicer is fairly straightforward:
    instances = self.DICOMwebClient.search_for_instances(
      study_instance_uid=selectedStudy,
      series_instance_uid=selectedSeries
      )
    ...
    for instanceIndex, instance in enumerate(instances):
        ...
        retrievedInstance = self.DICOMwebClient.retrieve_instance(
          study_instance_uid=selectedStudy,
          series_instance_uid=selectedSeries,
          sop_instance_uid=sopInstanceUid)
        pydicom.filewriter.write_file(fileName, retrievedInstance)

(full source code)
Do you see anything suspicious in this?

Thanks @lassoan!

Do you see anything suspicious in this?

No, looks good to me.

@pieper @lassoan what version of dicomweb-client is used by this Slicer version?
The Microsoft dicom-server has an issue with the media type for the retrieve transaction. We updated the dicomweb-client after #41 (included in release 0.51.0.

Latest DICOMWebBrowser extension installs 0.52.0:
@athanell Please check the version in your Slicer version by opening the Python console (Ctrl+3) and typing these:
>>> import dicomweb_client
>>> dicomweb_client.__version__
'0.52.0'

@lassoan yes I can verify that my version is the '0.52.0'

Thanks @lassoan and @athanell for double-checking. It should not be the client version then. I have limited experience with the Microsoft dicom-server and will need to explore further.

Hi! I'm just seeing this for the first time. Apologies for missing it earlier. I'm working on the Azure DICOM implementation. Let me run this error to ground.  Thanks for all the context in the posts above.

Thanks @StevenBorg! We updated the dicomweb-client in version 0.51.0 such that it tolerates a response with content-type application/dicom or multipart/related; type="application/dicom" (see here). However, the client still includes the Accept: multipart/related; type="application/dicom" header in the request (see here). Technically, we should also include application/dicom in the accept header field, but were reluctant to do that because it's not compliant with the standard and may cause issues with other origin servers.

Hello @pieper . I can replicate this error using Slicer's sample head CT on the server http://dicomweb.azurewebsites.net/ found in https://github.com/DICOMcloud/DICOMcloud

Thanks @athanell - let's see what @hackermd thinks when he gets back.  I know he's reluctant to have the client support non-standard behavior and may be more inclined to work with the server developers for better compliance.

Thanks for performing the additional tests @athanell! As @pieper pointed out, we are generally reluctant to support non-standard behavior. However, I've also come to painfully realize that sometimes there is not much one can do but work around a compliance issue. We should thus find a way to unblock users while working with the server implementer on resolving compliance issues.
@agharwal recently introduced a permissive flag for the constructor(s) of the dicomweb_client.uri.URI class (see PR #49) to relax enforcement of standard compliance. I wonder whether we want to extend this logic to the dicomweb_client.api.DICOMwebClient class?
@pieper @ntenenz what do you think about that?

I have the same issue. I pinpointed the issue arising going from 0.55.0 to 0.55.1 (and all following versions).
My solution is to use 0.55.0 for now.
Here's my code:
from dicomweb_client.api import DICOMwebClient

client = DICOMwebClient(url=url)

 pydicom_dataset = client.retrieve_instance(
                    study_instance_uid=study_uid,
                    series_instance_uid=series_uid,
                    sop_instance_uid=object_uid,
                     )

The error is:
406 Client Error: Not Acceptable for url: http://......../studies/........../series/............../instances/.............
Note I'm running into this when trying to pull from an MGB VNA. I can provide more details on a private channel if desired. My email is delton at mgh . harvard

In version 0.55.1, changes were made related to the handling of media types (see #63). These changes were not intended to be break anything, but the following change may lead to a change in server behavior (although it shouldn't from the perspective of the standard):
https://github.com/herrmannlab/dicomweb-client/commit/8ea25c5ac18fbf74606bbd9622300467a759a6d0#diff-437b51b3f115cd02de5408a04dedfcc86f4110edec2a79f7f28ac96d88d06184R2664-R2665
@delton137 could please try setting the media_types=('application/dicom', ) explicitly and see whether that fixes things?

@hackermd using media_types=('application/dicom', )  in client.retrieve_instance() fixes the issue for me! Thanks - I can use the latest version now!

@delton137 That is an indication that the archive has standard compliance issues. It appears it does not understand/handle the transfer-syntax part of the Accept header field.


Bugfix debounce

Coverage remained the same at 96.95% when pulling 7d8ee75bd9e0f8d82d2d14c7718b078ff1977b5c on bugfix-debounce into 33cba22711e3cb88d6956ea00cb3b246abcdf55c on develop.

Coverage decreased (-0.2%) to 96.8% when pulling e6cb622b113f52e2619cc40c51633e20370e9e33 on bugfix-debounce into 33cba22711e3cb88d6956ea00cb3b246abcdf55c on develop.


Create React components for Calculator UI

Hi,
I have implemented the following project requirements.
Project requirements
In the previous project, you worked on the setup of a React application using Create React App (CRA), now you should:

Delete all the boilerplate from CRA (text, images, styles).
Create a directory called components.
Inside components, create a new Calculator.js file.
In Calculator.js, create a React component that matches this design:

Don't add any extra design.
Develop just the UI of the calculator; the math logic to make it work will be added in the next project.
Use class-based components (All components should be class-based).
Once the Calculator is ready, import it and use it in your main component (App.js).
Test it in the browser; it should render without problems.

https://nayankaran.github.io/math-magicians/


Publish to aquila.red

https://aquilla.red is a package index for zigmod
This would make it simple to add this package to a project via zigmod:
zigmod aq add 1/getty-zig/getty
zigmod fetch

Sounds good to me! Would you like to take a crack at it? I believe it's just:

zigmod init
Update installation section in README.
Update CI file to install Zigmod as a dependency.
Publish to Aquila (which I'll do after the PR's merged).

Will do!

This will have to be put on the backburner until zigmod supports publishing from github organizations (https://github.com/nektro/zigmod/issues/63#issuecomment-1063205053)

being published on the site is not a requirement of having a zigmod.yml manifest

@demizer We can make publishing to Aquila a separate issue then, and change this one to just adding support for Zigmod (i.e., just steps 1-3 from my previous comment).

Sounds good to me. I'll try to get to it this weekend. :+1:


Preview images

With Discord now having expiring image links, the preview image for the theme no longer loads. This PR updates the image link to the raw image added to this repo.
Other changes:

Update dependencies, including removing unused pkgs

Also, forums and shop need styling, I can add later if you'd like

Thank you for your contributions!


Code motion mutator

Skeleton for code-motion mutators

First code motion mutation implemented for if-else constructions:

For a random if-else, inverts the expected stack value and  swaps the encoding for then and alternative branches

cc @fitzgen

Thanks @fitzgen !
Comments addressed :)


Fix warning error when concatenating a string with cljs/+ - fixes #5

Using str to concat two strings prevents the warning from occurring.

I will be merging this after February 25th should no one have comments.


User Details - Function - Expand all timesheet dates

•	Expand field that shows all timesheet dates

Close #10


Allow consolidated json report to be renamed

Hello 👋
First of all, thanks for the upgrade to make wdio-mochawesome-reporter compatible with webdriverio v5!
I was trying to consolidate the json reports generated by each test spec and managed to do so via the mergeResults utility function. However, I need to have unique filename for the merged files. My use case would be iOS and Android (appium) tests would be running concurrently and I need separate reports for each.
Is it possible to have a parameter that would accept a filename?
Cheers!

@arcmorales Glad you are finding this useful.  Yeah, I think having this option makes sense.  I have a full day today but will check our your MR this evening (US Pacific Time).


This seems to fix the respring loops

I have no clue why so I suspect it has more to do with something going wrong during recompilation that this

Not a fundamental solution.


Improve parent dir check in UfsSyncPathCache

Description
Improving cache logic for https://github.com/Alluxio/alluxio/pull/9668

If the dir is the last layer of directories, the result of "ls" is the same with "ls -R", but the descendantType of "ls" is "ONE" not "ALL", and the path cache will be not the same.
Improvement
Add variable parentLevel for parent dir check and skip the mLastRecursiveSyncMs for direct parent.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/5079/
Test PASSed.

The two steps of shouldSyncInternal() can merge one in the while cycle with parentLevel, but the logic of two steps should be more clear.

@liuzx32 Thanks for the PR.
I think there are three cases we need to address.
In all cases, we need to check its parent, its parent of parent... until root to see if it is in the cache with recursive set to true.
In all cases, we need to check itself to see if it is in the cache with recursive set to false or true. .
if the path is a file, we need to check its parent to see if it is in the cache with recursive set to false.
Example of the third case is /dir is in the cache with recursive set to false, /dir/file should have already been synced, but /dir/dir2 is not synced.
The current PR does not quite address the third case, and it misses checking the immediate parent with the recursive set to true.

@yuzhu Yeah, you are right! I will add a method for that.


Mission progress won't send event until aircraft reaches the following waypoint

This happens for mission items with loiterTimeS = .nan, cameraAction = stopPhotoInterval/no action. We do not get mission progress event until aircraft reaches the following waypoint.
We get a mission progress event every time the drone reaches a waypoint.
The issue seen is, if you have a waypoint mission (for example 10 waypoints), where 5th waypoint has 'loiterTimeS = .nan' & 'cameraAction = .none' and the 6th waypoint has 'loiterTimeS = 1' & 'cameraAction = .takePhoto', then when the vehicle reaches 5th waypoint, we do not receive mission progress event and when the vehicle reaches 6th waypoint, we receive the mission progress event twice.
This happens for mission items with loiterTimeS = .nan, cameraAction = stopPhotoInterval/no action.

@julianoes: Would you mind having a look at that?

So the way it is supposed to work is that you only receive a mission progress for a mission item which is actually a waypoint, so a mission item with lat/lon defined.
Would it be possible to share a minimal list of mission items to reproduce this?

This is old, and has likely been fixed in the meantime, closing.


As an operator I want to be able to filter on any custom fields that are available on the cart

Resolves #164
Testing Instructions:

Use branch feat/promotions on API for testing

Start the app and login with a valid account

Navigate to Promotions

Click Actions/Create New

Fill in all required fields

Scroll down to Promotion Builder section

Click Add Action

Click Add Condition

Click on Property field

Data populated in the dropdown comes from the introspectSchema endpoint with the schema name CartItem.

Additionally I want to select a custom subset of fields that I want to filter on and store that setting in ShopSettings, so that the list of attributes is kept manageable. Is this related to Promotions? Or is this a new setting in the Store settings page?

It should just be for Promotions but honestly I am not sure where the best place to put this in the UX is as we don't really have anywhere for "global" setting for Promotions. Any input @brendan-shea-pm? Open to ideas

@zenweasel Can you give some more context on how an operator would use this functionality? Want to make sure I'm thinking about this in the right way. Could this fall under the advanced search and filter functionality we've touched on recently or is this specific only to Promotions?

@brendan-shea-pm Yes.
So this feature adds the fields that are available on the cart to the list of attributes you can filter on for inclusions or exclusions. Importantly this would allow any custom fields that the customer has added to be available to filter on. That work is already complete here and works.
However, this list can get really long and there are several fields that you would probably never want to filter on. So the additional ask here is to be able to optionally select a subset of fields that you would normally want to filter on and store that list somewhere in Store Settings so that normally when someone goes to that list they would only see those fields.
Chloe's question is where exactly would that selection go UX-wise, here maybe in some sort of slide out? or would it go in the regular Store Settings even though this is a Promotions-only setting or somewhere else.
I don't think it would be the end of the world if we kept the full list, but it's a nice usability bump to just see your selected subset.

@tedraykov Let's merge this as-is and get these changes in and deal with any issues along the way

@zenweasel you need to reapprove to merge this PR


scheduler monitoring inacurrate

The unkown-0 should not be recorded and displyed

Each state will be recorded, and may there be unknown when an error occurs?
https://github.com/pingcap/tiflow/blob/995ea7644377647aceaa2f5226f3e482aaadd996/cdc/scheduler/internal/v3/replication/replication_manager.go#L841-L863


Text inputs in header getting filled with wrong values

I tried this and it freezes my columns like a charm, but I have one problem which makes the whole thing useless for me.
I have text inputs in my header to filter the table content. When I use the freeze column function on my table and perform a postback these text inputs get filled with: value + ',' + value
So when the text input was empty then the value becomes ','
When it for example was '123' then the value becomes '123,123' and so on.
How can I prevent this from happening?
Thanks in advance

If you have Inputs inside a frozen table, these get cloned an exists twice.
This will help:
$(".example").freezeTable({ 'columnNum': 2, });
$('.yourform').submit(function(){
    freeze_Table_Update();
});
function freeze_Table_Update() {
	$('.clone-head-table-wrap tbody :input, .clone-column-table-wrap tbody :input, .tableFloatingHeader thead :input').attr('name', null);
	return true;
};


Email Template Link Problems

What I'm trying to achieve
User have correct link in their email
Steps to reproduce the problem

user checkout using dummy payment and
capture the checkout in dashboard 2.0.0

What I expected to happen
User have correct link in sended email
Screenshots

System information
Operating system: Ubuntu 18.04
Browser: Chrome 78
Setup:
Saleor 2.9.0, Dashboard 2.0.0, Storefront 0.7.0 and use sendgrid
anyone can help me?

fixed with adding these in .env file :
ENABLE_SSL=True
DEBUG=False


Expose toml::value::Table to consumers of the crate

This is a review comment split out of https://github.com/Malax/libcnb.rs/pull/28#pullrequestreview-705465664.
If this suggestion ends up being wontfix we can always close this issue out, however I didn't want it to get lost given that the PR was already merged :-)

We should be exposing toml::value::Table if we expect users to use this as part of the crate.
-- @hone

I'm not sure how much I agree here. pub useing toml::value::Table would create libcnb::Table which effectively is just an alias and Rust's compiler is smart enough to realize toml::value::Table and libcnb::Table are the same type:
let x = libcnb::Value::Integer(23);
let y = toml::Value::Integer(23);

assert_eq!(x, y)

However, this would need to be documented somewhere when users want to use the "regular" toml types because it's not immediately obvious that we're just re-exporting. Even if we'd re-export toml::Value, users would need toml::value::Table as well to effectively work with it. Should we re-export this as well?
I'm worried that this is a slippery slope where, in the end, we re-export the whole toml crate and pollute our libcnb namespace with toml crate exports. In return, we get that users don't need to declare a dependency on toml if they want to use raw toml.
For me, this does not sound like a good trade-off.

Yeah I agree

In return, we get that users don't need to declare a dependency on toml if they want to use raw toml.

I think there's more nuance than that there and it's a bit of a judgement call of what we want from the API. I've used crates that either wrap a type to make it their own, re-export, or forces you to pull it in, though that does require us to be somewhat careful on features we use in the tomlcrate if it's part of our public API. There's a pretty good discussion on this exact issue. In reqwest, it re-exports parts of the tls crate.


update vuescan to 9.5.08

:smile:
first contribution to homebrew-cask, hope I did everything right!

:+1:


Easily edit testsets with looong content

Testsets are displayed in a tabular view.
Sometimes the content of the cells is too loooong and is making life harder when we want to edit it.
Therefore we want to improve displaying testsets content for a better user experience
Idea:
An icon on the right of each cell that is displayed when hovering over the cell.
when we click on the icon we open the appropriate row's content in a modal containing a table with two long columns.
we exit with clicking on an “update” button
when we click outside of the modal we don’t save

One idea is to add a very small icon on the right or each row that when clicked opens a modal with the entry that you can edit.
It makes sense to start first with a concept/wireframe of the modification before implementation

Wireframe: https://app.excalidraw.com/s/6rfBpfMgkCb/6IwLLgRMMPC

Thank you for sharing the wireframe, @MohammedMaaz!
I've made an additional proposal. I think we should place all columns for a particular row in the focused edit modal (or drawer). This is because users typically read from the first column while writing the ground truth / correct answer in the test set. For example, if the user is building an LLM app that extracts specific data from a transcript, they would read the transcript and then write a JSON with the correct answer. Therefore, it's practical to have both in the same location.
Alternatively, we could opt to dynamically adjust the size of each row based on the text's length, which might be easier to implement. If this is the case, I suggest we proceed with it for the time being especially given the issue isn't of high priority.
One more point to consider: should we choose the first solution, I have a preference for drawers over modals, or at the very least, making sure that we use the maximum available space to display data.
@aakrem, I'd appreciate your thoughts on this.

@MohammedMaaz  thanks for the frames.
As discussed yesterday, my suggestion is aligned with @mmabrouk's . when we click somewhere we display the whole row not only once cell's content.
For modal vs drawer I am more convinced to proceed with modal as drawers are meant to display a side content with small width, which is in my opinion against what we are trying to achieve here to give more space to users.

Sure @aakrem , the PR for this is ready. Just one minor thing, I think the Cancel button doesn't make much sense to me. I think it would be convenient for the user to just update the row as they type. So, whether they close the modal by clicking away or by pressing close, the changes won't get lost


Impact Dashboard Dynatrace / Service Web Requests are divided into many Services

Hello @rathnapandi ,
After ugrading to this new version of jar, we encoutered a problem in dynatrace by having many services by API and not just one AXWAY-API Service as in the past, this causing us a problem for our dashboard whis is based on this old service in production.
New services :

Old :
=>One Service
Axway-API
Could you please help us in this problem? Do you have any idea if we can regroup services in one as the past ?
Regards
Marouane

Hi @marouanermidi,
We can control that from the plugin by hardcoding path as /.

Hello @rathnapandi,
Thanks for the reply, can you please change the path to have one service Axway-API as the past or maybe send us the change we should do to not impact others ?
Regards

Hi @marouanermidi
Were you able to add figure this out. If yes, please let me know where should we hardcoding path as /
Thanks
Venu
cc: @rathnapandi


additionalproperties no longer false

We were using version 5.0.0 of swashbuckle and it correctly (for our definition of correct) added the additionalProperties: false to our objects.  Upgrading beyond this version causes this to regress.
Since the specification default for additionalProperties is true, clients will generate a dictionary to hold additional values which is not the behaviour we desire, and not the behaviour we had in 5.0.0
While I'm happy to accept that this is the new "correct", there isn't a workaround to get this value set to back to false for a given object. (in comparison, other libraries set this to false, and have a way to enable true, like the NSwag using JsonSchemaExtensionDataAttribute)
This is stopping us upgrading to a newer version of swashbuckle at this stage, while we figure out a way to add these back in.
Let me know if I need to clarify any of the above in more detail.
Code where this "worked": https://github.com/domaindrivendev/Swashbuckle.AspNetCore/blob/676c81c3370b675802fe6268b006eb0918f37836/src/Swashbuckle.AspNetCore.Newtonsoft/SchemaGenerator/NewtonsoftObjectHandler.cs#L50
PR where it was "removed": https://github.com/domaindrivendev/Swashbuckle.AspNetCore/commit/5c6e884ef538507d954f115108f7bb60bfaaec54
public class MyType
{
    public string Code { get; set; }

    public string Name { get; set; }

    public string Other { get; set; }
}

Before (5.0.0)
MyType:
  type: object
  properties:
    code:
      type: string
      nullable: true
    name:
      type: string
      nullable: true
    other:
      type: string
      nullable: true
  additionalProperties: false

After (5.1.0-5.3.1)
MyType:
  type: object
  properties:
    code:
      type: string
      nullable: true
    name:
      type: string
      nullable: true
    other:
      type: string
      nullable: true

As followup, this "fixes" the issue for me.
internal class NoAdditionalProperties : ISchemaFilter
    {
        public void Apply(OpenApiSchema schema, SchemaFilterContext context)
        {
            if (schema.Type == "object")
            {
                schema.AdditionalPropertiesAllowed = false;
            }
        }
    }

Unsure if this now a requirement for me to do, or considered a true bug? Thanks!

This seems like a bug - I'm about to release a new version anyway, and will try get the fix for that included

Fixed by a9cb28f41a4c566f5c98e5a4c40bf8012b20b1bc

Available as of v5.3.2


[Patch for 2.1.x] Fix the jquery.min.js file in RazorPages web application

Original issue: https://github.com/aspnet/templating/issues/523

The following commit, from 'dev' branch, needs to be cherry picked onto the patch branch:
https://github.com/aspnet/templating/commit/90fe58be756b3bc96d527bbdc8a03ce30b56080f

@kichalla, I assume this is ready to be closed now, is it?


Users CRUD

Admin users can add, edit, delete filter size. Regular users can only read.

Frontend

Profile page (editing user settings)
Filter page

Backend

Profile page CRUD (user updating email, password)
Filter page CRUD (user adding/updating filter size, adding/updating place of filter, remove filter/place)


Create Report: The top N populated capital cities in a region where N is provided by the user.

AB#35

As a customer
I want the top N populated capital cities in a region where N is provided by the user
So that the user can find specific data that is required


Changing the path property with code

Hi, I'm trying out your plugin and I seem unable to change the path property with code. Is there a method for this? The docs don't seem to mention anything.

Hi, I believe you're looking for the path property on ControllerIconTexture.gd. It's usage is documented on the script file as docstrings instead, along with other properties you can modify in code as well:
https://github.com/rsubtil/controller_icons/blob/9564f73819b3469206be2adff53a9d899b010993/addons/controller_icons/objects/ControllerIconTexture.gd#L5-L53


Stopped and disabled NetworkManager

We don't need it and it makes configuring static IPs by editing files by hand less reliable.

@abellotti What do you think?

While this is an appliance, it would be nice if this were configured similar to most server environments. If 75% of all systemd servers have this enabled, may be nice to enable it.
But this is outside my core, so go for it.

@kbrock I think it is actually the opposite, most server environments disable it in favor of configuring the networking manually.
Additionally, we're not removing it entirely so if someone wanted to configure the network themselves with nmcli or one of the other tools provided by NetworkManager that is still possible.

@carbonin  @kbrock
Well, disabling network manager broke something.
We no longer have the updated /etc/issue and /etc/issue.net
aka:
Welcome to the Virtual Appliance

You can browse to http://x.x.x.x or http://fqdn

This was generated for us via /etc/NetworkManager/dispatcher.d/99-fix-issue

@abellotti It doesn't look like that file is doing anything particularly special.  Why does it need to be managed by NetworkManager?  Couldn't we come up with another way to have to get run on startup, a systemd service maybe?

that's fine, as long as it runs.
btw that file is missing   around the sed  in the PRODUCT=... line somehow
On Thu, Oct 29, 2015 at 1:37 PM, Nick Carboni<EMAIL_ADDRESS>wrote:

@abellotti https://github.com/abellotti It doesn't look like that file
is doing anything particularly special. Why does it need to be managed by
NetworkManager? Couldn't we come up with another way to have to get run on
startup, a systemd service maybe?
—
Reply to this email directly or view it on GitHub
https://github.com/ManageIQ/manageiq-appliance-build/pull/66#issuecomment-152260013
.

--
Alberto Bellotti
<EMAIL_ADDRESS>

Issue entered https://github.com/ManageIQ/manageiq-appliance-build/issues/73


Fix the the display of some countries on the map, please

Good afternoon!
Could you please correct the display of some countries on your map? For example, the Czech Republic. They confirmed cases of infection long ago, but on the map it’s not red.
In addition, there are countries that I select in the list of infected regions, but they are not highlighted on the map:
• Singapore
• Hong Kong
• Kuwait
• Bahrain
• Macau
• San Marino
• Qatar
• Czech Republic
• Andorra
• Liechtenstein
• Luxembourg
• Monaco

Hello. Thanks for your report.
The main reason is that the detailed map has large size (~ 1-2MB).
I think this is not suitable for downloading on mobile devices.
Besides this, part of your examples are already on the map:

Kuwait
Qatar
Luxembourg

I've already fixed the problem with Czech Republic, thanks.

Thanks for fixing the Czech Republic! :)
You're right, I was able to find individual countries on the map in red when choosing:
• Kuwait
• Qatar
• Luxembourg
But the rest, alas, did not work out. By the way, I use a PC, not a mobile device. Hence the question - maybe you can make a certain strip of zooming in (or, even better, so that the scale can be changed with the mouse wheel)?
Probably, then I can see all the countries that are currently unavailable for viewing with a separate choice.

Ok, I understand your point. Thank you

Could you please fix Bosnia now?
It's not displaying too...

Fix Moldova and Montenegro, pls.
They were infected yesterday.

Moldova+Turkey are not displaying as infected.
But they are... :(

Now Russia+Northern Ireland+Great Britain are broken :(

Here's another up to date source https://www.worldometers.info/coronavirus/#countries

Here's another up to date source.
Maybe dev can crawl this instead?
https://www.worldometers.info/coronavirus/#countries


Improve logging

Logging is clumsy and should be improved.
Today it's like this:
#if FMI4CPP_DEBUG_LOGGING_ENABLED
    cout << "Hello world!'" << endl;
#endif

FMI4CPP_DEBUG_LOGGING_ENABLED can be misspelled and the message is only printed in debug mode and cannot be turned off. A logging framework provided more control should probably be used.
There are probably some best practices in the C++ that should be followed?

I heard good thing in the past about https://github.com/gabime/spdlog , but I actually never used it.

@traversaro Will consider it. Thanks!


⚠ Bofrost.lu has degraded performance

In 67fff2c, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1234 ms

Resolved: Bofrost.lu performance has improved in ead2d13 after 3 hours, 20 minutes.


Crash on login using Google

We're seeing a crash on login using Google login
This was reported on iPhone 11 Pro running iOS 15.0.2
Verifier setup for reference:
let config = SubVerifierDetails(
    loginType: .web,
    loginProvider: .google,
    clientId: "redacted",
    verifierName: "redacted",
    redirectURL: "redacted"
)

self.torus = TorusSwiftDirectSDK(
    aggregateVerifierType: .singleLogin,
    aggregateVerifierName: "redacted",
    subVerifierDetails: [config],
    network: .MAINNET
)

can we take a look at this @michaellee8

We're seeing a crash on login using Google login
This was reported on iPhone 11 Pro running iOS 15.0.2
Verifier setup for reference:
let config = SubVerifierDetails(
    loginType: .web,
    loginProvider: .google,
    clientId: "redacted",
    verifierName: "redacted",
    redirectURL: "redacted"
)

self.torus = TorusSwiftDirectSDK(
    aggregateVerifierType: .singleLogin,
    aggregateVerifierName: "redacted",
    subVerifierDetails: [config],
    network: .MAINNET
)

Hello, can you provide the logs?

Sorry I don't have logs. It was captured remotely by TestFlight crash reporting.

I should mention that the version of TorusDirectSDK we we're using at the time was v1.0.3.

Sorry I don't have logs. It was captured remotely by TestFlight crash reporting.

I see, was that reproducible? One of the possible reason causing this crash could be the use of force unwraps we previously do, which is now replaced by proper unwrap handling in latest version.

It was reproducible on those devices - as in, the crash was consistent. We don't have a way to verify, right now, whether or not the new version of the SDK addresses those crashes.

Could you send me an invitation to the app (TestFlight)?

Hi @metallicalfa2, we got a crash on login using Google also. It seems the data is nil I think. Could you please have a look at it again?

Hi @michaellee8, we got a crash on login using Google also. It seems the data is nil I think. Could you please have a look at it again? We're using CustomAuth 2.1.0 FYI

@vantam87
Can you state the verifier configuration and version that is being used?

Hi @michaellee8,
I appreciate your help in advance.
We are trying to keep verifierId and idToken, so we handle it like below. Could you please let us know if we are missing something?
// Custom handle signle logins to keep verifierId and idToken which was removed in the lib
private func handleSingleLogins(_ loginProvider: LoginProviders, verifier: String) -> Promise<[String: Any]> {
    let subVerifier = SubVerifierDetails(
        loginType: .web,
        loginProvider: loginProvider,
        clientId: Constants.Credential.Torus.clientId,
        verifierName: verifier,
        redirectURL: Constants.Credential.Torus.redirectURL,
        browserRedirectURL: Constants.Credential.Torus.browserRedirectURL
    )
    let customAuth = CustomAuth(
        aggregateVerifierType: .singleLogin,
        aggregateVerifierName: verifier,
        subVerifierDetails: [subVerifier],
        network: Constants.Torus.network
    )
    customAuth.authorizeURLHandler = .external
    let loginURL = subVerifier.getLoginURL()
    let (tempPromise, seal) = Promise<[String: Any]>.pending()
    customAuth.observeCallback { url in
        let responseParameters = customAuth.parseURL(url: url)
        subVerifier.getUserInfo(responseParameters: responseParameters).then { newData -> Promise<[String: Any]> in
            let verifierId = newData["verifierId"] as? String ?? ""
            let idToken = newData["tokenForKeys"] as? String ?? ""
            return customAuth.getTorusKey(
                verifier: verifier, verifierId: verifierId, idToken: idToken, userData: newData
            )
        }.done { data in
            seal.fulfill(data)
        }.catch { err in
            seal.reject(err)
        }
    }
    customAuth.openURL(url: loginURL, view: nil, modalPresentationStyle: UIModalPresentationStyle.fullScreen)
    return tempPromise
}

@vantam87 by any chance u can have a log to the actual request used in the login process? Like some sort of request logger with charles proxy or proxyman?

Hi @michaellee8,
Thank you for your quick response.
We cannot reproduce the crash from our side, we got it from firebase crashlytics. It rarely happens in our application. The crash report that the data (in this line https://github.com/torusresearch/customauth-swift-sdk/blob/a4fb843fabdfd19905b7e215f40ebab4a184c9ed/Sources/CustomAuth/Handlers/GoogleLoginHandler.swift#L113) is null, is it possible to omit force unwrap it?

Sure, let me make a patch that can prevent the force unwrap. @vantam87

cool, thanks @michaellee8


Persistent Spatial Anchors and or Space Pins Between Builds and Headsets?

Hello,
I've been taking a look at using the World Locking Tools for a project that involves viewing and interacting with persistent Holograms through a large office space. I'm still working my way through the documentation and have found a lot of great examples and information about using Space Pins and QR codes to align Unity coordinates to the physical world to make Holograms appear in the correct locations relative to physical infrastructure.
My question is related to my interest in authoring Holograms using a LiDAR mesh in Unity before its built meaning I'd love to export the mesh that the HoloLens 2 generates as well as the spatial anchor data from walking around the space and visualize both of them in Unity to place Holograms pre-build so I can easily deploy to multiple headsets without having to initialize each headset to the space.
Is something like this possible with the current version of WLT? There is documentation describing how once you align/anchor Holograms to a physical space they will persistent between sessions but where can I find information how on to potentially serialize/export spatial anchor and mesh data from a HoloLens to include into Unity and then be built to a device without having to pin everything again? Is there a file that can be exported from one HoloLens that I can include in a Unity build to another HoloLens? Hopefully, that makes sense.
Thanks

Out of curiosity, did you ever find a workable solution to this?

I am not sure if this helps but you can do this from the Hololens device itself.
The maps from WLT will apear in Map manager section on Hololens page, as soon as you start the APP.
Hololens Map Manager you you can acess it by typing the Hololens IP adress in your browser.
From there you can then export those anchor points and map files to your local drive.
I am now looking for a way to load those maps (and if someone knows how, please help)
As for 3D map as 3D object you can get it by going to the 3D view again on the hololens page in browser and click on Update. than walk around room and after that you can export the map as fbx data.
I hope I understood your question and if not I apologize.


Use @veupathdb/http-utils

The new package @veupathdb/http-utils provides the base class FetchClient used by the client api modules in this package. The base class used to live in @veupathdb/web-common, but it was contributing to a circular dependency between that package and this package.
Partially addresses #576

I'm anxious to merge this, so here goes!


_get_type_info TypeError for some arrays

In _exceptions._get_type_info, if the obj passed is a numpy array but not one with numbers as elements (e.g. an array of matplotlib axes, the info part gives errors.
Fix and cover in testing.

Fixed in both master and dev branches


can't upload file but can create file

I have grant the permission of the father folder resouse to the user.But he can only create file in the folder,he can not upload file in it.

DS currently only has permission to authorize files. It does not have permission to authorize directories, so you cannot create and upload files in the upper-level directory of authorized files.
you can refer to the issue #3953


Clean room implementation?

Hi, harmonypy is available under the GPL, this under BSD-3-clause.
Did you implement this completely without referring to harmonypy’s code?
cc @Intron7

Hi @flying-sheep ,
No, we didn't.
harmony-pytorch is a Pytorch implementation of Harmony algorithm (https://www.nature.com/articles/s41592-019-0619-0). The only reference we used is paper's description or pseudocode.
Moreover, the official implementation of Harmony algorithm is in R (https://github.com/immunogenomics/harmony). And harmonypy is a numpy reimplementation of its R version to my knowledge.
Hope it clarifies. And please let me know if you have further question or concern.
Sincerely,
Yiming

Hi! Thanks for the info!
I think you wanted to write “yes we did implement it without referring to harmonypy’s code” in the first sentence, as the rest of your reply is an elaboration on that answer!
I’m closing this under that assumption, thank you!

@flying-sheep Yes, you are right. Sorry for the confusion.


calc_model function not in calculation_functions.py

https://github.com/tamarervin/SolAster/blob/c6fccf47ccf046dfe9ff1575644facfd01c9e68c/SolAster/tools/rvs.py#L27
Looks like the notebooks are expecting the calc_model function to be in calculation_functions.py, but it's in rvs.py?

Fixed!


Any suggestion to deploy sequential model（n_times>1) ？in this case, x, y, valid cannot be calculated in init function in advance， must I projected history point every loop??

Any suggestion to deploy sequential model（n_times>1) ？in this case, x, y, valid cannot be calculated in init function in advance， must I projected history point every loop?

Any suggestion to deploy sequential model（n_times>1) ？in this case, x, y, valid cannot be calculated in init function in advance， must I projected history point every loop?

As long as the external parameters of the camera remain unchanged, there is no need to change them.

Thanks for your comments! As I know, if we projected last moment's points to current moment's bev view, the extrinsic matirx should be changed with the position move, which will cause we need to change those x_, y_, valid_ mat everytime. This also casues much more time comsuing, I can not think out a better way.


Suggested git pre-commit only works for single files

Hi there,
I tried using the suggested git pre-commit and found it only works when a single file is matched.
It also has some issues if there are spaces in the file path, with git add'ing things back in.
Cheers!

Hi @jestelle, this was changed by @MSch in this diff.
Does the previous pre-commit hook below work for you?
git diff --cached --name-only --diff-filter=ACM | imageOptim # [options]

Did you try the above please @jestelle?

I haven't had a chance to test it yet.  Sorry!  Will try to give it a go
soon.
On Thu, Feb 12, 2015, 11:05 AM Jamie Mason<EMAIL_ADDRESS>wrote:

Did you try the above please @jestelle https://github.com/jestelle?
—
Reply to this email directly or view it on GitHub
https://github.com/JamieMason/ImageOptim-CLI/issues/102#issuecomment-74131265
.

No problem, thanks.

I have the same problem. When more than 1 file is found by the git diff, $images is "file1 file2" and this triggers the error "Ignored as neither file or directory"

This hook was kindly given to use by @MSch in pull #82, maybe he can help us?

Sorry, I'm no shell wizard either. Is it possible to use xargs?

Here's what seems to work:
    # run ImageOptim
    images=
    images=$(git diff --exit-code --cached --name-only --diff-filter=ACM -- $images_dir $images_dir2)
    if [ -n "$images" ]; then
        echo $images | xargs image_optim --no-pngout --no-svgo
        echo $images | xargs git add
    fi;

This should be fixed in the docs for<EMAIL_ADDRESS>thanks to https://github.com/JamieMason/ImageOptim-CLI/pull/104


Copy-instance-tags action on "Key": "device"

Is the following copy-instance-tags action possible?
policies:
  - name: copy-instance-tags
    resource: ebs
    description: |
      Cloud Custodian Copy Instance Tag to Volume
    comment: |
      Copy instance tags to respective instance's ebs volume.
    mode:
      type: periodic
      role: arn:aws:iam::1234567890:role/CloudCustodian
      schedule: "rate(15 minutes)"
    filters:
      - type: value
        key: "Attachments[0].Device"
        value: not-null
    actions:
      - type: copy-instance-tags
        tags:
          - Name
      - type: copy-instance-tags
        tags:
          - Owner
      - type: copy-instance-tags
        tags:
          - Team
      - type: copy-instance-tags
        tags:
          - LastAttachInstance
      - type: copy-instance-tags
        tags:
          - device  <<<<<<<<<<<<<<<<<<<   Is this a valid Key name?

I'm trying to copy the EC2 instance's root device attribute (e.g., /dev/sda1) as an EBS volume tag and not seeing it get copied.
Note: The EC2 instance doesn't use an explicit tag key name of 'device'. Rather I'm assuming (or would like) it can be obtained implicitly from the "Key":"device" pair shown in the policy's resources.json output file.
Sample output of policy resources.json file:
(snip)
"Tags": [
      {
        "Value": "i-12345678901234567",
        "Key": "instance_id"
      },
      {
        "Value": "2017-07-14T22:37:29+00:00",
        "Key": "LastAttachTime"
      },
      {
        "Value": "Mr Magoo<EMAIL_ADDRESS>        "Key": "Owner"
      },
      {
        "Value": "i-12345678901234567",
        "Key": "LastAttachInstance"
      },
      {
        "Value": "Cloud",
        "Key": "Team"
      },
      {
        "Value": "/dev/sda1",  <<<<  This tag value is what I'm interested in copying to the EBS volume
        "Key": "device"
      },
      {
        "Value": "cloud-fess",
        "Key": "Name"
      }
    ],
(end of snip)

Is this possible?  If the answer is no or not at this time, that's perfectly fine. Just need to confirm what I'm doing is expected behavior so I can let this go and move on.  Appreciate all the support thus far.  We're getting alot of mileage out of CC and will continue to find use cases for it in our environment.

are you asking if it's possible to copy a certain resource attribute into a tag with the tag function?

That's correct. I was hoping there might be some way to copy certain resource attributes with the tag function as described above. If that's not possible today, it's not the end of the world. It just would have been nice to consolidate/replace another tool we're using for tagging resources.
Appreciate the response and keep up the great work!


Add mutated state when inserting an already existing component

Fixes #333
Proposed Change
When calling Archetype::put_dynamic with added = false, the mutated state will be set to true. Because if a component is not added, that means it is updated so it should be marked as mutated.
I added tests to check if the behaviour is correct based on what I think the code should do, feel free to correct me if I'm wrong.
One case is not handled correctly in this PR, but I'll need a bit of guidance if this behaviour is wanted. When the entity contains A and you insert A and B, A is updated and B is added. So, A state should be mutated and B state should be added, but both state are added.

Isn't this behavior already captured by the Changed<T> pointer? I suppose theres an argument to be made that we could merge Changed<T> and Mutated<T> pointers. What we lose is the ability to run logic only when an existing item has been mutated.

Changed<T> is just a logical OR between Added<T> and Mutated<T> but the similarity in the name of Changed<T> and Mutated<T> can easily bring confusion if you're not careful. So, yes this behavior is captured by Changed<T>, but it is for the "wrong" reason : triggered by Added<T> and not Mutated<T>.
Here's a little diagram of what's happening (assuming the commands are run sequentially on the same entity and the trackers are cleared between each command) :

Command
Entity
State in master
State in PR
Expected state

spawn(A(0))
(A(0))
Added
Added
Added

insert(A(1))
(A(1))
None
Mutated
Mutated

insert((A(0), B))
(A(0), B)
(Added, Added)
(Added, Added)
(Mutated, Added)

As far as I can see, I fixed changed tracking on Commands::insert and this PR is ready to merge unless I have to add an entry to the changelog or something else.

Sorry for dragging my feat on this one. This looks good to go. Thanks for sticking with this / improving our correctness!


[BUG]- Redirection URL time out

Describe the bug
Redirection URL is timing out. When I got to HA > Integration > +Add SmartThinQ LGE Sensors > select United States and en for language, the wizard populates an url that I should paste into browser.
I open a browser (tried Firefox, Chrome and Safari same result), paste the link and get prompt for user name and password. I never get a "redirection URL" ..it times out.
I confirmed that I can log to lg & smartthinq with this account. I actually created another 2 accounts and I get same behavior.
Expected behavior
per documentation, I should get redirected to new url.
Screenshots

Environment details:

Environment HASSIO
Home Assistant version installed: 0.116
Component version installed:
Last know working version:
LG device type and model with issue:
LG devices connected (list):

Output of HA logs
Paste the relavant output of the HA log here.

Additional context
Add any other context about the problem here.

Just copy it from the URL bar, and then paste it into the other field and hit submit.

you mean before I log it?

What do you mean?

Copy URL from field
New tab
Paste it in
Log in
Copy the URL from the toolbar
Go back to HA
Paste it in the other field
Hit submit

thank you & good, we are on the same page.
I never get to step 5, it times out.

Just because Safari times out doesn't mean it hides the URL bar.

I guess I was overthinking it ... that worked.
I do have to admit I do feel like a dummy.

It's okay. Everyone eventually feels like that sooner or later. Mind closing?

of course. thanks again for dumbing it down for me.


supernode failed to start on ipv6 interface

Ⅰ. Issue Description
zhb@box ~
  % supernode --home-dir $(pwd)/.supernode
Error: peer IP: fe80::1: {"Code":2,"Msg":"invalid value"}

Ⅱ. Describe what happened
When I start supernode on my local machine, it reports error when seeing ipv6 address.
Ⅲ. Describe what you expected to happen
supernode should be able to start normally.
Ⅳ. How to reproduce it (as minimally and precisely as possible)

go install github.com/dragonflyoss/Dragonfly/cmd/supernode
run supernode --home-dir $(pwd)/.supernode on a machine where ipv6 multicast address is assigned.

Ⅴ. Anything else we need to know?
Ⅵ. Environment:

dragonfly version: HEAD
OS (e.g. from /etc/os-release): OSX 10.15
Kernel (e.g. uname -a):
Install tools:
Others:

ref https://github.com/dragonflyoss/Dragonfly/issues/334

Let me check it. /assign me

@fengzixu any updates? 😄

@fengzixu any updates? 😄

I will give the conclusion this weekend.

Hi @Starnop @zhouhaibing089 , after I check related issues. I found there are 3 places which will validate the IP address format:

https://github.com/dragonflyoss/Dragonfly/blob/master/apis/swagger.yml#L705
https://github.com/dragonflyoss/Dragonfly/blob/master/apis/swagger.yml#L807
https://github.com/dragonflyoss/Dragonfly/blob/master/apis/swagger.yml#L851

According to my understanding, for supporting the IPv6 in Dragonfly, we just need to modify the logic of validating IP address in supernode or swagger doc. But I do not ensure that there are other tasks need to be done. @zhouhaibing089 Can you tell me your thoughts about supporting IPv6?
If the task is just modifying the validation, I think I can finish it by GA.

In my opinion, I think it's more of a physical layer thing support for ipv6. Relax the restrictions on IP verification is enough.
In addition, we should make it possible for users to choose whether to support iPv6 according to their own network environment.
cc/ @fengzixu @zhouhaibing089

This somehow relates to dual-stack support. What happens if some of clients are on ipv4 and some of them are on ipv6? Will supernode track the ip address family for each client so that it may not return ipv6 peers to ipv4 clients?

This somehow relates to dual-stack support. What happens if some of clients are on ipv4 and some of them are on ipv6? Will supernode track the ip address family for each client so that it may not return ipv6 peers to ipv4 clients?

You mean the dfget will run on machines which perhaps were configured IPv4 addr or IPv6 addr.
So we need to support multiple IP format at the same time. Am I right?

This somehow relates to dual-stack support. What happens if some of clients are on ipv4 and some of them are on ipv6? Will supernode track the ip address family for each client so that it may not return ipv6 peers to ipv4 clients?

Yeah, that's right. And it will bring something difficult. And let's do as @zhouhaibing089 said here. @fengzixu

Probably we can clearly say that we only support IPv4, and get rid of irrelevant errors to reduce frictions.


[refactor-prompt] Migrate command: wallet import contract_addr

What current issue(s) does this address, or what feature is it adding?
#623
Migrate the command wallet import contract_addr to the new Command system.
How did you solve this problem?
Implementation of CommandWalletImportContractAddr
How did you make sure your solution works?
unit tests
Are there any special changes in the code that we should be aware of?
In Wallet.py, I moved _is_valid_public_key out of CommandWalletImportMultisigAddr and put it into global space. Please tell me if it is to avoid.
Please check the following, if applicable:

[x] Did you add any tests?
[x] Did you run make lint?
[x] Did you run make test?
[x] Are you making a PR to a feature branch or development rather than master?
[ ] Did you add an entry to CHANGELOG.rst? (if not, please do)

Coverage increased (+0.1%) to 86.338% when pulling ae48f099c12718c689a7052070361b774e0c30f8 on LysanderGG:wallet-import-contract_addr into<PHONE_NUMBER>81be546de4fa92cefb5e7bc2be4c61 on CityOfZion:refactor-prompt.

All looks good. Pulling out the _is_valid_public_key looks fine. Eventually it should probably go into neocore, but this will do for now. 👍


Multipart upload for Azure Block Blobs

Is your feature request related to a problem? Please describe.
I am trying to figure out how to setup multipart upload for block-blobs. I have byte-chunks of ~1MB that I need to upload in multiple parts.
Describe the solution you'd like
A sample in the samples section would be really helpful.
Describe alternatives you've considered
AWS S3 python clients provide this option out-of-the-box. Would be great if something similar is provided by MSFT as well.

Hi @shahdadpuri-varun,
You can set this up by passing max_block_size when instantiating your client. This sets the maximum chunk size for uploading a block blob in chunks and it defaults to 410241024, or 4MB.
https://github.com/Azure/azure-sdk-for-python/blob/ab3cc345b34c3e9eff19401bc99ab9edfdd1449d/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py#L104
Let me know if you need any more help :)
We can include this in our samples!

Hi @shahdadpuri-varun,
You can set this up by passing max_block_size when instantiating your client. This sets the maximum chunk size for uploading a block blob in chunks and it defaults to 410241024, or 4MB.
https://github.com/Azure/azure-sdk-for-python/blob/ab3cc345b34c3e9eff19401bc99ab9edfdd1449d/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py#L104
Let me know if you need any more help :)
We can include this in our samples!

Hi @shahdadpuri-varun, has this issue been resolved?
Let me know.
Thank you

Hi @shahdadpuri-varun, has this issue been resolved?
Let me know.
Thank you


[breaking] add error.html

This is a static error page that will be rendered by the server when everything else goes wrong
Closes #3068
Implementing this brought up some design questions around how dynamic the error page is. The places I added it previously showed the error message and possibly the stack trace in dev, which is no longer the case. Should we have something like an optional placeholder named %sveltekit.error% which is passed the stringified message, and in dev also the stack trace?
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[ ] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

We definitely need to include %sveltekit.status% and %sveltekit.message% (though I just remembered that sanitizing error messages in production is still a TODO). I think we should leave stack out of it since it'll always be printed to the terminal (in fact I think the same applies to normal errors — our error handling could use a bit of a tidy-up, separately to this PR)


App crash with internal storage devices

Hi,
I am using 1.1.1 version of this plug in.
When I invoke window.imagePicker.getPictures app crashes as it doesn't have permission access internal storage.
When I give permission to access storage it works. Testing this on android 6 and higher.
I am not sure
will contain all the storage.
Do we have android permission where we can set permission to access all storage? internal and external?

This is due to the changes made in Android 6.0 - with how it gets the permissions you could try this fork instead as it has extra logic for handling with this.
https://github.com/mirulumam/cordova-imagePicker


chore: rename file to avoid confusion

So minor PR to just rename this file and it was adding some confusion with other observability stuff.

Thank you!!


Implement SSR (Server Side Rendering) support

Is your feature request related to a problem? Please describe.
At the moment React Keycloak does not support SSR. Using this library with server side rendering causes an error (ReferenceError: window is not defined).
Describe the solution you'd like
Server Side Rendering is a must for a lot of webapps and SPAs. It improves SEO and loading speed improving the overall user experience. For these reasons I think React Keycloak should support server side rendering.
Additional context
@jplew reportedly found a solution but, as far as I know, he hasn't shared his implementation yet (#16 - link to his comment).

@3DDario since there seems to be demand I am going to publish my repo. If you can sit tight a few days I'll have it up asap.
The window is not defined error doesn't come from this repo, per se, but from keycloak-js, JBoss Keycloak's official JS adapter: https://www.keycloak.org/docs/6.0/securing_apps/index.html#_javascript_adapter
Their keycloak.js references the window object implicitly, and react-keycloak bundles keycloak.js as a dependency. Importing react-keycloak in Next.js fails because the first server-render pass can't resolve a window object, it exists only on the subsequent client-render pass.
The workaround I came up with involves the following:
const Keycloak =   typeof window !== 'undefined' ? require('keycloak-js') : null
Moreover, the keycloak-js adapter sets a cookie in the browser. To avoid Next.js's notorious "flashing" effect, where components and styles blink on the screen suddenly, you have to read the cookie on the server (to render a logged-in state on the server).
Long-story short, there is definitely a way to make the Keycloak JS adapter work with SSR, and it does use code from this repo, but it is beyond the scope of one NPM package alone. A lot of logic needs to be written into the Next app itself.
One option I thought of was to change the way this library is packaged, so it doesn't bundle keycloak-js by default, but lazy-loads it when needed. Haven't had time to experiment with that yet though.
Also, as a heads up, keycloak-js version 7 is busted, I had to use 6.0.1: https://github.com/mauriciovigolo/keycloak-angular/issues/153

Update
here is my solution: https://github.com/jplew/next-keycloak
Hope you find it useful.

Hi @jplew ,
Thanks for the amazing work and for sharing it.
I'll add a reference to it.

@panz3r You deserve all the credit for providing this library, thank you!
FYI I will research some more today to see if it's possible to add SSR support directly to react-keycloak.

Hi @jplew ,
Thanks a lot!
I had a look at your code and I think it may be possible to port your changes into react-keycloak itself. I'm looking into this myself but I'll need some time to do so.
Keep me posted in case you find a way sooner than me and I'll gladly review your PR.

Any news here? Has this been added to one of the newer versions?

Hi @pixelass ,
Unfortunately it's not yet implemented as part of react-keycloak.
I planned a rewrite of this module to allow adding SSR support directly but I've yet to start working on it.

It’s not the proper way to do it but at the moment I’ve been able to get SSR working by changing the value of libraryTarget in config/webpack.config.js. In particular, I have replaced umd with commonjs2 (as you can see in this commit).
This probably makes this library unusable without SSR so I would not consider it a solution.

@3DDario I don't see how this would make pages renderable on the server "only" if keycloak is authenticated. The library (keycloak.js) still relies on document and can therefore not be executed on the server.  The previously mentioned https://github.com/jplew/next-keycloak uses cookies in order to allow the server to render the page which is also not ideal but works pretty well (with certain drawbacks). I adapted that concept to my project but I'm far from happy as it requires a lot of attention and brings quite some restrictions (especially when animating things on pageLoad) since the mechanism does a force reload (which can only be noticed visually if states change after the initial render, i.e. an animation or render-loops).
react-keycloak would have to do something similar and use a flag to allow SSR only with an auth cookie (or similar). If keycloak would allow SSR this wouldn't even be a problem. IMHO it's their task and without their help all we can do is do server-roundtrips and build workarounds.
That being said, @panz3r I am willing to look into this and contribute if I find something that can be ported back to this library. No promises and definitely not before 2020.

Hi @pixelass ,
Thanks for your feedback, I also had a look at the project at https://github.com/jplew/next-keycloak and found a way to port its changes to react-keycloak.
The idea I'm working on it's the following:
This project will move to a monorepo and will have 3 packages:

a core with all the shared logic.
a web/spa with the current binding to be used for SPA apps.
a next with the changes ported from next-keycloak repo.

So you'll have to import @react-keycloak/core and @react-keycloak/next packages to work with NextJS SSR and use the exported components.
Whilst web/SPA apps will need to use the components exported from @react-keycloak/web.
This transition will require some time also because I'm moving the codebase to Typescript.

A quick update on this issue.
Today I completed the migration of the repo structure to a monorepo  and published the first versions of @react-keycloak/core and @react-keycloak/web 🎉
In the next days I'll start working on @react-keycloak/next package and example.

@panz3r I tested out the nextjs  package in the feature/nextjs-support branch a bit and it seems to be working fine so far. Could you please release the package to npm asap as the monorepo structure in combination with an unreleased package causes major problems using the package through npm link. Thank you and great work!

Hi @nicolasmn,
Thanks for your early feedback on @react-keycloak/nextjs, I really appreciate it.
I just released the package with a draft documentation, the package it's still a bit "experimental" and unrefined but now it can be better tested.
I hope to find some time to improve it and release a stable version of the whole new monorepo project as soon as possible.


Upgrade Kube-prometheus-stack-60.0.0

Chart to upgrade
https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-60.0.0
Reason for upgrade

[ ] Security patching
[ ] Upgrade to allow new features
[X] Upgrade to prevent future issues
[ ] Upgrade to maintain a supported version
[ ] Other - Write the reason below

Additional context
No response
Acceptance criteria

I checked the migration of the new chart version:

[ ] The upgrade does not require migration steps
[ ] The upgrade requires migration steps

I tested the functionality of the new chart version:

[ ] The upgrade does not change current functionality
[ ] The upgrade changes current functionality

Just mentioning this here in case anyone else encounters it, but I noticed the following error for prometheus-node-exporter:
caller=collector.go:169 level=error msg="collector failed" name=arp duration_seconds=0.000149901 err="could not get ARP entries: rtnetlink NeighMessage has a wrong attribute data length"

Upgrading kube-prometheus-stack chart to v60.0.0 or newer should upgrade node-exporter to app version v1.8.0+ I believe which should solve this issue according to this issue. This affects some of our dashboards:


pull request for e2e test at 01/11/2017 04:15:15

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


installation from conda

since I am using conda to manage my python package, could you please make it available to install this package using conda?

Hmmm I am not actually sure what's the best way to do it.
Would publishing it to pypi help?

https://medium.com/@giswqs/building-a-conda-package-and-uploading-it-to-anaconda-cloud-6a3abd1c5c52
I mean, could you please upload the package to Anaconda cloud, so I can install this via conda command?

maybe this helps
https://docs.anaconda.com/anaconda-cloud/user-guide/tasks/work-with-packages/#uploading-packages

It's done. You can use conda to install knockknock.
See https://anaconda.org/victorsanh/knockknock

Could you please make it available for osx-64? really appreciate it

I'm working on that, but I have to acknowledge that conda is really giving me a hard time: it is significant less smooth than with pip...
In the meantime, you can always bypass the installation using a python setup.py install (it won't be tracked with the conda package manager but at least, you can use the lib as a package).

hey @AgentDS, I uploaded the osx-64 package! Enjoy!

thanks!


Frontend: Authorization

[x] #6
[x] #7
[x] #8
[x] #25
[x] #9
[x] #10
[x] #11

@plplmax 3 puzzles #41, #42, #43 are still not solved.

@plplmax the puzzle #41 is still not solved; solved: #42, #43.

@plplmax all 3 puzzles are solved here: #41, #42, #43.


Scene gets corrupted when a script file referenced inside an array is moved or renamed

Godot version
v4.2.beta4.official [93cdacbb0]
System information
Godot v4.2.beta4 - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 Ti (NVIDIA; <IP_ADDRESS>99) - Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz (16 Threads)
Issue description
When a script that is referenced inside an Array in a scene is moved or renamed, the old reference remains corrupting the scene.
Steps to reproduce

Open the project.
Rename sample_resource.gd to something else or move it to a folder.
Try opening the sample_scene.tscn

Since sample_scene.tscn contains a reference to sample_resource.gd that was not moved, it will be corrupted:
resources = Array[Resource("res://sample_resource.gd")]([ExtResource("2_gl06r")])

Minimal reproduction project
MoveScriptIssue.zip

Please provide an MRP to make this easier to test:

A small Godot project which reproduces the issue, with no unnecessary files included. Be sure to not include the .godot folder in the archive (but keep project.godot).
Drag and drop a ZIP archive to upload it. Do not select another field until the project is done uploading.
Note for C# users: If your issue is not Mono-specific, please upload a minimal reproduction project written in GDScript or VisualScript. This will make it easier for contributors to reproduce the issue locally as not everyone has a Mono setup available.

Thank you for the reply!
I updated the issue with the MRP.


PLC1901 false positives/incorrect response

code:
def bug(query: str | None):
    if query == "":
        ...
    else:
        ...

this should not be flagged as "" is different from None.
Additionally, ruff provides the following error:
 PLC1901 `query == ""` can be simplified to `query` as an empty string is falsey

This is inaccurate, it should be simplified to not query (if it wasn't possible for query to be None).
possible related issue but not the same: GH-3494

I think this is fixed by #3497.

I think this is fixed by #3497.

Only the second part. Linked PR does not touch the case where there is information about the variable type and the type is Union.

I'm seeing the not:
src/scikit_build_core/settings/sources.py:159:55: PLC1901 `self.env[name] != ""` can be simplified to `not self.env[name]` as an empty string is falsey

That's the backward "not", but also, the original was:
def ...(...) -> bool:
    return name in self.env and self.env[name] != ""

It's not valid to simply that without the incorrect not, as self.env[name] is probably not a bool, and and returns the last truthy value - without the not making it a bool, it's not a bool. IIRC, pylint might suggest wrapping it in bool. (A better way to simplify it would probably be to use get & truthiness, actually)
I don't think you need variable type info; pylint doesn't do full type checking, you just can only simplify in cases were it's known to be a bool, via not or wrapping in bool.

FWIW, Pylint treats these identically. Every example shared here is flagged by Pylint:
def bug(query: str | None):
    if query == "":
        ...
    else:
        ...

def f() -> bool:
    return name in self.env and self.env[name] != ""

Yields:
foo.py:1:0: C0114: Missing module docstring (missing-module-docstring)
foo.py:1:0: C0104: Disallowed name "foo" (disallowed-name)
foo.py:1:0: C0116: Missing function or method docstring (missing-function-docstring)
foo.py:2:7: C1901: Avoid comparisons to empty string (compare-to-empty-string)
foo.py:7:0: C0116: Missing function or method docstring (missing-function-docstring)
foo.py:7:0: C0103: Function name "f" doesn't conform to snake_case naming style (invalid-name)
foo.py:8:11: E0602: Undefined variable 'name' (undefined-variable)
foo.py:8:19: E0602: Undefined variable 'self' (undefined-variable)
foo.py:8:32: C1901: Avoid comparisons to empty string (compare-to-empty-string)
foo.py:8:32: E0602: Undefined variable 'self' (undefined-variable)
foo.py:8:41: E0602: Undefined variable 'name' (undefined-variable)

In tests/* we will ignore rule PLC1901 because we want to be sure results are empty strings.
[], {}, 0, False, and None are all falsey, but are not empty strings.

Yes, but most of the time, you either have something that's always a string, or you have an interface that can produce some of those other values, and you should also check to make sure it's a string. For example, x != "" will also be True if x is some other falsey value, which might then break the next line in your tests where you expect it to be a non-empty string. You could also overload a class to compare equal to an empty string. (I'd say this is not totally impossible to find, ROOT overloads classes to compare equal to None...)
There are certain types of tests where this can't be simplified (like testing custom __eq__), but I'd carefully think about it before doing an ignore on tests/**. But ignoring a rule is always fine, you don't have to accept any rule, and can disable them on patterns!
Above, I was only worried about the case where the value is not in a place where the bool is directly evaluated and can leak the value (and/or is itself not a boolean context unless inside if or bool())`. If Pylint does this (I'm running pylint on my codebase and don't have this rule disabled, and haven't seen an error here), then that's fine. I'd expect the pylint checks to behave like pylint.

Ahh, it's working now (0.256!). Pylint and Ruff are both happy. I think the not fix also fixed the FP.

Ahh, empty string comparisons is an optional checker in pylint. Okay, I'm happy, I'd want Ruff'd Pylint checker to behave like pylint. Though if it was a hair smarter and could tell boolean context (assert, if, bool()) from places that could see the result, that'd be an improvement, but I think that could be proposed to pylint first. :)

If I go to https://play.ruff.rs and in Settings enable PL and then in Source put:
s == ""  # Rasises PLC1901
s != ""  # Rasises PLC1901

Is there a syntax you would recommend or just # noqa: PLC1901 on all lines where we really want to test for empty str?

You can use "tests/<filename>" = ["PLC1901"] or put # ruff: noqa: PLC1901  at the top for a file that has multiple of these that you'd like to silence. I have checks for a series of attributes, and it's much more symmetric to write == "" for the ones that are empty strings, rather that to make it look like a bool, so that test file is a good candidate for this sort of disable. And for any file that has just one or two instances, after verifying they are correct, you can just pass --add-noqa to Ruff to get it to add the ignores for you per line.

Ah yeah, sorry, I should've mentioned that this is behind a Pylint extension.
I'm honestly a little tempted to remove this rule given the number of false positives 🙈 But I try to defer to upstream plugins, and so look to Pylint as a guide, and... it has the same behavior.


fix(learn): Added solution for invert binary tree data structures challenge

[ x ] I have read freeCodeCamp's contribution guidelines.
[ x ] My pull request has a descriptive title (not a vague title like Update index.md)
[ x ] My pull request targets the master branch of freeCodeCamp.
[ x ] None of my changes are plagiarized from another source without proper attribution.
[ x ] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[ x ] My changes do not use shortened URLs or affiliate links.

Closes #35914
Maybe it's just me but I do not see a certifications subdirectory in the mock-guide directory anymore so I could not test on the local copy of fcc as I was told to here:

https://github.com/freeCodeCamp/freeCodeCamp/blob/master/docs/how-to-open-a-pull-request.md
https://github.com/freeCodeCamp/freeCodeCamp/pull/35511

You need to rebase your master branch first before creating a new branch, so you only have the changes to the files you want.

Thank you.  I should have read more carefully and thus had to close this.


bpm calculation wrong

https://osu.ppy.sh/beatmaps/1595714
Difficulty[7K] SV
Got : 76.31577943213429
Osu : 145

you have used longest bpm that used rather than divide all of usage

Should be easy to fix. I'll take a look when I get home

i did it by adding up duration for each bpm