Missing man pages

Can we automatically check that for each package

either there exist an output with actual .[1-9] files inside
or the derivation explicitly says that they are not there?

[1] top-level issue #11499

chromium is also lacking man pages, they are in $out/share/share/man

Maybe it would be more practical to have a separate linting tool for similar warnings.

/cc @aszlig for the chromium case.

separate linting tool for similar warnings

You mean linting on the outputs? Maybe that tool could search outputs for matching folders that might be in the wrong location.

i was also doing some arch linting for armv6 vs armv7 stuff
https://gist.github.com/cleverca22/eb2dad0edfed3cce93dc540e7561a795
the problem i had is that if you build an armv6 openssl on v7 capable cpu, v7 opcodes leak into the resulting binary

Yes, I meant linting derivation outputs.
BTW, @cleverca22, I fixed that chromium problem now.

libxcb, libX11/xproto is also missing man pages.
Including documentation (especially for libraries) increases the closure size of packages. Is this an argument in play here or is it just by chance?
Maybe there should be a policy written somewhere?
If the closure size is a concern, is it possible to enable library documentation in a similar way to environment.enableDebugInfo?

@abbradar: man3 pages are deleted by default; see $outputDevDoc in the manual.  Adding a "devdoc" output gets the stuff moved there automatically (or "devman", as I read now).

Is nix-env -iA nixos.multi_output_package.man the correct way to install such packages? (or adding it to systemPackages of course)
Note that those packages doesn't show up in the search at http://nixos.org/nixos/packages.html

We don't really consider them "separate packages", which is probably given by the history. (I think deb/rpm would do so, as they're more binary-centric.  Their binary packages roughly correspond to our outputs; their source packages to our "packages"/derivations.)
nix-env: yes, that's the intended way. The current default version of nix-env still installs all outputs always; that's only changed by https://github.com/NixOS/nix/pull/815 and then your command will continue to work – it will only install that particular output and a default list otherwise (customizable per-package).
systemPackages: yes, but additionally you can use a global option programs.man.enable; I now better describe that: fd26ad6.

For reference, see the manual.

systemPackages: yes, but additionally you can use a global option programs.man.enable; I now better describe that: fd26ad6.

Will that also enable all 3 pages? I remember lots of function docs were missing from my system a while ago.

@Profpatsch: no, it won't. And most people don't want them, so I think it's good to have them separately. You can e.g. set environment.extraOutputsToInstall = [ "devdoc" ];; that will get you also gtk-doc, for example.

Ah, very nice. Where could we document this? I think many devs don’t know about it.

Also, wouldn’t it make sense to change it to outputsToInstall? This gives better flexibility and is also self-documenting.

Some outputs are always installed by default.  If you assign outputs in here, you shouldn't expect the original value to be overridden, which is why I put extra into the name.

Right, the module system dictates the merge action on values.
Although this could be worked around by having the value be a function oldOutputList → newOutputList.

No, each option can choose the merge function.

No, each option can choose the merge function.

Yeah, exactly.
outputsToInstall :: [outputs] -> [outputs]
Then the user can say
outputsToInstall = old: old ++ [ "devdoc" ];
outputsToInstall = const [ "out" "man" "devdoc" ];

or similar.

Possibly, though to me that would seem an overkill for this option.
I guess all options could be unified to self: super: contents, and then we would add simple combinators (like const, mergeAttrs, appendList).

In #39049 I implemented some of the discussion here. Can somebody review (and merge), please?

Given
documentation.dev.enable = true;
environment.systemPackages = [ pkgs.manpages ];

I think this issue can be closed? Granted, it would be nice if those two options were more discoverable, but that's a more general issue.

I added an entry to the nixos wiki: https://nixos.wiki/wiki/Man_pages


TypeError: DicomImage is not a constructor

HI @PantelisGeorgiadis,
First of all, Great work, I'm a fan 👍
Wanted to ask about an error I get when trying to implement the basic example in NODE.
According the Basic image rendering example, my function is:
const DicomImage = require("dcmjs-imaging");
const arrayBuffer = msg.payload;
var image = new DicomImage(arrayBuffer);
const renderedPixels = image.render(frameIndex);
msg.payload = renderedPixels;
return msg;
However, I'm getting: TypeError: DicomImage is not a constructor error.
I may be doing something wrong or missing something, but it appears to be related to DicomImage.
Thanks Again!

Hello @thejollypop! Thank you for your kind comments! Regarding your issue, you are missing brackets around DicomImage. dcmjs-imaging exports multiple objects and, therefore, you need const { DicomImage } = require("dcmjs-imaging");.

Thanks! I'm getting now: Error: Unsupported LUT pipeline photometric interpretation
when using const renderedPixels = image.render(0);
but I guess it's related to something on my end, so we can close this issue. Thanks again!

My pleasure! The Error: Unsupported LUT pipeline photometric interpretation has to do with the data that you are passing for rendering (tip: check your PhotometricInterpretation DICOM tag value).

Hi @PantelisGeorgiadis ;)
With version 0.1.13, it seems that my "old code" is no longer working.
After following the basic example and adding NativePixelDecoder, I'm getting this error: TypeError: WindowLevel.fromDicomImage is not a function. Can you please point me what I'm missing?  Thanks!


State that tag keys need too be unique

Discussion 2023-05-04: We would benefit from text stating that the tag keys need to be unique.  They are currently URNs but there's nothing in theory stopping us having duplicates.

IMHO, this is really something for NMOS generally, e.g. maybe in https://specs.amwa.tv/is-04/releases/v1.3.2/docs/APIs.html.


use the correct unicode ranges

References #6112
Correcting the unicode ranges, so the sub font doesn't render with only some characters using wellcome bold
Using the following ranges:
U+0020: space,
U+0022: quotation,
U+002C: comma,
U+002E: fullstop,
U+0030-0039 : digits 0-9
U+003F: question mark,
U+0041-005A: uppercase,
U+0061-007A: lowercase

How much are we excluding with this?

The sub font is about a third the size, the full font looks like this:

@gestchild could you tell me in KB?

the current subset base64 encoded is 14KB (approx 11KB gzipped)
inlining the entire woff file base64 encoded would be 29KB (approx. 22KB gzipped)

Re-doing the font subset in #9803 to include uppercase, lowercase, numbers, and punctuation


Allow Compile-Time Opt-in for Specific Types

Right now, the dispatch machinery has to check hasmethod or methods for a new type to see if it quacks_like a method signature.
We could allow the user to mark a type as adhering to a specific DuckType at the top level. Which would let us short circuit those checks. It might look like
@mark Container{T} => Vector{T} where {T}
# lowers to
quacks_like(::Type{<:Container}, ::Type{<:Vector}) = true
narrow(::Type{<:Container}, ::Vector{T}) where {T} = Container{T}
wrap(::Type{C}}, x::V) where {T, V<:Vector{T}, C <: Container{T}} = Guise{C,V}(x)

This is not necessary as of #23 because using static_method_count completely compiles away.


replace logo

replace logo with a higher quality version

CC: @chrismainey

ah, one thing I have just noticed: I think the image I've added has a white background, that may need changing

I've removed the background, but I think we've ended up with potato quality again... I think we need the graphic designer who did the original to sort this out...


Refactor sqs

I had to adjust core.responses._get_multi_param for correctly adding empty strings to the result list.
I moved most function logic from response.py to models.py so it can be detected by implementation_coverage.py Script.
Also fixes #457

Coverage decreased (-0.05%) to 93.543% when pulling c5059ad3d156e3d0b16034867e759d3a91620ce2 on edekadigital:refactor-sqs into 6b67002a4290a814163a682503338217bd9cfc89 on spulec:master.


Ability to freely move toolbar position

📝 Provide a description of the new feature
What is the expected behavior of the proposed feature?  What is the scenario this would be used?
In the Video Conference feature, when muting the microphone or turning off the camera, a toolbar overlay would appear and with only a few positions to choose from and none of those positions are suitable (for me) because they will cover some part of the app and block its view. It would be great if we could freely move the toolbar or possibly move it down to the taskbar like this:

If you'd like to see this feature implemented, add a 👍 reaction to this post.

Hi @Daksh777
this is already tracked in https://github.com/microsoft/PowerToys/issues/6374 via https://github.com/microsoft/PowerToys/issues/6763


Add support to most recent ruby versions

Just adding some support for newer ruby versions... I intend to work on a build matrix that also matches different postgresql versions, but I'll work on this on another branch.
For now I just need to ensure that multitenancy_tools gem is compatible with newer ruby versions.


feat: Cortex pull from HF can select quantization

Describe the bug
When pulling a model from HF, I could not select the model quantization, it downloads the first one by default (lowest quality)
To Reproduce
Steps to reproduce the behavior:

run cortex
pull any models on HF E.g. TheBlock/Tiny
it pulls Q2 by default
see error

Expected behavior
It should prompt users to select the quantization they want to pull

The issue is reproducible and need investigation from dev team

@namchuai I am converting this into a feature.
We can close ticket once you have verified that cortex.cpp can trigger quantization selection when downloadingHF GGUF download

works


Wiki broken after gitea migration due to old version in update hook

I moved from Gitea 1.0.2 to 1.1.0 - the migration process appeared to complete successfully according to details in xorm.log.
Later when trying to add a new wiki page I received a 500 error.
In gitea.log I see this message:
2017/03/16 22:03:45 [...routers/repo/wiki.go:445 NewWikiPost()] [E] AddWikiPage: Push: exit status 1 - remote: hooks/update: line 2: /xx/xx/gitea-1.0.2-darwin-10.6-amd64: No such file or directory
remote: error: hook declined to update refs/heads/master
To /xx/xx/gitea-repositories/xx/xx.wiki.git
 ! [remote rejected] master -> master (hook declined)
error: failed to push some refs to '/xx/xx/gitea-repositories/xx/xx.wiki.git'

Where the problem is that I've removed the binary for the previous version of gittea, however it is still being referenced in the update hook for the wiki git repo.
I did the resync hooks option in the admin panel and it did not resolve the problem. When manually changing the hook to reference the newer version of gitea I received a different 500 error despite the path being correct and executable:
2017/03/16 22:32:44 [...routers/repo/wiki.go:445 NewWikiPost()] [E] AddWikiPage: Push: exit status 1 - remote: No help topic for 'update'
remote: error: hook declined to update refs/heads/master
To /xx/xx/gitea-repositories/xx/xx.wiki.git
 ! [remote rejected] master -> master (hook declined)
error: failed to push some refs to '/xx/xx/gitea-repositories/xx/xx.wiki.git'

After restoring the 1.0.2 binary to the old location and changing the update hook back to the old version I was able to successfully update the wiki.
I looked at some of my non-wiki repos and the hooks for those had been updated to the 1.1.0 version so this seems to just be isolated to the wiki repos.

This might be related to https://github.com/go-gitea/gitea/issues/1250

Yes. This should be fixed by #1257. Let's close this and please feel free to reopen it.

For anyone whose wiki broke because of this, the fix after upgrading is:
Enter Gitea admin panel on the UI, run "Resync pre-receive, update and post-receive hooks of all repositories."

@razzintown @lunny Thats great news! Thank you!

@razzintown @lunny Confirmed that the issue is resolved in 1.1.1


Add album handler

Codecov Report

Merging #42 (22d93ff) into main (b5a64a8) will decrease coverage by 15.84%.
The diff coverage is 29.09%.

@@             Coverage Diff             @@
##             main      #42       +/-   ##
===========================================
- Coverage   98.97%   83.13%   -15.85%
===========================================
  Files           7        7
  Lines         196      249       +53
===========================================
+ Hits          194      207       +13
- Misses          1       38       +37
- Partials        1        4        +3

Impacted Files
Coverage Δ

internal/bot/handlers.go
47.36% <23.52%> (-52.64%)
:arrow_down:

internal/bot/bot.go
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Documentation: nthCalledWith() minor bug

Minor bug for nthCalledWith shortcut function.

Summary

Test plan

Thank you!


Add a Gitter chat badge to README.rst

biosustain/optlang now has a Chat Room on Gitter
@phantomas1234 has just created a chat room. You can visit it here: https://gitter.im/biosustain/optlang.
This pull-request adds this badge to your README.rst:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Codecov Report

Merging #86 into master will decrease coverage by 19.06%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master      #86       +/-   ##
===========================================
- Coverage    88.7%   69.63%   -19.07%
===========================================
  Files           8        8
  Lines        2381     2381
  Branches      542      542
===========================================
- Hits         2112     1658      -454
- Misses        167      631      +464
+ Partials      102       92       -10

Impacted Files
Coverage Δ

optlang/cplex_interface.py
2.54% <0%> (-86.89%)
:arrow_down:

optlang/expression_parsing.py
70.83% <0%> (-8.34%)
:arrow_down:

optlang/interface.py
89.52% <0%> (-0.59%)
:arrow_down:

Continue to review full report at Codecov.

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


No tenant

When I select tenant name it does not show any available tenants. However I assigned a new resource a couple of days ago and it worked fine. In urgent need of help.

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

ID: c95c1076-a5e3-81bb-44a4-36c57658df38
Version Independent ID: 7e449205-0e9d-056c-2b54-f4de6ef8ef39
Content: Quickstart: Deploy an app with the LUIS portal - Language Understanding - Azure Cognitive Services
Content Source: articles/cognitive-services/LUIS/get-started-portal-deploy-app.md
Service: cognitive-services
Sub-service: language-understanding
GitHub Login: @diberry
Microsoft Alias: diberry

@ConnorBehan Thank you for letting us know. Can you please send screenshots or a screencastify video? #in-progress

@ConnorBehan Can you also open F12/dev tool, and force a refresh "empty cache and hard reload"

Thanks for the quick reply.
Logged out and back in 3 times and it worked on the third attempt. Strange one.
The reason I was checking my resources is because my bot, out of the blue has started replying "Sorry, it looks like something went wrong." to any message I send. I have checked my Luis subscription and my free starter key has reached its limit. I do have another resource assigned to the Luis app which is F0. I have used around 500 of those in 2 days or so. Now, my bot has stopped replying to any messages I send and I can't seem to find out why. Any ideas?

Does your bot (in the azure portal bot resource, app service settings, luisapikey) use the F0 key? You would have had to change this yourself at some point.

My bot service is F0, App service plan is F1(Free), my Luis resource is F0

@diberry After reading your comment again, I realised I hadn't updated the key for my dispatch model in the bot file. Really appreciate the help thanks a mil.

@ConnorBehan
We will now proceed to close this thread. If there are further questions regarding this matter, please respond here and @YutongTie-MSFT and we will gladly continue the discussion.


Facenet

FaceNet Encoder for returning vector embeddings for each face.
Based on FaceNet by : Florian Schroff, Dmitry Kalenichenko, James Philbin ( PyTorch implementation)

@shivam-raj Oops~ It seems that you forget to check out our guidelines on Commit Style. The thing is that we lints the commits with the commitlint . It would be great if you can make a new PR and make sure the commit are in the right format. Please let me know if you meet any problem. Many thanks again!🖖


Need to add disabled play icon to core tools

Need to add the sprites for the disabled play icon and rebuild the sprite file on the following tools:

[x] File Picker
[x] Settings
[x] Debug

This is now disabled on all tools.


Player.Stop() function not return

I am using libvlc-go to play HLS stream, and found sometimes Player.Stop() blocked, and no return, it seems like the problem of libvlc libvlc_media_player_stop.
the golang code is simple, there is no chance to block, am I right?

Hi @fovecifer. Yes, most likely some issue with libvlc_media_player_stop.
Could you post a sample of your code so I can make some tests?

I just copy the code from README Player usage, and I do not using "defer".
and the streams which has problem all from same CDN, thanks for your help, but I could not share the streams out of company.
I will do more tests, maybe I should make an issue in libvlc, not here.


Allow operator to set PSA in Rancher

Change description

In Rancher, it is not enough to have patch permissions for a namespace in order to set PSA labels.
It is also required to have the updatepsa permission on the projects resource, as outlined
here.
This rule allows the Trident operator to set the PSA label pod-security.kubernetes.io/enforce: privileged on its installation namespace in Rancher.
Project tracking

I have no insight to your internal Jira.
Do any added TODOs have an issue in the backlog?

No added TODOs.
Did you add unit tests? Why not?
No. I see no unit tests for your Helm chart today, and I cannot be the one to introduce it for you. I can only build on what you already have.
Does this code need functional testing?

I don't know, it depends on your testing practices and current pipelines. It would be great if you had a pipeline that tries to install the operator in Rancher to see that it works, but I understand if you cannot prioritize a specific Kubernetes management system like that.
Is a code review walkthrough needed? why or why not?
No, it should be fairly straight-forward to read the diff without a walk-through. But I'm happy to help if needed.
Should additional test coverage be executed in addition to pre-merge?

I don't think so.
Does this code need a note in the changelog?

It is not required, but might be nice with a note mentioning that this fixes bug #839
Does this code require documentation changes?

No.
Additional Information
Closes #839

I think this PR will not work as expected.
It only works if trident is being installed in the cluster rancher is installed to, but not any cluster managed by rancher. Basically because the projects.management.cattle.io resource is only available in the rancher cluster itself, but not a cluster created by, or imported into rancher.
# in rancher cluster
> kubectl get projects.management.cattle.io
No resources found in default namespace.

# in an created cluster
> kubectl get projects.management.cattle.io
error: the server doesn't have a resource type "projects"

Strange. I was pretty sure that I tested it before creating the PR. I'll try and verify.

This was allegedly fixed in v24.10.0:

Kubernetes: Fixed Rancher admission webhook preventing Trident Helm installations (Issue https://github.com/NetApp/trident/issues/839).

I have no idea which PR that was, doesn't seem to be anything linked in my issue. But I guess I'll close this PR then.


packit container image can't be built for a PR in docker hub

Building in Docker Cloud's infrastructure...
Cloning into '.'...
Switched to a new branch '553'
fatal: no submodule mapping found in .gitmodules for path 'tests/testsuite_recording/integration/test_data/test_api/tests.testsuite_recording.integration.test_api.ProposeUpdate.test_comment_in_spec.master.yaml.file_storage/1'
please ensure the correct public key is added to the list of trusted keys for this repository and the remote branch exists. (128)

This is the problem:
diff --git a/tests/testsuite_recording/integration/test_data/test_status/tests.testsuite_recording.integration.test_status.TestStatus.test_dowstream_pr.master.yaml.file_stor
new file mode 160000
index 0000000..cb3786c
--- /dev/null
+++ b/tests/testsuite_recording/integration/test_data/test_status/tests.testsuite_recording.integration.test_status.TestStatus.test_dowstream_pr.master.yaml.file_storage/1
@@ -0,0 +1 @@
+Subproject commit cb3786c682ed125c89d7f14f537b9893bdc8afd7

I am going to comment out the respective tests, so that everything is green.

We need a proper fix without skipping the tests.
-- change in the tests or requre or both

Okay, looking at image builds, the change with adding the git repos indeed broke image building completely, not just for a PR. https://cloud.docker.com/u/usercont/repository/registry-1.docker.io/usercont/packit/builds/6f0b9fc4-f9f0-4f81-9764-7c404c9a954a
Nevertheless, I am closing because that is solved now.
Please create a dedicated issue to fix the tests, this issue is not covering such thing.


Resource is not in the expected state due to waiter status: TIMEOUT

Environment information
System:
  OS: macOS 15.1.1
  CPU: (8) arm64 Apple M1
  Memory: 382.34 MB / 16.00 GB
  Shell: /bin/zsh
Binaries:
  Node: 20.3.0 - ~/.nvm/versions/node/v20.3.0/bin/node
  Yarn: 1.22.21 - ~/.nvm/versions/node/v20.2.0/bin/yarn
  npm: 9.6.7 - ~/.nvm/versions/node/v20.3.0/bin/npm
  pnpm: 9.13.2 - ~/.nvm/versions/node/v20.2.0/bin/pnpm
NPM Packages:
  @aws-amplify/auth-construct: 1.5.0
  @aws-amplify/backend: 1.8.0
  @aws-amplify/backend-auth: 1.4.1
  @aws-amplify/backend-cli: 1.4.2
  @aws-amplify/backend-data: 1.2.1
  @aws-amplify/backend-deployer: 1.1.10
  @aws-amplify/backend-function: 1.8.0
  @aws-amplify/backend-output-schemas: 1.4.0
  @aws-amplify/backend-output-storage: 1.1.3
  @aws-amplify/backend-secret: 1.1.5
  @aws-amplify/backend-storage: 1.2.3
  @aws-amplify/cli-core: 1.2.0
  @aws-amplify/client-config: 1.5.2
  @aws-amplify/deployed-backend-client: 1.4.2
  @aws-amplify/form-generator: 1.0.3
  @aws-amplify/model-generator: 1.0.9
  @aws-amplify/platform-core: 1.2.2
  @aws-amplify/plugin-types: 1.5.0
  @aws-amplify/sandbox: 1.2.6
  @aws-amplify/schema-generator: 1.2.5
  aws-amplify: 6.10.0
  aws-cdk: 2.171.0
  aws-cdk-lib: 2.171.0
  typescript: 5.7.2
No AWS environment variables
No CDK environment variables

Describe the bug
When saving changes on a function the hotswap fails with  Resource is not in the expected state due to waiter status: TIMEOUT error.
Th error appears to introduced in version CDK v2.167.0
Issue on CDK tracking this behavior: https://github.com/aws/aws-cdk/issues/32219
workaround:
adding the following policy mitigates the issue:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AmplifyHotSwappableFunctionResource",
            "Effect": "Allow",
            "Action": [
                "lambda:GetFunctionConfiguration"
            ],
            "Resource": [
                "arn:aws:lambda:*:*:function:amplify-*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        }
    ]
}

Reproduction steps
create a function
save changes

This has been resolved now.
If you are running into this issue please make upgrade aws-cdk and aws-cdk-lib to  2.171.1 or above in your project.


Implement a filter that matches start/end datetime - can be used for future-date scheduling

Per #228

Sample filter:
            - name: 'everything on during window, but missing period'
              filter:
                - type: ec2
                - accountId: '112233445566'
                - matchWindow:
                    from: '2021-01-01'
                    to: '2022-01-01'
              schedule: '24x7'
              priority: 50

You'll have to be super-careful using these filters - especially around timezones (implicit/local vs explicit), and around 00:00 being the default time of day.

If a date without a time is specified as from/to value, then it is implicitly 00:00, which makes for somewhat counter-intuitive need to +1 on the end date in order to get 24hour event coverage.


Update README.md broken links

I've changed the links for train and eval in the Model Zoo table to the correct ones

@Danivilanova, thank you for help!


Verbose CLI output to help troubleshoot (especially in composed mode)

Trying to troubleshoot an issue when running oasdiff in composed mode (I use oasdiff 1.10.9)
It really lacks the option to show what file (and endpoint/operation) it is currently processing.
I.e. I am trying to generate a changelog from a tree with hundreds of openapi files in composed mode (with --flatten-allof).
And I am getting just this in output:
Error: failed to load base specs from glob "../api-metadata-specs2/openapi/*/*-openapi.yml" with unable to resolve Enum conflict: intersection of values must be non-empty

At this point I just need something like --verbose to get more information about where it stopped.
Then I will try to figure out what is wrong top report a different issue (maybe)

Hey
This error occurs when trying to merge schemas that have entirely separate enum value sets. Because there are no shared enum values, there is no data that could be considered valid against both of the schemas.
This kind of issue can appear in schemas that use an allOf component and have more than one enum field.

@tcdsv , thanks. I would be happy to dig deeper into this problem, but I need to understand what particular file and schema triggered it (out of 200+ I included into scan)...

Hi @anikitin,
As a first stop to resolve this I suggest adding the problematic file name to the error message, like this:
Error: failed to load base specs from glob "../api-metadata-specs2/openapi/*/*-openapi.yml" with failed to load "path-to-problematic-file" with unable to resolve Enum conflict: intersection of values must be non-empty

What do you think?

@reuvenharrison , yes, for sure. But since files can be pretty big we need also to refer somehow to problematic schema/component within this file as well.


AttributeError: module 'mitmproxy_rs' has no attribute 'DnsResolver'

Problem Description
When I am trying to start mitmproxy as a default command in kali linux, I get the following error:
Traceback (most recent call last):
File "/usr/bin/mitmproxy", line 5, in
from mitmproxy.tools.main import mitmproxy
File "/usr/lib/python3/dist-packages/mitmproxy/tools/main.py", line 15, in
from mitmproxy import master
File "/usr/lib/python3/dist-packages/mitmproxy/master.py", line 5, in
from .addons import termlog
File "/usr/lib/python3/dist-packages/mitmproxy/addons/init.py", line 12, in
from mitmproxy.addons import dns_resolver
File "/usr/lib/python3/dist-packages/mitmproxy/addons/dns_resolver.py", line 22, in
class DnsResolver:
File "/usr/lib/python3/dist-packages/mitmproxy/addons/dns_resolver.py", line 44, in DnsResolver
def resolver(self) -> mitmproxy_rs.DnsResolver:
^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'mitmproxy_rs' has no attribute 'DnsResolver'
I have python 3.12.6 installed, so I don't understand why this is happening. Also I checked the module mitmproxy_rs and it seems that it does have this class DnsResolver in this path:
/usr/lib/python3/dist-packages/mitmproxy_rs/dns.pyi
Steps to reproduce the behavior:

write mitmproxy in the shell of kali linux

System Information
kali linux 2024.3.1
dpkg --list | grep mitmproxy
ii  mitmproxy                              10.4.2-0kali1                            all          SSL-capable man-in-the-middle HTTP proxy
ii  python3-mitmproxy-rs                   0.9.2-0kali2                             amd64        mitmproxy's Rust bits (Python 3)
ii  python3-mitmproxy-wireguard            0.1.23-0kali1                            amd64        proxy any device that can be configured as a WireGuard client (Python 3)

mitmproxy 10.4.2 is incompatible with mitmproxy_rs 0.9.2: https://github.com/mitmproxy/mitmproxy/blob/v10.4.2/pyproject.toml#L45
You need to upgrade your mitmproxy install as well.


extended dims cube

For https://github.com/chanzuckerberg/cellxgene-census/issues/603

@mincheoly This code is currently the performance hotspot:
gene_rvs = gen.multinomial(n_obs, counts / counts.sum(), size=num_boot).T

With the extra dimensions, this is being called considerably more times.
Is there a faster implementation we can find?
Can we possibly decrease num_boot, as this helps it run faster?

i think reducing num_boot to ~1000 (maybe even 500) should be fine (and we can compare later on a smaller cube?)
I'm surprised that's the bottleneck and not getting the unique counts. i remember testing a few different ways to generate the multinomial and they didnt seem hugely different - but maybe things have changed since (like https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.multinomial.html)
Would reducing the num_boot get it to a point where its runnable?

i think reducing num_boot to ~1000 (maybe even 500) should be fine (and we can compare later on a smaller cube?)

Great! I'll start with 500 and see that affects performance.

Would reducing the num_boot get it to a point where its runnable?

It should at least make that one call 10x faster, and since it's the performance hotspot, that may be enough. Stay tuned!

@mincheoly (cc: @pablo-gar) Since we can generate the cube in ~1 day, perhaps that is sufficient for now? I figure that as long as you can get the the larger dimension cube generated once, you can experiment with it. In which case, I'll pause on doing further optimization work. And if we get to the point of needing to generate this cube on a regular basis (e.g. for every Census data release), I will put more effort into optimizing.
I think the code changes are worth merging to main now, as is, but I'll wait for your approval on this PR before merging (no rush). Thanks!


Adds the containerCssClass and dropdownCssClass options from Select2 …

…to allow custom CSS classes to easily be applied to ui-selects

I was looking to add the very same functionality myself.  There's a color scheme we use for status labels on our site, and I wanted to use ui-select for an item that can have multiple status flags.
Had I written it myself I would have tried to integrate it with ng-class so that you can pass multiple classes (say one that applies text rules and one that applies box shape or color rules, for a contrived example).  It could be done by managing the classes in the ui-select-match directive's link function instead of in the template.
But hey, if this gets merged I'd use this just as well.

This could probably be accomplished by #1531 when someone does that.
Couldn't you just do:
<div class="my-class">
  <ui-select...
    ...
  </ui-select...

.my-class .ui-select-dropdown {
  ...
  ...
}

I just feel like this might be a little bloaty and I think that most would expect them to be watched and updated.
@wesleycho Any thoughts on this? I'm edging towards closing.

If the library isn't using replace: true, then there is no reason for this feature.


Can the w props support 'auto'?

type check failed for prop "w". Expected Number with value NaN, got String with value "auto"

currently on a project and using this magnificently coded package, if I did have time I would fork and fix this, I would appreciate if there are any contributors here (from the 311 forks) who can provide a fix for this in the next couple of days.
And again, if not - I for sure will after current project. Such a small fix with a big impact.

@ereztdev Actually I'm working on it as well and it's pretty much done, I just need to test it a little bit more. I can't provide any deadline, even though the current COVID situation forces us to stay home, but I hope to release it soon.

auto is supported in the new version 2.2.0. I'm leaving this issue open for any feedback.
Thanks

Hi. I'm using 2.2.0 (and I never used it before) and I see the following:

When using w/h="auto" I initially get a square box and when activated it resizes to something close to the parent size (but it's not the same!).

When using w/h="100%" the initial size is perfect (exactly the parent) but it gives console errors ([Vue warn]: Invalid prop: custom validator check failed for prop "w") and I can't resize.

So my question: is there a way to initially use the parent size or do I need to retrieve that myself and use that explicitly for the w/h props?

I second @josvos. It seems that the box works smoothly only by using an unsupported value.

Thanks for this feature in 2.2.0, it solved one of my issues I had before. Though to me it seems there is still either a bug or I missunderstand something. I set w and h to auto, but also have min-width and min-height, but the latter get ignored when using auto for the former. I would expect the inline CSS to just apply these as well.


Update DB fields that are empty, not null

This populates the sites.endpoint field with the WIREGUARD_ENDPOINT variable and removes it from env vars reference.
cc @conectado
Fixes #1237

Pull Request Test Coverage Report for Build eda10e40d2d61e48ebf8a7c868c24ca4da3663e6-PR-1238

5 of 5 (100.0%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.06%) to 66.149%

Files with Coverage Reduction
New Missed Lines
%

apps/fz_http/lib/fz_http/devices.ex
1
93.9%

Totals

Change from base Build de3919fb69c0a040ccaf49b53dbbb6269c1c9051:
0.06%

Covered Lines:
1192

Relevant Lines:
1802

💛  - Coveralls


It would be nice with a CyclicVoltammogramDiff for EC-MS measurements.

I think that all the methods are there, in CyclicVoltammogramDiff and ECMSMeasurement.
It's just that the class ECMSCyclicVoltammogram has more attributes in its dictionary represntation than CyclicVoltammogramDiff does, so it breaks when initiating.
I've made this raise a NotImplementedError in #57 that gets raised when the user calles ECMSCyclicVoltammogram.diff_with()

Closing this, because it is a duplicate of #26


Rework GroupByHash to for faster performance and support grouping by nulls

Which issue does this PR close?
Closes https://github.com/apache/arrow-datafusion/issues/790 by implementing a new design for group by hash. Built on https://github.com/apache/arrow-datafusion/pull/812 so it may be easier to review that one first
This PR is an amazing collaborative effort and includes ideas from @Dandandan  @jhorstmann @rdettai @jorgecarleitao and likely others I forgot.
Rationale for this change

Regain performance lost when we added support for GROUP BY NULL; See https://github.com/apache/arrow-datafusion/issues/790 for more details

What changes are included in this PR?

Use a hash to to create the appropriate grouping, use indexes rather than hash keys many time

Potential Follow On Work

There are some great ideas from @sundy-li  and @Dandandan on https://github.com/apache/arrow-datafusion/issues/846#issuecomment-895763475 for additional ways to improve grouping performance

Performance Summary

db-query: @Dandandan 's measurements show improvement except for one query
DataFusion Synthetic Aggregate Benchmark (specially created for this work): %15 - 27% improvement
Aggregate microbenches show no changes within my margin of error

db-query
The numbers @Dandandan measureed are at  https://github.com/apache/arrow-datafusion/pull/808#issuecomment-895425959
DataFusion Synthetic Aggregate Benchmark (newly created for this work):
Full results, https://github.com/alamb/datafusion_aggregate_bench/blob/main/RESULTS.md . Summary:

test
master
arrow-datafusion #808
gby_null / master (less than 1 is better)

100 Groups; 100M rows, int64_keys(10% nulls), f64 values(1% nulls)
22.40s
16.27s
.73

100 Groups; 100M rows, utf8_keys(10% nulls),  f64 values(1% nulls)
29.46s
22.73s
.77

100 Groups; 100M rows, dictionary(utf8, int32) keys(10% nulls), f64 values(1% nulls)
31.54s
26.96s
.85

aggregate micro benchmarks
Tested via
cargo bench --bench aggregate_query_sql -- --save-baseline <test name>

Results
group                                                gby_null_new1                           master
-----                                                -------------                           ------
aggregate_query_group_by                             1.00      2.9±0.13ms        ? ?/sec     1.10      3.2±0.35ms        ? ?/sec
aggregate_query_group_by_u64 15 12                   1.00      3.1±0.16ms        ? ?/sec     1.00      3.1±0.08ms        ? ?/sec
aggregate_query_group_by_with_filter                 1.12      2.2±0.12ms        ? ?/sec     1.00  1969.5±41.36µs        ? ?/sec
aggregate_query_group_by_with_filter_u64 15 12       1.09      2.2±0.08ms        ? ?/sec     1.00      2.1±0.08ms        ? ?/sec
aggregate_query_no_group_by 15 12                    1.00  1195.8±70.21µs        ? ?/sec     1.02  1223.4±108.78µs        ? ?/sec
aggregate_query_no_group_by_count_distinct_narrow    1.00      5.5±0.23ms        ? ?/sec     1.09      6.0±0.90ms        ? ?/sec
aggregate_query_no_group_by_count_distinct_wide      1.09      8.0±0.59ms        ? ?/sec     1.00      7.4±0.30ms        ? ?/sec
aggregate_query_no_group_by_min_max_f64              1.08  1177.6±117.36µs        ? ?/sec    1.00  1092.1±29.93µs        ? ?/sec

Performance Source
This approach avoids the following operations which should improve its speed:

Avoids copying GroupValues into a Vec to hash, saving both time and space
Avoids several hash table lookups (used indexes into group_values instead
Uses vectorized hashing

Are there any user-facing changes?
Faster performance
Notes:
I tried to keep the same names and structure of the existing hash algorithm (as I found that easy to follow -- nice work @Dandandan  and @andygrove ) and I think that will make this easier to review
Items completed

[x] Basic debugging
[x] ~Add ascii art diagrams~ (the design got simpler using RawTable API)
[x] Measure performance
[x] Handle hash collisions - https://github.com/apache/arrow-datafusion/issues/843
[x] https://github.com/apache/arrow-datafusion/pull/812
[x] Implement fast comparison with ScalarValue and ArrayRef https://github.com/apache/arrow-datafusion/pull/844

I am basically done with this PR. All that remains in my mind is to run some benchmarks and I'll mark it as ready for review

On the db-benchmark aggregation queries:
PR:
q1 took 33 ms
q2 took 377 ms
q3 took 986 ms
q4 took 47 ms
q5 took 973 ms
q7 took 932 ms
q10 took 4040 ms

Master:
q1 took 37 ms
q2 took 325 ms
q3 took 1431 ms
q4 took 56 ms
q5 took 1287 ms
q7 took 1304 ms
q10 took 9380 ms

It looks like it's a small perf hit on q2,  but I think the other 4 queries do greatly compensate for this.

I had a good look and think all looks GREAT!

Thanks @Dandandan  and @jorgecarleitao  -- I plan to merge https://github.com/apache/arrow-datafusion/pull/812 in first and leave this one open for another few days in case anyone else wants to comment.

Rebased now that https://github.com/apache/arrow-datafusion/pull/812 has been merged

A TCP-H query that also get's quite a bit faster is q13, on Parquet 37.8s -> 29.5s

Thanks @alamb ! :tada: :tada: :tada: :tada:

Thanks everyone for all the help. This was a very cool experience of collaborative development for me

Potentially relevant: https://www.researchgate.net/publication/326669722_SIMD_Vectorized_Hashing_for_Grouped_Aggregation_22nd_European_Conference_ADBIS_2018_Budapest_Hungary_September_2-5_2018_Proceedings

That is an interesting article.
Looking at the summary:

The common implementation of the function using hashing techniques
suffers lower throughput rate due to the collision of the insert keys in
the hashing techniques.....
I actually found it very hard to test the group by collision handling
correctness because the hashing technique in create_hashes was so good I
could not find any example data that hased to the same value in a
reasonable amount of time -- LOL
However, the technique to search several slots at once might indeed be
relevant

https://www.researchgate.net/figure/SIMD-accelerated-cuckoo-hashing-extended-from-Ross-et-al-14_fig1_326669722
On Sat, Aug 14, 2021 at 4:58 AM Jorge Leitao @.***>
wrote:

Potentially relevant:
https://www.researchgate.net/publication/326669722_SIMD_Vectorized_Hashing_for_Grouped_Aggregation_22nd_European_Conference_ADBIS_2018_Budapest_Hungary_September_2-5_2018_Proceedings
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/arrow-datafusion/pull/808#issuecomment-898873524,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADXZMNMY67U56FRXCORIV3T4Y45BANCNFSM5BLDRZWA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.

Hashbrown already implements many tricks like this I believe, it's one of the fastest hash table implementations:
https://docs.rs/hashbrown/0.11.2/hashbrown/hash_map/index.html
There is also a nightly rawtable API to retrieve multiple values at once get_each_mut, which might be a bit faster.
So far, in profiling results, I haven't seen the probing/hashmap itself being a very expensive part currently. AFAIK It's mostly other parts that could be optimized: updating the states/values, collision checks, converting to array, creating hash values, actual sum over the array, etc.


Loose teams

Right now, teams are determined by the position of the username in the alphabet. That is a pretty terrible approach.
It'd be far more appropriate to allow any player to join a team, but then lock them into that team for as long as that game continues.

Closed in #133 (didn't happen automatically for some reason)


Add http auth interceptor again to allow client side redirecting on 401 responses

Thanks for putting this in!   So, the way to leverage this for my fumbling efforts on OpenId, is that the authentication class, in my case app/controllers/auth/JWTOpenIdAuthenticatedAction.scala, should return a 401 instead of the current logic that redirects you to a Login page.     Specifically this line on 103: https://github.com/querqy/smui/blob/spike_jwt_auth_lifecycle/app/controllers/auth/JWTOpenIdAuthenticatedAction.scala#L103 should instead be returning a 401.
That would tell the Javascript front end "Oh, hey, you need to redirect".  It looks like https://github.com/querqy/smui/blob/fix/http-interceptor/frontend/src/app/interceptors/http-auth-interceptor.ts#L22 is where that happens.
It appears that my response though from JWTOpenIdAutheticatedAction needs maybe to include some sort of JSON data structure?  Guessing it's something like:
{
  "action": "redirect",
  "params": "http://keycloak:9080/blahblahblahblah?callback=http://localhost:9000/auth/openid/callback"
}

Am I on the right track!   Very excited to get this in and demoed via Chorus ;-)


wrong English translations for participant names

use OS 2 with English menus
create a new participant

result: OS uses the terms "First name" and "Last name". These terms are incorrect English.
Instead of "First name" one should use "Given name". This is also used in the passports and therefore more or less the standard term.
Instead of "Last name" one must use "Surname". This is also used in the passports and therefore more or less the standard term.
(see also https://en.wikipedia.org/wiki/Surname)

I can't see in dictionaries that first/last name is not correct:
https://www.dict.cc/?s=vorname
http://www.linguee.de/deutsch-englisch/search?source=auto&query=vorname
http://dict.leo.org/ende/index_en.html#/search=vorname&searchLoc=0&resultOrder=basic&multiwordShowSingle=on&pos=0
So I am not convinced. @normanjaeckel What do you mean?

If given name and surname is more common in official documents and stuff like this we may change to this wording.

Ok, I'll do this...


Blank screen with only refresh button in Achievements

Summary:
User:Ainali is experiencing a blank screen with only a refresh button in his Achievements activity
screenshot
Commons app version:
2.8.0 beta
Would you like to work on the issue?
Pref not

It might be because the information from the API's hasn't been fetched, and the current session has expired.
Possible steps Taken:

Increase the session time. This might reduce the probability of session expiry.
Display a message regarding the session expiry and prompt them to try again later

I don't think there would be any issues with increasing the session time, but are we able to do that from our end? @maskaravivek

Yup, I don't think session duration could be controlled by the clients.
@tanvidadu which token are you using. In particular crsf token can be used once and is valid just for 10 seconds from the time it was generated.
The change that I did for the session management might affect all API calls that require an edit token. I will review the session management logic this Sunday and see if the comments left by Tgr could be used to modify some of our flows.

I didn't explicitly mention any token while making api calls so I am not sure which token I am using.
Is there any way to find it out?

Oops, I forgot that you are not using a MediaWiki API.
The API that you are consuming doesn't depend on app's session. Its an anonymous API.
I guess the best you could do is gracefully handle the error by showing a snack bar or toast.
Also, we can probably check with @urbanecm if he has any statistics around urbanecmbot/commonsmisc/feedback.py failure rate and latency.

Hello everyone,
as of now, I have received 11 requests regarding said user, access.log (filtered to focus on this case) is on https://pastebin.com/raw/UgQf7NHa. Sadly, when writing the API, I've forgot to reflect error not only in JSON being returned to the called but also in the HTTP status code. Then, I have absolutely no clue if those requests were successful or not. I've updated the API so https://tools.wmflabs.org/urbanecmbot/commonsmisc/feedback.py?fetch=deletedUploads (invalid request, no user was given) gives 400 Bad Request (see following example how it will be recorded in the logs)
<IP_ADDRESS> tools.wmflabs.org - [12/Aug/2018:15:13:01 +0200] "GET /urbanecmbot/commonsmisc/feedback.py?fetch=deletedUploads HTTP/1.1" 400 62 "-" "<user agent>"
Last log in error.log (recording raised exceptions not handled in the program, like mysql server down) is from Jun 27 (errors raised by everything residing under tools.wmflabs.org/urbanecmbot), so at least no such error is causing this.
Requests like https://tools.wmflabs.org/urbanecmbot/commonsmisc/feedback.py?user=Ainali varies in time. I've tried on several users:

Ainali: 0m17.461s
Martin Urbanec: 0m0.619s
Jagro: 0m4.632s

I can try to optimalize the queries to not take 17 seconds...
Martin

Thanks so much for your help, @urbanecm ! :) I'll ask the user to try again.


pt_BR override translation not working

Checklist

[x] I am running the latest version. Installing Isso from GitHub from the master branch does not fix my issue
[x] I have checked the troubleshooting guide
[x] I have searched the open issues, but my issue has not already been reported

What is not working?

Overriding translation string for pt_BR (brazilian portuguese) is ignored. This is specific to this language. When I change to en, it works.
How can one reproduce this issue?
It didn't work from the beginning, in an Ubuntu Server 20.04, Python 3.8.10, pip 20.0.2.
My script tag:
<script
  data-isso="https://isso.sol2070.in/"
  src="https://isso.sol2070.in/js/embed.min.js"
  data-isso-lang="pt_BR"
  data-isso-reply-notifications-default-enabled="true"
  data-isso-page-author-hashes="(redacted)"
  data-isso-postbox-text-text-pt_BR="Digite seu comentário. Markdown OK."
></script>

@sol2070 please give https://github.com/posativ/isso/pull/983 a try

Thank you @ix5 ! Sorry, for some reason I did not receive the notification of the reply. Only saw now. I'm not sure how I can try these changes on my installation. Copying config.js and i18n.js?

The docs should help you here: Install Isso from source
In short, for only testing the updated Javascript file: make init and then make js, then drop the generated embed.min.js somewhere on your server or web directory/static files dir, then use that as the <script src="/static/embed.min.js"> instead of pointing to src="https://isso.sol2070.in/js/embed.min.js
You can also grab the updated embed.min.js from the CI run https://github.com/posativ/isso/actions/runs/7587591176 (direct link: https://github.com/posativ/isso/actions/runs/7587591176/artifacts/1181755181 )


Use configuration.getPassword() if available to eliminate password from druid.xml

It is not safe that put a plaintext password in druid.xml, use hadoop Configuration.getPassword instead.
How to use:

use hadoop credential create smart.druid.password -provider jceks://file/${some-path}/smart-site.jceks to create a jecks file.
delete password form druid.xml
add

<property>
        <name>hadoop.security.credential.provider.path</name>
        <value>jceks://file/${path of jceks}/smart-site.jceks</value>
    </property>

in conf/smart-default.xml
4. restart all

reset this pls

Thanks @hddong for your patch. This is an awesome thought. After a quick review, I posted some comments. You can put that property in smart-default.xml and give a description. Hope I am not missing something. Thanks again!

@PHILO-HE thanks for your suggestions, all of them done.

@hddong, thanks for your contribution. This patch basically looks good on hadoop-3.1.0. But I need to verify it further on cdh to see whether there is compatibility issue.

@PHILO-HE I'm glad to hear it worked correct on hadoop-3.1.0. Actully, I have tested only on hadoop-3.1.0.
By the way,  why test always throw java.lang.AssertionError: expected:<COMPRESSION> but was:<NORMAL> , Is there any way to solve it？

@hddong, please ignore that AssertionError. It is related to state unconsistency for compression action. I will fix it. Also, I am doing some tests on hadoop-2.7.3 and CDH hadoop-2.6.0.
Another suggestion: it looks better if getPasswordFromHadoop is moving to SmartConf.java, i.e., thus other classes can directly request password by SmartConf, which makes more sense. Thanks!

@hddong, please ignore that AssertionError. It is related to state inconsistency for compression action. I will fix it. Also, I am doing some tests on hadoop-2.7.3 and CDH hadoop-2.6.0.
Another suggestion: it looks better if getPasswordFromHadoop is moving to SmartConf.java, thus, other classes can directly request password by SmartConf, which makes more sense. Thanks!

Thanks for your check, had move it to SmartConf.java.

The patch has been merged to trunk. Thanks @hddong for your contribution! I will update the relevant doc in some other PR.

@hddong, any other patch is welcome! And if you need, please feel free to discuss this project with me.

@PHILO-HE thanks for your review and suggestions.


[WIP] Homescreen Widget

I found out why the widget would "disconnect" from the app, but i will need to refactor my code

I had to redo most of the parts. But it now works, at least for single lists. I will continue to improve this further


[BUG][Text Analytics]Text Analytics Cilent fail to authenticate with token credential in USGOV and China

We are running live Tests against other clouds like US Gov and Azure China Cloud. The goal is to check whether new azure sdk package work with other clouds or not.
In https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/textanalytics/Azure.AI.TextAnalytics/src/TextAnalyticsClient.cs#L68 as follow.

The scope is hard code as ' https://cognitiveservices.azure.com/.default' leading to only work well in the public cloud.
The value of the scope in different clouds is follow:
Azure public cloud: https://cognitiveservices.azure.com/.default
USGOV cloud: https://cognitiveservices.azure.us/.default
China cloud: https://cognitiveservices.azure.cn/.default
AZURE_AUTHORITY_HOST setting:
USGOV : https://login.microsoftonline.us/
China: https://login.microsoftonline.cn/
@jongio @danieljurek @benbp

We have the same problem in FR https://github.com/Azure/azure-sdk-for-net/issues/17192
@tg-msft do you know if there is a guidance for .NET on how to do this? or how to surface this to our customers?
For sdk tests, I see how some services have the default scope as an env variable that gets configured with the CI, but wonder how the user will know that in case they are in one of those clouds.

FYI @suhas92

@Luyunmt - Can you please give examples of how this is achieved in the sdk with other cloud endpoints?

Storage hardcodes that today so this a better question for @schaabs.  If we're ready to add a common story for this, I think we should maybe stick this on the base ClientOptions or at least have a common TokenAuthenticationOptions type we can expose from any service's *ClientOptions that allow TokenCredential.

@jongio Example in this link https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/textanalytics/Azure.AI.TextAnalytics/tests/DetectLanguageTests.cs#L46 can repro this issue

The client generally should handle which scopes are required to properly authorize the call. Some services (such as storage) use the same scope in all clouds which is why they are able to hard code the scope they use. Other services need to use different scopes in different clouds. In these cases, the client should, if possible, handle this. There are a couple of strategies a client can choose to determine the required scope.
First, if the service returns the required scopes or resource string via an authentication challenge (WWW-Authenticate header) the client should utilize this to determine the scope. Key Vault is an example of this and currently has it's own authentication policy which implements this discovery.
If the no such data is available through an authentication challenge, a service client may be able to determine the targeted cloud and required scope based off the resource endpoint the user specifies. However, this can break down if the service supports custom domain links, or if end users use private links.
We've avoided adding any client configuration for this up to this point as it introduces quite a bit of complexity to the user. The TokenAuthenticationOptions class @tg-msft suggests is very interesting. But we'd need to work out details such as what this means for services which don't support AAD (a shrinking minority. Also, while most azure services only use a singe scope to authenticate all calls, it's possible that different methods might require different scopes, so how would these options apply in that case.

@maririos - Can you see if cognitive returns the scope/resource string in an Auth challenge?
If so, does this work for default domains and resources with custom subdomain?   To use AAD auth with Cognitive services, then the resource needs a custom subdomain, see: https://docs.microsoft.com/en-us/azure/cognitive-services/authentication?tabs=powershell#authenticate-with-azure-active-directory. For other services, a key is required and we therefore shouldn't have to worry about scope in other clouds.
@tg-msft - Are you comfortable with the following while @johanste fleshes out cloud environment design?

Ask user to set scope in TokenCredentialContext
Update TA and FR clients to honor the scope if set.

@johanste - Where are we with a design for cloud environment?

@schaabs - I'd think we'd only put TokenAuthenticationOptions on derived classes like SearchClientOptions if:

they supported AAD,
varied scopes across clouds, and
didn't provide an API to discover the right scope.

It'd unblock things today and ideally we'd [EditorBrowsable(Never)] them over time as they added automagic discovery.  We could try guessing defaults based on endpoints as well with this being an override for situations where we get it wrong.
@jongio - I'm in favor of enabling something for forward progress here.  I think @schaabs will have the best idea how to do that with the least long term debt and I'll get behind his plan.

@maririos - How do you recommend we proceed with this?

@jongio - Working on this.

OK, I will do a PR for this issue.

We are holding on fixing this until the ACR design is complete. #21603 (comment)

Hi, @benbp , @maririos!
We have updated the code, this issue has been fixed with sovereign cloud test PR.
But there is a test named RecognizeHealthcareEntitiesBatchWithCancellation  was not stable.
The pipeline run result is at here. Could you help to see this problem, any thoughts of it?

There is a known issue with that test => https://github.com/Azure/azure-sdk-for-net/issues/24052
We haven't had the time to look into it in order to fix it though

@nisha-bhatia , @maririos - Do you have any progress or plans to fix this issue?

This bug fix will go out in the next release.


Do I need to check message_type

Describe the feature
Do I need to check message_type?
{"message_type": "next", "model_slug": "text-davinci-002-render-sha"}

When the data is "prompt" too much, it will return the user's 'prompt' !

message_type is an internal implementation detail in the unofficial chatgpt webapp's api. you can safely ignore it.
I strongly recommend switching to the official chatgpt api via ChatGPTAPI. the unofficial api will not be supported for much longer going forwards.


Creating Bridge Fails is Route Table has RFC1918 'unreachable'

Platform: CentOS 6 x64
Installed docker but it won't start:
[debug] driver.go:254 <IP_ADDRESS>/16 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/16 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/16 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/16 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network
[debug] driver.go:254 <IP_ADDRESS>/24 requested network overlaps with existing network

This appears to be because I have all RFC1918 addresses in my route table as "unreachable":
# ip r s
unreachable <IP_ADDRESS>/16  metric 999
unreachable <IP_ADDRESS>/12  metric 999
unreachable <IP_ADDRESS>/8  metric 999

Deleting the route for <IP_ADDRESS>/12 allows docker to start correctly:
 ~ # ip r d <IP_ADDRESS>/12
 ~ # /etc/init.d/docker start
Starting docker:	                                   [  OK  ]
 ~ # ps -ef | grep docker
root      1199     1  8 12:57 pts/0    00:00:00 /usr/bin/docker -d -e lxc
root      1262  1052  0 12:57 pts/0    00:00:00 grep docker

closing as duplicate of https://github.com/docker/docker/issues/10307 and you can express your concerns there


[BUG] Replica hang without progress sometimes

Describe the bug
In v1.0.2, sometimes the replica hangs when attaching the volume. It seems the replica instance manager is locked up.
Probably a duplicate of https://github.com/longhorn/longhorn/issues/1599 but need to confirm.
To Reproduce
Unknown. Seems related to the node reboot.
Expected behavior
The volume should be attached.
Log
Not available for now.
Environment:

Longhorn version: v1.0.2
Kubernetes version: unknown
Node OS type and version: unknown.

Additional context
Screenshot

Lab Cluster logs: longhorn-support-bundle_7a2e9979-e897-11e9-9dbd-005056a259f5_2020-11-12T15-14-48Z.zip
Also, it looks like /var/lib/longhorn wasn't formatted from the node in question. So /var/lib/longhorn was returning I/O errors. After fixing the filesystem, I recycled the stuck manager but the node required a reboot to fully resolve.

The symptom/log in the support bundle is exactly the same as the #1599. It's a duplicate issue.
2020-11-12T04:42:58.371931295Z time="2020-11-12T04:42:58Z" level=debug msg="Instance handler updated instance pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123 state, old state , new state stopped"
2020-11-12T04:44:02.177921224Z time="2020-11-12T04:44:02Z" level=debug msg="Prepare to create instance pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123"
2020-11-12T04:47:02.177986152Z E1112 04:47:02.177683       1 replica_controller.go:177] fail to sync replica for longhorn-system/pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123: failed to start process: rpc error: code = DeadlineExceeded desc = context deadline exceeded
2020-11-12T04:47:02.178220598Z time="2020-11-12T04:47:02Z" level=warning msg="Dropping Longhorn replica longhorn-system/pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123 out of the queue: fail to sync replica for longhorn-system/pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123: failed to start process: rpc error: code = DeadlineExceeded desc = context deadline exceeded"
2020-11-12T04:47:02.178250372Z time="2020-11-12T04:47:02Z" level=info msg="Event(v1.ObjectReference{Kind:\"Replica\", Namespace:\"longhorn-system\", Name:\"pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123\", UID:\"f8ce2870-29a8-49cd-a393-34b202951ef5\", APIVersion:\"longhorn.io/v1beta1\", ResourceVersion:\"147933831\", FieldPath:\"\"}): type: 'Warning' reason: 'FailedStarting' Error starting pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123: failed to start process: rpc error: code = DeadlineExceeded desc = context deadline exceeded"
2020-11-12T04:47:55.756082520Z time="2020-11-12T04:47:55Z" level=error msg="failed to poll instance info to update instance manager instance-manager-r-c509f7c2: failed to list processes: rpc error: code = DeadlineExceeded desc = context deadline exceeded"

2020-11-12T04:37:55.318553032Z time="2020-11-12T04:37:55Z" level=info msg="Storing process logs at path: /var/log/instances"
2020-11-12T04:37:55.326037110Z [longhorn-instance-manager] time="2020-11-12T04:37:55Z" level=info msg="Instance Manager listening to <IP_ADDRESS>:8500"
2020-11-12T04:37:55.759616671Z [longhorn-instance-manager] time="2020-11-12T04:37:55Z" level=debug msg="started new process manager update watch"
2020-11-12T04:44:02.188091613Z [longhorn-instance-manager] time="2020-11-12T04:44:02Z" level=info msg="Process Manager: prepare to create process pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123"
2020-11-12T04:44:02.188143278Z [longhorn-instance-manager] time="2020-11-12T04:44:02Z" level=info msg="Process Manager: created process pvc-a4c25c79-f336-404d-96b8-66ae27ef3573-r-ef6ff123"

Thanks @shuo-wu .
Close as a duplicate of #1599, which will be fixed in v1.1.0.


How do i use this with vue

Can you please make a vue demo

@patrickoramah would you like to take a stab at contributing one, and post any issues you have here? I think it's a great idea to add Vue implementation instructions, but this is a volunteer-run project.

Hey @patrickoramah I was able to get this to work by using the docs here and adding this to your main.js file (assuming you are using the vue cli generator and add axios). I haven't tested it extensively, but it's working so far.
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue';
import axios from 'axios';
import App from './App';
import router from './router';

Vue.config.productionTip = false;

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  template: '<App/>',
  components: { App },

  created() {
    axios.interceptors.request.use((config) => {
      config.headers.client = window.localStorage.getItem('client');
      config.headers['access-token'] = window.localStorage.getItem('access-token');
      config.headers.uid = window.localStorage.getItem('uid');
      config.headers['token-type'] = window.localStorage.getItem('token-type');

      return config;
    });

    axios.interceptors.response.use((response) => {
      if (response.headers.client) {
        localStorage.setItem('access-token', response.headers['access-token']);
        localStorage.setItem('client', response.headers.client);
        localStorage.setItem('uid', response.headers.uid);
        localStorage.setItem('token-type', response.headers['token-type']);
      }
    });
  },
});

@zachfeldman I'd like to take stab at this. What would be most useful? Something like a text walkthrough or clonable repo? I'm still really new at Vue so I doubt it would be perfect, but maybe it would save someone some time.

@nicholasshirley this is very exciting!
It would be REALLY COOL if we could get a clonable repo that's an implementation of Devise Token Auth for Vue users. We can definitely add this to the docs here too as another implementation when that's said and done.
Totally cool if it's not perfect but a workable start would be great. Would love to wrap our hands around the Vue community as well.

Hey @zachfeldman I pushed up a test repo with this. There's still some more to do, but I'm hitting some errors (#1002) that I'd like to try to resolve before adding the rest of the items on the to-do list.

Awesome! Let's try to get through #1002 ....

Ok, the sample hits all the routes except for forgot password and there's an issue with logging out (axios doesn't pass headers on delete).
Before I finish the forgot password flow, I have a bit of a theoretical question and a practical one. In the past when I have used devise_token_auth with React, I overrode the passwords controller (and registrations controller) to get rid of the redirect logic. When the API is separate from the front end, I don't like sending the user to a different URL (though I guess I could send them to the front end, have axios make a GET request behind the scenes with a redirect url that goes nowhere, but I haven't tried that). What is the logic behind a token auth system taking redirect links? Are most people using them or have they done something similar with their controllers?
As a practical question, is it a better demonstration to figure out some way to deploy with Vue that keeps all the controllers stock or should I assume that most people will want to handle everything through Vue Router and override the redirects?

I've overridden a lot of the default controllers with my React application so I don't think that it's too bad to do that :). Yeah I agree redirects aren't an awesome solution for an API-based solution like this....

I've got the following working with vue -

Signup
Login
confirmation emails
Route guards & token verification
Forgot password
reset password

Thanks @nicholasshirley  for the pointers, I used your repo to start. My setup was slightly more challenging, as we don't use action mailer for email templates. We use VeroApp for managing email templates and email delivery.  I will create a demo and write 1 or more blog posts when i have more time. 😄

@saurabhbatia eagerly waiting for your blog post, as I am currently in the exact same spot considering a transition to devise token auth with a rails backend and starting out with vue2 + vuex to move to a rails api only setup :)

For people still having struggle with using devise token auth with Vue, this lib helps a lot: https://github.com/websanova/vue-auth

Would a example project on README be a good PR?

+1 for a Vue example

Hi @gabrielsclimaco do you have a demo using vue-auth? I cant get it to work


[BUG] Imported static assets missing in Oxygen and local preview

Describe the bug
Importing static assets like the simplified example below works during development, but breaks when previewing locally or deploying to Oxygen.
import Logo from '~/assets/images/logo-australia-made.svg'

<img src={Logo} width="55" height="48" />

The import does return the resolved public URL of the static asset, but the asset is missing from the dist directory, so the URL returns 404.
We're experiencing this with multiple assets in our project, but not all of them.
It doesn't seem related to where the asset is imported (ie. server component, client component, etc).
To Reproduce
https://github.com/typeandpixel/demo-store-2

Clone the above repository
Checkout the issue/import-svg branch
Run development
Notice the working image at the top
Run preview
Notice the broken image at the top

For reference, the relevant code for this example is Layout.server.tsx.
Expected behaviour
Imported static assets should work when previewing locally and deploying to Oxygen, like they do during development.
Screenshots

Hydrogen version 1.5.0 and 1.6.0
Node version 16.18.0
Device details Linux Manjaro Sikaris 22.0.0

Hi! You're importing a static asset into a server component, but you can only import them in client components, as outlined in our docs: https://shopify.dev/custom-storefronts/hydrogen/framework/static-assets#considerations-and-limitations
By design, server components do not introduce any assets into the client bundle, including JS and images.


Adds  AM 1.0.2 support

Description
This PR adds support for AM v1.0.2

AM v1.0.2 is not released yet. This PR is assuming yamls needed for v1.0.0 and v1.0.2 are mostly the same. If not, will open another PR

GitHub Issues
List the GitHub issues impacted by this PR:

GitHub Issue #

https://github.com/dell/csm/issues/1164

Checklist:

[ ] I have performed a self-review of my own code to ensure there are no formatting, vetting, linting, or security issues
[ ] I have verified that new and existing unit tests pass locally with my changes
[ ] I have not allowed coverage numbers to degenerate
[ ] I have maintained at least 90% code coverage
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have maintained backward compatibility

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Please also list any relevant details for your test configuration

[x] Ran unit tests
[x] Installed AM CR with config version v1.0.2

Wrong target branch


Don't get proper response from setting temperature.

This error originated from a custom integration.
Logger: bosch_thermostat_client.circuits.easycontrol.base
Source: custom_components/bosch/climate.py:116
Integration: Bosch thermostat (documentation, issues)
First occurred: 27 November 2022 at 20:54:06 (6 occurrences)
Last logged: 09:20:06
Don't get proper response from setting temperature.

Open new issue and fill it with template. I don't have enough information here.


Pulldown menu: mouse selection fails for lower items

In the PVLV model, the "Grain" menu fails to enter the selection, if you try to select anything lower on the menu than "AlphaCycle". I suspect this may be related to the fact that the menu overlies the NetView, but changing the parent widget when creating the menu so far has not helped. It is possible to select by using the up and down cursor keys, followed by Enter.

fixed in gogi.  new mod versions forthcoming.


Need an easy way to navigate to parent folder in Explorer

If Explorer showed the .. (parent directory) in its file listing, and if clicking on said .. could navigate me one level up in the directory hierarchy, that would improve usability considerably. The current workaround is using "File" > "Open folder..." from the app menu, but it would be more efficient to move around "locally" while the mouse pointer is in Explorer. Thank you.

It isn't clicking on a button but you could make a keybinding like
{
  "key": "alt+p",
  "command": "list.focusParent",
  "when": "filesExplorerFocus"
}

to sequentially focus the parent.  It won't go to the parent but will focus it.  Perhaps this would be useful as a wrokaround in the meantime.

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


Getting { error: 'Not logged in.' }

This error occurs when I try use changeThreadEmoji(), changeNickname() and changeThreadColor(). The functions do not work and just return an object saying { error: 'Not logged in.' }

Check out #531 and #536

@knyzorg thanks for the advice. I can see that we are having some issues with some people not being able to log in with the code from #536. I would just like to confirm that I am having no issues with using the code from #536, and I would advise others to use it unless it causes problems.


T0 times are not consistent with the time axis in the figures for interact_bls

There are two separate issues I noticed with T0 times. One is that the T0 times seem to be relative to the start of the data set, rather than the time axis shown in the figure.
The second is that when I changed the bls resolution the T0 times changed a lot, but the period and times of the transit in the figure didn't change.
See figures below

Thanks @mrtommyb!  We must look into this.

@christinahedges Can you have a look?

@mrtommyb pointed out that the two issues he reported may still be there:

T0 is a time that is outside the range of the data (cf. in his first screenshot T0=1.3 but the light curve starts near T=1355).
When the BLS resolution changes, T0 hops around in an inconsistent way (i.e. not a multiple of the period).

T0 is a time that is outside the range of the data (cf. in his first screenshot T0=1.3 but the light curve starts near T=1355).

T0 doesn't have to be within the range of times, it's just a midpoint for the start of the periodicity. astropy BLS does not give a T0 within the specified times by default. Is there a reason for it to be within these times? I can change it to be within the times, if there is a reason?

When the BLS resolution changes, T0 hops around in an inconsistent way (i.e. not a multiple of the period)

The resolution is not fine enough to get a good T0 measurement.

You aren't quite hitting the right t0 when the resolution is too coarse. If you zoom in on one of those peaks, the t0 value should stabilize. Setting an appropriate duration also helps.

I will look into this again tomorrow.


fix method equals of SQLExprUtils and SQLIdentifierExpr

see #5595

Codecov Report

Merging #5596 (2939a3b) into master (c9c32ba) will decrease coverage by 0.02%.
The diff coverage is 20.00%.

Additional details and impacted files

@@             Coverage Diff              @@
##             master    #5596      +/-   ##
============================================
- Coverage     58.71%   58.70%   -0.02%
+ Complexity    27640    27638       -2
============================================
  Files          1323     1323
  Lines        127097   127098       +1
  Branches      23928    23927       -1
============================================
- Hits          74623    74610      -13
- Misses        43202    43217      +15
+ Partials       9272     9271       -1

Files
Coverage Δ

...om/alibaba/druid/sql/ast/expr/SQLBinaryOpExpr.java
44.93% <100.00%> (-0.15%)
:arrow_down:

...a/com/alibaba/druid/sql/ast/expr/SQLExprUtils.java
30.66% <0.00%> (-0.85%)
:arrow_down:

.../alibaba/druid/sql/ast/expr/SQLIdentifierExpr.java
73.91% <0.00%> (-1.31%)
:arrow_down:

... and 5 files with indirect coverage changes

Continue to review full report in Codecov by Sentry.

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


The -K and -A flags are deprecated

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#adding-your-ssh-key-to-the-ssh-agent
What changes are you suggesting?
Updating the usage of the -K flag, replacing it with --apple-use-keychain
Additional information
No response

@kristofferlund Thanks for opening an issue and linking it to your PR! ✨

Closed via PR comment


Bumps dcos-net to include fix for IP recycle

This bump fixes the issue wherein if a new agent re-uses the agent ip
of some old discontinued agent then it is able to join the cluster
Corresponding DC/OS tickets (obligatory)
These DC/OS JIRA ticket(s) must be updated (ideally closed) in the moment this PR lands:

DCOS_OSS-2421 Support recycling IP agent IP addresses without navstar running into issues

Checklist for all PRs

[x] Added a comprehensible changelog entry to CHANGES.md or explain why this is not a user-facing change:
[x] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review):
https://github.com/dcos/dcos-net/compare/4818716aa9d102958a50a67d79a6db2eafd6680c...2dcd3bf655fc6d382d16a418ec82699b5bae8446
https://github.com/dcos/lashup/compare/bed14d737e290ed92cf3bdaa4b73596c85f5bdd8...ad18f9c2fd25af847620681c903734783bad9a52
[ ] Test Results: [link to CI job test results for component]
[x] Code Coverage: https://codecov.io/gh/dcos/dcos-net/pull/54?src=pr&el=continue

PLEASE FILL IN THE TEMPLATE ABOVE / DO NOT REMOVE ANY SECTIONS ABOVE THIS LINE
Instructions and review process
What is the review process and when will my changes land?
All PRs require 2 approvals using GitHub's pull request reviews.
Reviewers should be:

Developers who understand the code being modified.
Developers responsible for code that interacts with or depends on the code being modified.

It is best to proactively ask for 2 reviews by @mentioning the candidate reviewers in the PR comments area. The responsibility is on the developer submitting the PR to follow-up with reviewers and make sure a PR is reviewed in a timely manner. Once a PR has 2 ship-it's, no red reviews, and all tests are green it will be included in the next train.

This repo has @mesosphere-mergebot integration. You can interact with the following commands.
@mesosphere-mergebot merge-it
@mesosphere-mergebot label [Holding |Ready For Review |Ship It |Work In Progress |Request For Comment]
@mesosphere-mergebot bump-ee
@mesosphere-mergebot override-status

PR creators can apply one of  [Ready For Review |Work In Progress]. Owners can apply any label.

@mesosphere-mergebot bump-ee

@mesosphere-mergebot Ready For Review

@vespian request for review


enable Travis CI, base test "does dojo run"

The vere download chain is somewhat fragile, but this seems reasonable to merge ASAP, since any  breakage is going to be confined to false-positive red PR checkmarks

Updated description to be less "WIP", requesting review and/or merge

The gen/solid.hoon code could use some more comments, but let's fix that post-breach. It's worth it to get this merged now.


added config get-context command and description in set-context #3

added config get-context command and description in set-context

i skipped the test as per the custom :), but i want to write the tests first

LGTM, thanks a lot for all your efforts, @SiddiqueAhmad! Same comments as on the other PRs re emoji and updating the example output in README and the completion script.
Great point re testing, I'd also like to get started with adding some tests. Perhaps it's something you could explore a bit, e.g. does PicoCLI say something about testing in their docs? We may want to spin up a Kafka + Kafka Connect via Testcontainers for some integration tests, too. Best would be to log a separate issue and collect any insights there.

there is no change in example output for this, as get context is sub command and will track bash completion in #37

@gunnarmorling @SiddiqueAhmad I would love to help with integration tests via testcontainers, did you start any work in that regard?

@karim-elngr thanks for your kind help, lets write those first and than we should merge it, what you say @gunnarmorling ?

Thanks a lot for your offer to help with testing, @karim-elngr!
Agreed that it's not as per clean code approach to have no tests yet, but IMO we can still apply this PR already and think about testing more holistically separately. This will require some more exploration. I've logged #44 for discussing this; if either of you wanted to give this a try, that'd be more than welcome.
In the meantime, I think we can move forward with this PR as-is. Thanks for it, @SiddiqueAhmad!

sure we will follow it separately

Squashed and applied. Thanks all!

thanks we owe a lot to debezium so it's just start


Implement multidimensional initial guess and bounds for curvefit

[x] Closes #7768
[x] Tests added
[x] User visible changes (including notable bug fixes) are documented in whats-new.rst

With this PR, it's possible to pass an initial guess to curvefit that is a DataArray, which will be broadcast to the data dimensions. This way, the initial guess can vary with the data coordinates.
I also added examples of using curvefit to the documentation, both a basic example and one with the multidimensional guess.
I have a couple of questions:

Should we change the signature to p0: dict[str, float | DataArray] | None, instead of dict[str, Any] (and same for bounds)? scipy only optimizes over scalars, so I think it would be safe to assume that the values should either be those, or arrays that can be broadcast.
The usage example of curvefit is only in the docstring for DataArray, so now the docs differ between DA and dataset. But the example uses a DataArray only, so this should be ok, right?

Hm the doctest failed because the result is off by the last decimal place. I can't reproduce it, even though I have the same versions of numpy 1.23.5 and scipy 1.10.1 in my env as what the CI says. Anyway, changed it in 3001eaf.

I just noticed that the docs for curvefit have some formatting issues, I think it's using single backticks instead of double backticks for code formatting. Should I add those to this PR as well?

This looks pretty good to me on first glance! I would vote to do p0 and bounds in one PR. It could surprise a user if one of these can take an array and the other only scalars.

I implemented the broadcasting for bounds also. I hope it's not too ugly. Do you think the signature for p0 and bounds should be updated to explicitly allow only (tuples of) floats or DataArrays?

I updated the type hints now.

Thanks @mgunyho !


Logic for lower right room

Turn 45, reach the middle, turn 90 right, turn 180 left, and then rotate 45 right, and go straight down to the lower maze wall

Don't forget to add the variables lateralMove and diagonalMove to the top of the main code; these are referenced in the lower right room function


Cannot create a read from replicas pipeline.

https://github.com/Grokzen/redis-py-cluster/blob/master/rediscluster/pipeline.py#L197
This should pick up the: self.read_from_replicas
Also, when we create the pipeline, we should be able to set read_from_replicas it from:
https://github.com/Grokzen/redis-py-cluster/blob/master/rediscluster/client.py#L445-L464
Why we need it?
We often need to read multiple keys(randomly from different nodes), the redis CPU load will be significantly different(60%) when using pipeline vs mget(a get loop in cluster).
But due to the above bug, we could not use pipeline to read from replicas.

Good catch @duke-cliff Yes i am aware that pipelines do not support read from replicas today and that is something i want to sort out and fix for 3.0.0 later on. There is even two different readonly/read_from_replica connection pools that are buggy themself that needs to be sorted out. Pipelines in general is often a lower priority to sort out then the main code path through the client. Also note that the logic handling would grow in complexity a fair bit to properly route commands in several new situations.
Just as an example, if we have 1 master and two replicas per master node. If we want to have readonly mode enabled and the slave node is down, should we route to the master node or the other slave node for reads? Also based on what command you are running you would get different logics like SET style commands must be routed to a master where GET like command that can be offloaded to a pipeline can be routed differently, and you need to track this with MOVED and other cluster specific errors where commands needs to be rerouted for some reason.

Yes, I understand the complexity.
To me, the readonly does not mean replicas only, it should route read to all master/replicas. You can find a similar logic in go-redis which supports the cluster mode as well:
https://github.com/go-redis/redis/blob/b965d69fc9defa439a46d8178b60fc1d44f8fe29/cluster.go#L584
In terms of how the pipeline should decide which node to use.
If you want to do something simple, I think we can imply if the pipeline contains any write cmds, it will go to masters only.
This can even be set by caller as I suggested above to give a parameter in cluster.pipeline(readonly=True)
If you want something smarter you can also read the redis-go logic, it completely routes cmds based on if it's read-only cmd or not.
https://github.com/go-redis/redis/blob/eb28cb64264d03218e5aa8f35eb66a4e4c4ba60b/cluster.go#L1124

Hi @Grokzen, I work with @duke-cliff . We're wondering if you would accept a patch in the form of
diff --git a/rediscluster/client.py b/rediscluster/client.py
index cb8f59d..413a797 100644
--- a/rediscluster/client.py
+++ b/rediscluster/client.py
@@ -442,7 +442,7 @@ class RedisCluster(Redis):
         """
         return ClusterPubSub(self.connection_pool, **kwargs)

-    def pipeline(self, transaction=None, shard_hint=None):
+    def pipeline(self, transaction=None, shard_hint=None, read_from_replicas=False):
         """
         Cluster impl:
             Pipelines do not work in cluster mode the same way they do in normal mode.
@@ -461,6 +461,7 @@ class RedisCluster(Redis):
             result_callbacks=self.result_callbacks,
             response_callbacks=self.response_callbacks,
             cluster_down_retry_attempts=self.cluster_down_retry_attempts,
+            read_from_replicas=read_from_replicas,
         )

     def transaction(self, *args, **kwargs):
diff --git a/rediscluster/pipeline.py b/rediscluster/pipeline.py
index 1b7065f..4d2272e 100644
--- a/rediscluster/pipeline.py
+++ b/rediscluster/pipeline.py
@@ -194,7 +194,7 @@ class ClusterPipeline(RedisCluster):
             # refer to our internal node -> slot table that tells us where a given
             # command should route to.
             slot = self._determine_slot(*c.args)
-            node = self.connection_pool.get_node_by_slot(slot)
+            node = self.connection_pool.get_node_by_slot(slot, self.read_from_replicas)

             # little hack to make sure the node name is populated. probably could clean this up.
             self.connection_pool.nodes.set_node_name(node)

or would you be willing to collaborate on a PR that started with that as the basis? I'm a little unclear on the politeness of me just opening a PR against your repo but perhaps that was the more straightforward approach; thought I'd ask first.

Noticed that https://github.com/Grokzen/redis-py-cluster/pull/402 was created for this. Is there any way we could help make this happen?
We'd love to have the ability to send read commands to replicas within pipelines.

@FranGM Check out #406 it was the second attempt by duke to implement his but i am not super happy with the approach to go back to gevent for doing the parallel parts. We used to have gevent back in the day before 72squared figured out a much cleaner and simpler approach to it that do not really require gevent.
That PR right now has that issue, it is also doing some major rework in the pipeline code and it is almost to much to change in one PR and i am not really sure about all the changes as i did not develop the current version of the pipeline code so i am not really into the current status of the code.
So if you want to help with something, either look at that PR and possibly scale the changes back if that is even possible and maybe base a new set of work that does more minimal intervention to add this feature and that will highly increase the chances of this being added more quickly.

Thanks, that's a very clear explanation. I'll try to provide a simpler patch and then we can go from there!

@Grokzen I went ahead and created https://github.com/Grokzen/redis-py-cluster/pull/450 with the simplest implementation I could come up with that still seems to work as advertised. Let me know if that's something along the lines of what you would be happy with!
Side-question: do you have any rough timeline for 3.0.0? We'd definitely like to see if we can help with more optimizations but don't really want to pester you about code you're heavily rewriting.

@duke-cliff Note that even with this PR #450 merged now, there is still work to be done as the other suggested PR submitted has many more changes and fixes in it that can still be useful. The merged PR just fixes it in the short term and users should be aware that it can break and cause inconsistencies during hashslot migrations and failover scenarios, but that is right now something the user has to consider and ensure their code works with this.
I will keep this issue open until we sort out your PR @duke-cliff but for anyone else who finds this issues and sees it being open, part of the problem has been fixed and merged and shipped in 2.1.3 release, but be aware to use the stopgap solution with care and consideration that it can still be buggy.

@Grokzen wondering when you had planned to release 2.1.3? We have a release for our service coming out which I'd love to include 2.1.3 instead of 2.1.2 if at all possible

@FranGM Oh lol, i prepared the release with changelog and all and thought i pushed the build files out to pypi -_-  but aparently i forgot about that last step...i will do it right now sorry for that :)


Mimic Select element

Depends on

https://github.com/moroshko/react-autowhatever/pull/10
https://github.com/moroshko/section-iterator/pull/2

TODO

[ ] Confirm the correct aria attributes.
[ ] Document how to create a valid renderInput function.

Changes:
Added following props
renderInput: PropTypes.func // custom function to render input element passed to react-autowhatever
blurOnSuggestionSelect: PropTypes.bool.isRequired, // should the input always be blured when a suggestion is selected
wrapItemFocus: PropTypes.bool,  // option passed through to section-iterator

Changed valueBeforeUpDown from string to string or object.
If props.blurOnSuggestionSelect is set, then the input element is blurred when the user presses Enter or Escape.
Please see demo/src/components/App/components/Examples/components/Select

@andysprout you should add couple of GIFs how it looks on out project, its awesome =)

thanks @nkbt I built the gh-pages so now you can see the working demo at http://packetloop.github.io/react-autosuggest/

Closing as out of scope. See this and this.


Install Shell Commands is throwing an exception

Build from master (6495f1a5314320cbc6d9a5936aab24e507e2d21d).
Open Atom.
Click Atom main menu, followed by Install Shell Commands.

Atom Version: 1.2.0-dev-6495f1a
System: Mac OS X 10.11
Thrown From: Atom Core
Stack Trace
Uncaught TypeError: Cannot read property 'confirm' of undefined
At /Applications/Atom.app/Contents/Resources/app.asar/src/command-installer.js:78

TypeError: Cannot read property 'confirm' of undefined
    at /Applications/Atom.app/Contents/Resources/app.asar/src/command-installer.js:78:48
    at /Applications/Atom.app/Contents/Resources/app.asar/src/command-installer.js:111:11
    at FSReqWrap.oncomplete (fs.js:82:15)

Commands
     -0:33.5.0 window:toggle-dev-tools (atom-pane.pane.active)
     -0:00.7.0 window:install-shell-commands (atom-pane.pane.active)

Config
{
  "core": {
    "disabledPackages": [
      "background-tips",
      "feedback",
      "metrics",
      "welcome"
    ],
    "projectHome": "/Users/thomasjo/Code"
  },
  "editor": {
    "fontFamily": "Hack, Fira Mono, Menlo",
    "lineHeight": 1.6,
    "showInvisibles": true,
    "showIndentGuide": true,
    "softWrapAtPreferredLineLength": true,
    "scrollPastEnd": true,
    "softWrapHangingIndent": 2,
    "invisibles": {
      "tab": "⇥"
    },
    "fontSize": 12
  }
}

Installed Packages
# User
language-cuda, v0.1.0
language-latex, v0.6.1
latex, v0.26.0

# Dev
language-cuda, v0.1.0
latex, v0.26.0

/cc @nathansobo @maxbrunsfeld

Thanks @thomasjo. Sorry everyone building from master last night. I suppose a few regressions were to be expected with this big a change. Perhaps waiting until Monday morning would have been better.

:sparkles: thanks @thomasjo!


Unable to open a file in a egg file

Environment data

Language Server version: 0.4.71
OS and version: CentOs 7
Python version (& distribution if applicable, e.g. Anaconda): 2.7.14 64-bit

Expected behaviour
Get the Go To Definition working with egg files
Actual behaviour
If I use the Go To Definition function with a module that it is inside an egg file, I'm getting the following error:
Unable to open 'test.py': Unable to read file (Unknown (FileSystemError): Error: ENOTDIR: not a directory, stat '/home/users/alberto/testEnv/testPackage-py2.7.egg/myProject/foo/test.py').
I can import that file without problems within a Python Terminal by:
from myProject.foo import test
If you need more info, please, let me know! :)
Thanks!

Does completion/documentation/etc work with the info that comes out of the module, or do you only have an issue when you try to goto definition?
Where does this error show, in the logs or as a UI element in VS Code?

Does completion/documentation/etc work with the info that comes out of the module, or do you only have an issue when you try to goto definition?

I've double checked, and any of those elements works.

Where does this error show, in the logs or as a UI element in VS Code?

A notification in the VsCode's lower right edge is appearing, just like a normal VSCode Notification :)

Right, so this is more of a VS Code thing than a language server thing. We correctly handle the egg files by analyzing their contents, but since they're not "real files", when we return the path to the file internal to the egg, VS Code doesn't know what to do with it because it doesn't look into egg files.
I'm not sure if there's a way to make the editor able to open these files, but we could at least recognize that a file is within an egg/zip and not offer a location for it to prevent the editor from trying and failing.

We could probably unzip file into temp before returning reference URI. Could then delete it when didClose comes.

That might cause other issues, because it's a file with a different location, which we'd then start to analyze (and it would exist in the wrong place and start getting import resolution problems).

Should I create this ticket in the VSCode Python extension repo then?

It is not an extension issue it is that VS Code itself is not drilling into egg/zip files for content. You can open ticket there I guess.

Sweet! Thanks guys, and sorry for the sound made here! :)

Just to shorten this link chain if anyone finds this issue: microsoft/vscode#75559


Fish and Chips

Player of my SMP noticed that Fish and Chips works exactly like vanilla cookie, reducing hunger by 1 hunger bar and not as specified in nutrition book

Hi, terribly sorry for the very long silence
months later and I've just published a fix for the 1.20 version that fixes this (4.1.7)


Escape special characters in Jupyter circuit diagram

This PR fixes #3196 by using the html module for escaping characters when the circuit diagram is produced. The escaping allows easy and correct rendering of the diagram when it is used as a cell output of a Jupyter Notebook instead of using print(circuit).
Previsouly, the special characters like < > were not being rendered after the circuit was flattened as they were being interpreted as part of HTML tags. Using html.escape( ) in circuit._repr_html(self) prevents that from happening.

Hey @cduck, please have a look at commit c4e7292. Managed to pass the formatting test by 513cc4f but the test is written in the former.


Remove PDQ from MS sites

Removes PDQ from MS sites

Do you want to change the PHQ8 to 42 days too?
Also when these changes are completed and on merged we should log this here https://radar-base.atlassian.net/wiki/spaces/RAD/pages/424607745/RADAR-CNS+Significant+Events+Tracker


Can't create multisig in the testnet

Describe the bug
Can't create multisig in the testnet on dev branch.
To Reproduce
Steps to reproduce the behavior:

Click on Create multisig vault in the testnet
Choose signer 1 and signer 2
Click on Confirm
See error

Desktop (please complete the following information):

OS: MacOS 12.7
Browser: FF, Chrome

Additional context
Reproducible in testnet on dev branch.

Reproducible on the latest dev branch, commit 9f963ea.

Reproducible on the latest dev branch:

In general it's working.
But sometimes I was not able to create vault especially in FF extension because of bad data fetching - I saw balances from mainnet in the testnet which is not correct.