Does not seem to work?

Maybe I am doing something wrong.. but I've tried BT under PS x64, and PS x86, and even in basic mode, I run a simple test after importing the module (both PS versions):
New-BurntToastNotification -Text 'Burnt Toast Test'
And nothing seems to happen..  The help MD documents are fairly empty, so I'm kind of at a loss.
Just in case, here is my $PSVersionTable
Name                           Value
----                           -----
PSVersion                      5.1.14393.693
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14393.693
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Poking around, I also saw that you could possibly add multiple lines, but the parameters don't seem to say that..
I appreciate any help :-)
Thank you,
David F.

Hi there David, thanks for the report! Yeah, sorry about the lack of MD documentation, it's very much a work in progress.
With regards to the multiple lines, the 'Text' parameter accepts an array, so you can provide multiple strings separated by a comma:
New-BurntToastNotification -Text 'Burnt Toast Test', 'Second line of text'

Would you mind answering a few questions to help narrow the issue?

Which version of BurntToast are you using?
Which host are you using? ('Windows PowerShell'/CMD, the ISE, VS Code, PowerShell Studio)
Is your PowerShell instance running as 'you'? (i.e. it wasn't started using 'Run as another user')

Look forward to hearing from you again, and seeing if we can sort this out!
~Josh

Thank you for answering :-)
I just downloaded it.. it is the .5.1 versoin.
I was running it straight from PS 5.1 on Windows 10 (1607).  I tried both
the x64 PS and then I tried the x86 PS.
I did try it as myself, and as my Admin account.. (I am always logged in as
my normal user, but I also also have a CMD & PS shell session open as my
Domain Admin account for my "real" work).
If there is anything I can do to help on the documentation side, I'd be
glad to help.. I've been writing a lot of functions for things at work, and
to me, the docs and the command line help for PS are critical.  :-)
I will download it to my home machine and play with it more tonight.
Thank you!
David F.
On Fri, Feb 17, 2017 at 11:37 PM, Joshua King<EMAIL_ADDRESS>wrote:

Hi there David, thanks for the report! Yeah, sorry about the lack of MD
documentation, it's very much a work in progress.
With regards to the multiple lines, the 'Text' parameter accepts an array,
so you can provide multiple strings separated by a comma:
New-BurntToastNotification -Text 'Burnt Toast Test', 'Second line of text'
Would you mind answering a few questions to help narrow the issue?

Which version of BurntToast are you using?
Which host are you using? ('Windows PowerShell'/CMD, the ISE, VS
Code, PowerShell Studio)
Is your PowerShell instance running as 'you'? (i.e. it wasn't
started using 'Run as another user')

Look forward to hearing from you again, and seeing if we can sort this out!
~Josh
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Windos/BurntToast/issues/11#issuecomment-280823855,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB8n7xhY_FhnfN9quomYMMpbyCNYhYxKks5rdoOtgaJpZM4MESqX
.

Hey David, I just published a new version. Would you mind giving it another shot?

I definitely will.. thank you! and I apologize for the delay... been a bit
busy :-)
I'll email again as soon as I try it out..
David F.
On Fri, Apr 28, 2017 at 3:50 AM, Joshua King<EMAIL_ADDRESS>wrote:

Hey David, I just published a new version. Would you mind giving it
another shot?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Windos/BurntToast/issues/11#issuecomment-297944349,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB8n72PRMlx6YIbA9eML6p0pXPK1LmbDks5r0ahBgaJpZM4MESqX
.

No luck.. I don't think I'm doing anything wrong..
PS C:\Windows\system32\WindowsPowerShell\v1.0\Modules>
New-BurntToastNotification -Text "BurntToast Test"
PS C:\Windows\system32\WindowsPowerShell\v1.0\Modules>
New-BurntToastNotification -Text "Don't forget to smile!", 'Your
script ran successfully, celebrate!'
PS C:\Windows\system32\WindowsPowerShell\v1.0\Modules>
New-BurntToastNotification -Text 'WAKE UP!' -Sound 'Alarm2' -Snoo
zeAndDismiss
PS C:\Windows\system32\WindowsPowerShell\v1.0\Modules>
New-BurntToastNotification
None of them gave me a Toast message.. (Windows 10, Build 1607)
David F.
On Sun, Apr 30, 2017 at 9:55 PM, David Figueroa<EMAIL_ADDRESS>wrote:

I definitely will.. thank you! and I apologize for the delay... been a bit
busy :-)
I'll email again as soon as I try it out..
David F.
On Fri, Apr 28, 2017 at 3:50 AM, Joshua King<EMAIL_ADDRESS>wrote:

Hey David, I just published a new version. Would you mind giving it
another shot?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Windos/BurntToast/issues/11#issuecomment-297944349,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB8n72PRMlx6YIbA9eML6p0pXPK1LmbDks5r0ahBgaJpZM4MESqX
.

And you're getting no error messages?
Home, Pro, Enterprise or other edition of Win 10?
Are you using 'Run as different user' when starting PowerShell or running it through another host (like PowerShell Studio)?

Windows 10, build 1607
Home version, elevated powershell prompt (I have PS Studio, but not using
it)
I will try this tomorrow on Win10 Creators Update, Enterprise version
tomorrow at work..
Thank you!
David F.
On Sun, Apr 30, 2017 at 10:16 PM, Joshua King<EMAIL_ADDRESS>wrote:

And you're getting no error messages?
Home, Pro, Enterprise or other edition of Win 10?
Are you using 'Run as different user' when starting PowerShell or running
it through another host (like PowerShell Studio)?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Windos/BurntToast/issues/11#issuecomment-298279516,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB8n72hi0bEowB2tbrJ9HuLNp4rJ-C5vks5r1U58gaJpZM4MESqX
.

I was able to make it work here @ work.. thank you!
One thing I did notice; is that the BT notification must be done in the context of the user running the Explorer shell.. I keep a PS prompt open with my Admin account, and when I ran a New-BurntToastNotification message from it, I got access denied, but I was able to use my regular account in both an elevated and non-elevated session to send BT notifications.
Thank you again for the awesome work.. I plan to definitely start incorporating this into many of my PS scripts!
David F.

I'm wondering if, for whatever reason this doesn't work on Home edition. I don't have my own license for that... but for this and another issue I'm tracking on another project I probably should.
Yeah, that user thing is a pain. An earlier version of this module used to check for that and warn if you were running the host as a different user than that which was interactively logged in. It also had a credential parameter so that if you triggered a toast from your admin host you could give the credentials of your standard user and it would display. I ended up removing this as it was jankily implemented and maintaining that was a pain.
If you find yourself needing to use it in that situation, you can always use Invoke-Command passing in your toast as the script block and specifying creds for you standard user.

Well, thank you for the information..  I'm looking forward to being able to
use it.. and I'm sure you're right about the Home edition licensing thing,
but since I plan to use this on my work machine, and for my users, I'm good
with it :-)
If you are interested, you can download free/trial versions of the home
edition from Microsoft..   I'd have included a link, but MS is apparently
having trouble with their eval center.
Thank you again for an awesome module.. I can see a lot of great uses for
this..
David F.
On Mon, May 1, 2017 at 3:41 PM, Joshua King<EMAIL_ADDRESS>wrote:

I'm wondering if, for whatever reason this doesn't work on Home edition. I
don't have my own license for that... but for this and another issue I'm
tracking on another project I probably should.
Yeah, that user thing is a pain. An earlier version of this module used to
check for that and warn if you were running the host as a different user
than that which was interactively logged in. It also had a credential
parameter so that if you triggered a toast from your admin host you could
give the credentials of your standard user and it would display. I ended up
removing this as it was jankily implemented and maintaining that was a pain.
If you find yourself needing to use it in that situation, you can always
use Invoke-Command passing in your toast as the script block and
specifying creds for you standard user.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Windos/BurntToast/issues/11#issuecomment-298426970,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB8n7-hSqgwJy1q9_9lGM3X8f7ov0Hh3ks5r1kOKgaJpZM4MESqX
.

Sorry to bump this post - but I'm having the exact same issue ; and tried all the workaround you provided there, double checked that I was launching PowerShell as me , tried in the ISE, ISE x86, both as admin, same for the classic PowerShell, and I'm running out of ideas. Do you have any hint on what could be causing this behavior ?
Any of the example commands won't work either, no error message too, same symptoms as @figueroadavid

Note :  I do have Windows 10 Pro, and here's my $PSVersionTable
Name                           Value
----                           -----
PSVersion                      5.1.16278.1000
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.16278.1000
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Hey @AmineI, no prob at all for bumping. I think the issue you're seeing is a slightly different one. Judging by your BuildVersion (10.0.16278.1000), I'm assuming you're on the Insider Previews?
It looks like there's an issue with how I'm trying to get these Toast to show that the Fall Creator's Update doesn't like, as it's just blackholing them.
Hopefully we'll find a work around before that update goes GA!

Indeed, I am ! I see, I'll go to the other issue thread then, I'll be glad to help !

Hello - I'm running Fall Creator's Edition, and have just excitedly installed this module.
I'm having the problem of seeing no toast, or errors,  either.  I've tried in admin and non-admin Powershell instances.
Here are my version tables.
PS C:\WINDOWS\system32> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.16299.98
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.16299.98
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

PS C:\WINDOWS\system32> Get-Module BurntToast | select path,version

Path                                                                        Version
----                                                                        -------
C:\Program Files\WindowsPowerShell\Modules\BurntToast\0.6.1\BurntToast.psm1 0.6.1

Can I provide other diagnostics to help?

Hey @wisemoth, what command(s) are you running to get a Toast. Also, any warnings or errors if you explicitly import the module (Import-Module BurntToast)?

Just so everyone knows, Joshua & I traded some emails about this thread, and my issue with BurntToast was the fact that I was trying on the Home version.  As soon as I tried it on Professional, it worked exactly as expected.
David f.

Thanks @figueroadavid , @Windos
I'm running the Pro SKU:
PS C:\Users\owner> gwmi win32_operatingsystem|select -expand caption
Microsoft Windows 10 Pro

Here's verbose output from the module import - no errors or warnings.
PS C:\Users\owner> Import-Module BurntToast -Verbose
VERBOSE: Loading module from path 'C:\Program Files\WindowsPowerShell\Modules\BurntToast\0.6.1\BurntToast.psd1'.
VERBOSE: Importing function 'New-BTAction'.
VERBOSE: Importing function 'New-BTAppId'.
VERBOSE: Importing function 'New-BTAudio'.
VERBOSE: Importing function 'New-BTBinding'.
VERBOSE: Importing function 'New-BTButton'.
VERBOSE: Importing function 'New-BTContent'.
VERBOSE: Importing function 'New-BTContextMenuItem'.
VERBOSE: Importing function 'New-BTHeader'.
VERBOSE: Importing function 'New-BTImage'.
VERBOSE: Importing function 'New-BTInput'.
VERBOSE: Importing function 'New-BTProgressBar'.
VERBOSE: Importing function 'New-BTSelectionBoxItem'.
VERBOSE: Importing function 'New-BTText'.
VERBOSE: Importing function 'New-BTVisual'.
VERBOSE: Importing function 'New-BurntToastNotification'.
VERBOSE: Importing function 'Submit-BTNotification'.
VERBOSE: Importing alias 'Toast'.
PS C:\Users\owner>

I've tried several examples in help NewBurntToastNotification - no toast, nor alarm sound.

Hi, I've encountered a similar problem (but with win 10 pro).
But my notifications where simply disabled by default. You might check that.

I'm closing this issue for now, I've got other issues (and project notes) about individual topics that came up in this thread.
One is to confirm that this doesn't work on home (and then warn users trying to run the module against the home edition)
The second is to do more to check for the updates being disabled.
I'm currently targeting both of these being sorted in v0.7.1 (which will not be next release, but the release after that.)

Just a tip... Also, check to make sure you didn't accidentally set Windows Focus Assistant to "Priority Only" or "Alarms Only" under Windows Action Center when you click on the Notifications area.

Just a tip... Also, check to make sure you didn't accidentally set Windows Focus Assistant to "Priority Only" or "Alarms Only" under Windows Action Center when you click on the Notifications area.


Source generator - Property reference ColumnHeader

Codecov Report
Attention: Patch coverage is 88.60759% with 9 lines in your changes are missing coverage. Please review.

Project coverage is 87.91%. Comparing base (abc28c6) to head (af40c3d).

Files
Patch %
Lines

...dCheetah/SourceGeneration/ColumnHeaderAttribute.cs
0.00%
6 Missing :warning:

...rceGenerator/Extensions/AttributeDataExtensions.cs
89.65%
2 Missing and 1 partial :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #42      +/-   ##
==========================================
+ Coverage   87.81%   87.91%   +0.09%
==========================================
  Files         135      139       +4
  Lines        4621     4675      +54
  Branches      892      900       +8
==========================================
+ Hits         4058     4110      +52
- Misses        248      253       +5
+ Partials      315      312       -3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


fix autogeneration of nested ember-data models

Currently nested ember data models are registered with a model's leaf name. For example: pet/dog is registered as a dog in the registry.
This change allows to register models with a full model name.

@offirgolan I would appreciate your 👀 here when you have time

@samselikoff what can I do to get it merged?

Thank you!

🎉


I want to add mathml support to galgebra

Dear All:
Happy to know that galgebra is working in python3 and have a lot of improve in latex. Now I want to make contribution to galgebra and add some mathml support.
How to make contribution to the source code?

Thanks for the interest!
To support mathml, you'll need to add a _mathml_content or _mathml_presentation method to the Mv and Dop classes (and likely a few more).
Out of curiosity, why do you want mathml? I've never found a use for it yet, but would be keen to learn one.

Happy to know that galgebra is working in python3 and have a lot of improve in latex. Now I want to make contribution to galgebra

Thanks! Welcome to help making GAlgebra better package for your use cases! ❤

add some mathml support.

I also wonder the use case and it seems that there're already tools to convert LaTeX to MathML, at least MathJax seems to regard MathML as a rendering target, not an intermediate representation. I'm not sure if semantically it's better to get MathML directly from the math-aware GAlgebra .

How to make contribution to the source code?

It's the same as most open source projects on Github, simply fork it, make modifications and submit pull requests like the PRs here, try passing the CI and when you're ready, request a review or ping us then we'll review, suggest changes or merge ASAP.


Blood magic protections not considered with phylactery

Copied from Nexus comments section:

There is an issue with this mod's phylactery and the use of the protection spell from mistlands blood magic.
 The protection spell blocks all damage from the last thing that hurt it, so you would in actuality, survive and be left with whatever health you had before that hit was taken. Is there a way to add a conditional that doesn't send you to the phylactery if you have a shield up?
Edit: To be sure, I've been sent to the phylactery and still having a barrier up. So the barrier was able to block all the damage, however, my health bar wasn'

Probably gotta check for the staff shield status effect https://media.discordapp.net/attachments/1112768727780434024/1246545519489192006/Screenshot_2024-06-01_152620.png?ex=665cc77b&is=665b75fb&hm=05e26f16b20a20b7533f7fd6792634c86d59849c0b608b30ffaa231d464f7c48&=&format=webp&quality=lossless&width=323&height=660


example: add cursor-overlay example

Uses a callback on the parent to 'sync' an overlay on a seperate viewer

References and relevant issues
@jni recommended I upload my solution from what was originally a question on the forums:
https://forum.image.sc/t/creating-a-separate-cursor-in-the-view/88608
Description
I was originally trying to emulate ImageJ's "sync" feature. FOr simplicity's sake, I've only included the code for the cursor.
On running the example, you should a "parent" and "child" viewer. The child viewer should contain a red dot that mirrors the cursor's position, relative to the parent's window:
https://github.com/napari/napari/assets/8238329/80bb11b4-f4e1-4bb3-a02b-311d486bc9aa

This looks cool! Thanks for contributing!
Our examples need a title, a tag, and a (brief) description--you can see the documentation here: https://napari.org/dev/developers/contributing.html#adding-examples-to-the-gallery
If you don't have bandwidth for that, we can take care of it though!
❤

Hi @Modjular, thanks for opening this PR and welcome to napari! Cool example. Given your example I will shamelessly try to recruit you to help contribute to multichannel / canvas view in napari. Would you be interested in that? Below a small sneak peak:
https://github.com/napari/napari/assets/22346363/4cb00bad-0e88-47db-bf9a-0cedeb864129

@melanora

Hi @Modjular, thanks for opening this PR and welcome to napari! Cool example. Given your example I will shamelessly try to recruit you to help contribute to multichannel / canvas view in napari. Would you be interested in that? Below a small sneak peak:
napari_2d_example.mp4

Cool! What are the goals of this feature? Is there a branch or README I could look at?

Cool! What are the goals of this feature? Is there a branch or README I could look at?

https://github.com/napari/docs/pull/249. The dicussion in the PR and the text of the NAP itself are both relevant :)

0.4.19 is out, so to get this in—which I definitely want—I think from: https://github.com/napari/napari/pull/6510#issuecomment-1836942282
we need to go with:

fix this PR for main and milestone for 0.5.0

Can post the 0.4.19 version in the image.sc thread, but we need a working version in main.

OK, so the example is passing tests because the way examples are tested with runpy.run_path  it won't execute code under if __name__ == "__main__": so it just passes. We can see from the docs building that in fact the example is broken, due to the overlay changes as noted above.
I'm going to push fixes to both of these issues.

Ok, looks like everything is good now:
https://output.circle-artifacts.com/output/job/ec34d49e-f402-44b2-b11b-2050a7c3a49b/artifacts/0/docs/docs/_build/html/gallery/cursor_sync_custom_overlay.html#sphx-glr-gallery-cursor-sync-custom-overlay-py
@jni ready for review!

Here's how it looks now, with the formatting improvement:
https://output.circle-artifacts.com/output/job/2f3c51ae-9252-4322-a4d8-1baeb06da033/artifacts/0/docs/docs/_build/html/gallery/cursor_sync_custom_overlay.html#sphx-glr-gallery-cursor-sync-custom-overlay-py
@jni @brisvag If you have wording suggestions, please use the suggest feature!

@psobolewskiPhD my suggestion would be to do it the way I described above, cause it's more in line with how we use overlays inside napari core. (https://github.com/napari/napari/pull/6510#discussion_r1601151765)

I'm sorry @brisvag @jni I don't quite follow the conversation. I was just trying to fix this to get it over the line.
Y'all are going to have to clue me in a bit more to rework it.
❤

Basically, I think it would be best to move the whole syncing logic to be inside the VispyCursorOverlay definition, like we do with all the other overlays. This way you don't need any extra functions to manually link and carry around, but instead we can use the normal mechanism of just doing viewer._overlays['something'] = something (we need to update a line in napari to get automated linking post-init but that's easy and was supposed to happen anyways).
Note that the main difference between what you did and what I'm suggesting is that there's no explicit sync between two cursors overlays; rather, it's the same overlay model that's given to two different viewers, and you get the syncing for free, if you did the linking correctly!
Take a look at https://github.com/napari/napari/blob/main/napari/_vispy/overlays/brush_circle.py, it looks very much like what you want here.
The be

OK, I'll try to take another look.
Just to be clear I didn't write this example, it's a user contribution via image.sc forums (see the OP) that withered due to the differences in overlays between release and main.
I want(ed) to get it over the line for the first-time contributor, even though I think they've given up hope.

Yeah, I get it... But since this is an example meant for people to base their work on, I think it's best we write it in a way that aligns with how we want to use this feature ourself and in the future :)

Yeah, I get it... But since this is an example meant for people to base their work on, I think it's best we write it in a way that aligns with how we want to use this feature ourself and in the future :)


gRPC errors on client connect and query

Hi!
I'm trying out this client and I'm getting  a couple errors. First, I get this error when I create a client:
E1203 14:06:23.973404816    6831 uri_parser.cc:46]           bad uri.scheme: ''
E1203 14:06:23.973503065    6831 uri_parser.cc:52]                            ^ here
E1203 14:06:23.973512562    6831 http_proxy.cc:58]           cannot parse value of 'http_proxy' env var

And this error when I make a query:
Err(
    GrpcError(
        RpcFailure(
            RpcStatus {
                status: Internal,
                details: Some(
                    "grpc: error unmarshalling request: proto: wrong wireType = 2 for field StartTs",
                ),
            },
        ),
    ),
)

The server I'm connecting to is at localhost:9080; has anyone seen this issue before?

What version of Dgraph are you using? If it's 1.1, it's not supported yet, but there's a PR #12 for it.

Ahh, yeah, it was a version issue. I backed down to 1.0.17 and it seems fine now.
Why are there breaking connectivity issues between a minor version update of Dgraph? Shouldn't all 1.x versions be compatible, minus support for new features introduced in the newer versions?

I don't know why they chose to break compatibility in minor version. It's also just couple of small changes in their API, nothing serious, but it still means some rewriting needs to be done on our side. I'm also still unsure how to approach this. I'd probably prefer keeping compatibility with both versions, but some people suggested abandoning 1.0.X completely in newer versions of this library.

Got it. Thanks, @ondrowan
It would be nice to have compatibility between the two versions; it would mean that we could better manage the upgrade of our Dgraph servers and Rust clients without having to synchronize updates. For example, we could deploy a new client that supports both v1.0 and v1.1 so that when we upgrade our servers we have minimal client downtime.


[W6.4b][W14-B2]Teo Wen Zong

modify the user guide to add in more NFRs

@wenzongteo
Since nothing much to take note of, I will close the PR


Add support for matching request body multipart form data

Request bodies of content type multipart/form-data can have different "boundary" separators, but contain identical data. This can cause VCRPy's "body" matcher to fail on otherwise identical requests.
This adds support for parsing the encoded body data, essentially stripping out the "boundary" values, and comparing the contents.
Also, a similar approach could be used for handling "replace_post_data_parameters" mentioned in https://github.com/kevin1024/vcrpy/issues/521.
Testing Notes
Added 3 unit tests to confirm matching behavior, using sample 1x1 PNG image data. and differing "boundary" delimiters.
Implementation Notes

This adds a dependency on requests_toolbelt, for parsing encoded multipart form data. If this is acceptable, my dependency configuration may need some polish.
Modified the matcher "transformer" functions to take an additional headers parameter, as this is needed to determine the multipart form data "boundary" separator.

@kevin1024 Any plans for integrating this?
@mparent61 Is there any workaround right now? I have a multpart/form-data and I cannot use the cassete I record (which is actually a sending and recieving a small file).

@mezhaka - I've been using this workaround --
import re

import pytest
from requests_toolbelt.multipart import decoder
from vcr.matchers import _get_transformer, _identity
from vcr.util import read_body

def decode_multipart_request_body(request):
    return decoder.MultipartDecoder(
        content=request.body, content_type=request.headers["content-type"]
    )

def is_multipart_form_data_request(request):
    return re.match(
        r"multipart/form-data(;|$)", request.headers.get("content-type", "").lower()
    )

# This is a workaround for request body "multipart form" handling
def request_body_matcher(r1, r2) -> None:
    if is_multipart_form_data_request(r1) and is_multipart_form_data_request(r2):
        decoded1 = decode_multipart_request_body(r1)
        decoded2 = decode_multipart_request_body(r2)
        assert decoded1.encoding == decoded2.encoding
        assert len(decoded1.parts) == len(decoded2.parts)
        for part1, part2 in zip(decoded1.parts, decoded2.parts):
            assert part1.headers == part2.headers
            assert (
                part1.content == part2.content
            ), f"Multipart data doesn't match for part with content type: {part1.headers}"
    else:
        # Copied directly from VCRPy's `body` matcher. For some reason PyTest's custom ASSERT handlers (with
        # much better diagnostic info) does not work when the assert fires inside VCRPy.
        transformer = _get_transformer(r1)
        r2_transformer = _get_transformer(r2)
        if transformer != r2_transformer:
            transformer = _identity
        body1 = read_body(r1)
        body2 = read_body(r2)
        assert transformer(body1) == transformer(body2)

and then to setup -
@pytest.fixture(scope="module")
def vcr(vcr):
    # Override VCRPy's default body matcher to support Multipart form data, and provide better ASSERT messages.
    vcr.register_matcher("body", request_body_matcher)
    return vcr


Search with groovy fails

Issue submitter TODO list

[X] I've looked up my issue in FAQ
[X] I've searched for an already existing issues here
[X] I've tried running master-labeled docker image and the issue still persists there
[X] I'm running a supported version of the application which is listed here

Describe the bug (actual behavior)
Even the simplest ones fail - keyAsText != null, as taken from actual example. It doesn't display errors, no progress is evident (i.e. messages being counted/consumed).
When i hit the Submit button, the only things that changes on the page are:

the Submit button turning to Cancel, then back to Submit;
there is a DONE message, it is displayed near the text showing how many messages were consumed, download size, timing. That DONE message changes to Polling partitions: [0, 1, 2], then back to DONE.

Both changes happen for less than a second on topics of any size.
Expected behavior
When i add a new filter, it should be obvious that is doing the search - count messages being consumed, count download size...
Your installation details
83b5a60 v0.7.2
Steps to reproduce

Choose topic
Click Add Filters button
Use filter like keyAsText != null (from example) or just about anything else whose results you can verify
It will start search automatically, but can also hit the Submit button, behavior is the same

Screenshots
No response
Logs
No response
Additional context
No response

Hey, this repo is not maintained (#4255), but we've replaced groovy with CEL (and fixed the related CVE) here: https://github.com/kafbat/kafka-ui . I'll be glad to answer your questions there if any.

@HStoyanov-augglobal You can set the configuration property "filtering.groovy.enabled" to true to re-enable groovy filtering.

@HStoyanov-augglobal You can set the configuration property "filtering.groovy.enabled" to true to re-enable groovy filtering.

mate can you give more info where we have to set it as i dont see this option on any of the chart values.yaml or documentations about this option

@oxie just add it as an environmental var set to true and restart the application.

yes seems this is the solution, please put it in the documentation:
  values:
    env:
    - name: filtering.groovy.enabled
      value: "true"

yes seems this is the solution, please put it in the documentation:
  values:
    env:
    - name: filtering.groovy.enabled
      value: "true"

@oxie and @MatthiasGabriel can you plz guide what is the equivalent env var name for setting this flag? is it KAFKA_FILTERING_GROOVY_ENABLED?

@abhineetsbhamra the env is FILTERING_GROOVY_ENABLED, not  KAFKA_FILTERING_GROOVY_ENABLED. just checked myself, it works.


Version 2.31.0

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 89.64%. Comparing base (0b6fd00) to head (4a046cb).

Additional details and impacted files
@@             Coverage Diff              @@
##               main     #943      +/-   ##
============================================
+ Coverage     86.25%   89.64%   +3.39%
============================================
  Files           167       86      -81
  Lines         19222    15499    -3723
  Branches       1049        0    -1049
============================================
- Hits          16579    13894    -2685
+ Misses         2328     1605     -723
+ Partials        315        0     -315

Flag
Coverage Δ

uitests
?

uitests-android
?

unittests
89.64% <ø> (+4.00%)
:arrow_up:

unittests-android
?

unittests-ios
?

unittests-rust
89.64% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Send email about /for/communities to everyone (eventually)

In #24739, we implement an onboarding email that points users to /for/[use case] landing pages.
Because /for/communities is currently not written with end users (as opposed to organization administrators/decision makers) in mind, the email linking to /for/communities will only be sent to administrators for now. If this page is at some point rewritten to be applicable to a broader audience, we should update the targeting for this email.

Dear Zulip,
I hope this message finds you well. As we navigate the challenges of our ever-changing world, it has become increasingly important to build strong and resilient communities. That's why I am reaching out to you today to invite you to join me in a collaborative effort to strengthen our communities.
Whether you are part of a local neighborhood, a religious organization, or a special interest group, we all have a role to play in building stronger communities. By working together, we can make a real difference in the lives of those around us.
To that end, I would like to introduce you to Zulip, a powerful communication tool that can help us connect and collaborate more effectively. With Zulip, we can share ideas, discuss important issues, and work together to make our communities stronger.
Zulip is an open-source platform that provides a secure and efficient way to communicate with others. It offers a range of features, including group chats, private messages, and threaded conversations, to help us stay organized and focused on our goals.
I would like to invite you to create a Zulip account and join our community. Together, we can share ideas, collaborate on projects, and build strong, resilient communities that can weather any storm.
Thank you for your time and consideration. I look forward to connecting with you on Zulip.

@zulipbot claim


Stats Error

From the forums, link:

StacheEnthusiast 2/21/2018 6:10 PM
I’m getting an auth error, “stats error”. I’ve followed the steps and MMM-GoogleFit shows up in my google apps with permissions. Any ideas?

Firstly, can you tell me a bit about your setup? Device running MM, if you are using electron or an external browser, what version of node you are running (node --version), any other interesting or unique things.
Secondly, there is a bunch of built in logging that can help us get more info on the situation. You will need to edit the file MMM-GoogleFit/node_helper.js, change the line at the top that says:
debug: false, to debug: true,
Then, start up your sever via $ cd MagicMirror, $ node serveronly and use a web browser to go to the page listed (should be http://localhost:8080).
Note: since this is a public repo anyone can see what you paste here. The only permission is for reading from google fit. If you would prefer, you can send along the info to<EMAIL_ADDRESS>and I can check the logs without them being public - your call. Otherwise you can send the info and then revoke access on your google profile so you will need to re-login, but will revoke access from that auth key.

Never got any response. If there are other issues like this we can re-open the issue.

I'm also seeing this after installing.  getStat's POST /fitness/v1/users/me/dataset:aggregate is always met with an error 500:
{ error: { errors: [ [Object] ], code: 500, message: 'Backend Error' } }
While the fit api docs don't cover it, the drive api says that the app should use exponential backoff in this case, and that the app's quota should be checked on the google api console.  Could it be that the module has just become popular enough that there are too many requests being sent?

Nevermind, I created my own token and am still getting 500s

I figured it out, my only fit data comes from the fit app on my phone, so I don't have any com.google.weight data to aggregate by.  If I change the aggregateBy to just

"aggregateBy": [{
"dataSourceId": "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
}],

like the one in the api example, it works.


Optimize the performance of DISTINCT queries

Opportunities:

Separate DISTINCT from aggregation and make it a standalone type of query (similar to select but deduplicate the records) so that early termination logic can be easily plugged in
Specialize order-by with 1 column, where we can directly work on primitive type

Use dictionary ids instead of fetching actual values inner segment

@Jackie-Jiang Should we close this ticket?

@atris Yes, thanks for the notification


Static/Dynamic issues with filter_eval_shape

Hi 👋 ,
I am attempting to build a JAX primitive for some trace functionality in traceax, but running into issues with shape evaluation. The issue arises due to JAX samplers needing static shape values passed in, whereas they are partially dynamic due to inference in the code below. I attempted to use partition to help get around this, but cannot figure out what steps I need to take in order to fix this behavior.
I have attempted to build a MWE as best I can, but core issue is rdm.rademacher(key, (n, k), self.dtype) below:
from typing import Any
from typing_extensions import TypeAlias

import equinox as eqx
import equinox.internal as eqxi
import jax
import jax.lax as lax
import jax.numpy as jnp
import jax.random as rdm
import jax.tree_util as jtu
import lineax as lx

from jax.dtypes import canonicalize_dtype
from jax.numpy import issubdtype
from jaxtyping import Array, DTypeLike, Num, PRNGKeyArray, PyTree

from lineax import AbstractLinearOperator

jax.config.update("jax_traceback_filtering", "off")

class RademacherSampler(eqx.Module, strict=True):
    dtype: DTypeLike = eqx.field(converter=canonicalize_dtype, default=int)

    def __call__(self, key: PRNGKeyArray, n: int, k: int) -> Num[Array, "n k"]:
        return rdm.rademacher(key, (n, k), self.dtype)

TState: TypeAlias = tuple[PRNGKeyArray, AbstractLinearOperator, int]

class HutchinsonEstimator(eqx.Module, strict=True):
    sampler = RademacherSampler()

    def init(self, key: PRNGKeyArray, operator: AbstractLinearOperator) -> TState:
        n_in = operator.in_size()
        return (key, operator, n_in)

    def estimate(self, state: TState, k: int) -> tuple[PyTree[Array], dict[str, Any]]:
        key, operator, n = state
        k = jnp.minimum(jnp.maximum(k, 1), n)

        # sample from proposed distribution
        samples = self.sampler(key, n, k)

        # project to k-dim space
        projected = jax.vmap(operator.mv, (1,), 1)(samples)

        # take the mean across estimates
        trace_est = jnp.sum(projected * samples) / k

        return trace_est, {}

def _estimate_trace_impl(_, state, k, estimator, *, check_closure):
    result, stats = estimator.estimate(state, k)

    return result, stats

def _to_struct(x):
    if isinstance(x, jax.core.ShapedArray):
        return jax.ShapeDtypeStruct(x.shape, x.dtype)
    else:
        return x

# set up operator
key = rdm.PRNGKey(0)
A = jnp.array([[1, 2], [3, 4]]).astype(float)
operator = lx.MatrixLinearOperator(A)
k = 2

# set up estimator
estimator = HutchinsonEstimator()
state = estimator.init(key, operator)

# deal with dynamic/static parts for downstream
dynamic_state, static_state = eqx.partition(state, eqx.is_array)
dynamic_state = lax.stop_gradient(dynamic_state)
state = eqx.combine(dynamic_state, static_state)

state, k, estimator = jtu.tree_map(_to_struct, (state, k, estimator))
# not happy about (n, k) in the sampler call
out = eqx.filter_eval_shape(
    _estimate_trace_impl,
    operator,
    state,
    k,
    estimator,
    check_closure=False,
)

The error (at the end of trace) is,
TypeError: Shapes must be 1D sequences of concrete values of integer type, got (2, Traced<ShapedArray(int32[], weak_type=True)>with<DynamicJaxprTrace(level=1/0)>).
If using `jit`, try using `static_argnums` or applying `jit` to smaller subfunctions.
The error occurred while tracing the function _fn at /Users/nicholas/micromamba/envs/jax/lib/python3.11/site-packages/equinox/_eval_shape.py:31 for jit. This value became a tracer due to JAX operations on these lines:

  operation a:i32[] = max b c
    from line /Users/nicholas/primtest/tmp.py:41:24 (HutchinsonEstimator.estimate)

  operation a:i32[] = min b c
    from line /Users/nicholas/primtest/tmp.py:41:12 (HutchinsonEstimator.estimate)

which seems to suggest that due to the min/max call over k.
If you or other developers have any guidance or insight I would greatly appreciate it.

Ah, this can be resolved by replacing jnp.minimum with min and jnp.maximum with max.


Reimplement HypervDisk Module Caching

Previously this module cached data blocks read starting with the first requested
block for a minimum number of contiguous blocks.
A read request was considered a "hit" in the cache only if the entire string of
blocks was found in one cache entry.
This meant that a request could be partially found in the cache but it would be
totally read from disk again, creating some duplicate blocks in the cache.
This has now been modified so that each cache entry has a fixed number of blocks.
A read request will be filled with as much data from the cache as possible, including
partial cache entries.  Only when the data is not actually in the cache will it
be filled from disk.
This change should reduce reads required across the network from the HyperV server
by approximately 20% on a typical run of SSA. A sample hard drive tested
reduced the number of network reads from 836 to 507, reducing the time for full SSA from
one hour, 34 minutes to one hour, 10 minutes.  Still very long, but getting closer.
@roliveri @Fryguy @chessbyte  Please review.

Was this duplicated from other parts of the SSA stack?  I remember writing something very similar for NTFS, I believe, and this change is making me think that the issue may be elsewhere as well.
In the future we may want to rip this out into a class that is meant for caching contiguous blocks, sort of like a buffering reader class.

@jerryk55 Do you have specs for this?  Given there aren't many specs in this area, I would understand if you said know, but I'm wondering how hard it would be to write some to verify the before/after of this PR.

Also see the rubocop issues above.

@Fryguy I wrote this from scratch.  If there is any similarity it is purely coincidental.  Actually I believe some of the original code was duplicated from somewhere else in the SSA stack but it wasn't doing the job as efficiently as it could have been which is why I changed it.  Oh perhaps that's what you're implying.  Basically filesystem buffer code that is in the cobwebs of my brain.
And no there are no specs for the code as originally written as you guessed.
I will fix the one rubocop issue.  I was holding off to see if there might be anything else to change as well.

Here is the original code I was thinking of in the NTFS code (yes, it's different, but conceptually similar).  https://github.com/ManageIQ/manageiq/blob/master/gems/pending/fs/ntfs/data_run.rb#L135-L238
I think I like your implementation better, and I think it's a good idea to create a generic buffer cache class, but not necessarily for this PR.  We should add it to a TODO list for the SSA code.

@Fryguy as discussed the rubocop issue has been fixed.  I will look at an additional PR to cache the concatenated block ranges as well as a future PR for a generic block caching mechanism for SSA.
Please merge when able.  Thank you.

OK I spoke with @jerryk55 and although the concatenating strings issue might theoretically be a problem, we're going to merge anyway as this gives us immediate savings since we are not reading extra stuff over the wire.  We can debate the memory efficiency separately, perhaps when we create that buffered reader class.

:+1: will merge when green


chore: bdd-spring-1572279919 to 0.0.1

chore: Promote bdd-spring-1572279919 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Add 2.0 linux binary requirements

Fixes #2867

Review status: 0 of 1 files reviewed at latest revision, all discussions resolved, all commit checks successful.

v2.0/install-cockroachdb.md, line 286 at r1 (raw file):

      <pThe CockroachDB binary for Linux requires glibc and libtinfo, which are found by default on nearly all Linux distributions. Ensure that these libraries are on your distribution before installing CockroachDB.

Drop the last sentence - no one will know how to determine this unless we tell them. Either mention alpine and coreos specifically as known exceptions, or just leave the first sentence on its own and trust that most people will be on distributions where these requirements are satisfied. (in which case the purpose of this message is to serve as a lead if they try it and it doesn't work)

Comments from Reviewable

v2.0/install-cockroachdb.md, line 286 at r1 (raw file):
Previously, bdarnell (Ben Darnell) wrote…
Drop the last sentence - no one will know how to determine this unless we tell them. Either mention alpine and coreos specifically as known exceptions, or just leave the first sentence on its own and trust that most people will be on distributions where these requirements are satisfied. (in which case the purpose of this message is to serve as a lead if they try it and it doesn't work)

I made this a brief callout before the instructions. Making it step 1 without any instructive aspect felt weird.

Comments from Reviewable

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/7afc1765cae2f7b93df09ec65af6f682474dcea8/


Lokalise: Translations update (adding 2 new languages)

This pull request was initiated by Lokalise (user Do Hee Kim) at 2021-01-21 17:07:37

merged into #2161 , will test there together

merged into #2161 , will test there together


Throw if connection header is specified

As titled. Without this patch we had a double connection header which was confusing some server.

I guess this is for proxying? Isn't it up to the proxy code to remove hop-by-hop headers?

I'm also ok in throwing! The key point is that the double connection header should not be sent down the line.

I'm also ok in throwing!

I would suggest we handle it the same as transfer-encoding then.

Done


Add gongo bot base functionality

In this commit the basic belt attributions were created using the discord.command instead of the docopt library.
The bot checks if the Belt can be attributed to the Ninja (i.e. a Black belt can't be attributed to a ninja with a Orange belt), if it verifies that the belt can be attributed, the bot adds the new belt and removes the old one.

Thank you, and yes of course.
I also wanted to ask about one thing. The way I did the belt attribution doesn't allow to give a belt to someone without one, therefore I wanted to ask if every new ninja that arrives to the server is going to be given a white belt or it has to be manually given by a mentor?

The way I did the belt attribution doesn't allow to give a belt to someone without one, therefore I wanted to ask if every new ninja that arrives to the server is going to be given a white belt or it has to be manually given by a mentor?

Oh, I see. Yes, that might be a problem for two reasons.

Someone could forget to give the base badge to a ninja which would not be a problem if the bot just says clearly the problem.
The real problem, it is a valid state to a ninja not having a belt. Only after its second session a ninja receives its first belt (the white one).

The way I did the belt attribution doesn't allow to give a belt to someone without one, therefore I wanted to ask if every new ninja that arrives to the server is going to be given a white belt or it has to be manually given by a mentor?

Oh, I see. Yes, that might be a problem for two reasons.

Someone could forget to give the base badge to a ninja which would not be a problem if the bot just says clearly the problem.
The real problem, it is a valid state to a ninja not having a belt. Only after its second session a ninja receives its first belt (the white one).

So should I just make it possible to attribute the white belt for now and think of a possible solution for those problems after?

So should I just make it possible to attribute the white belt for now and think of a possible solution for those problems after?

@danielsp45 I think being able to give the white belt to a ninja should be sufficient :+1:

I added a new pull request by mistake. All the changes of that pull request are now here


nice logger lmao

What is your point mate?
Please read that "issue" and if you have something clever to say well go ahead :D
https://github.com/Enum0x539/Qvoid-Token-Grabber/issues/31

Thanks I guess


Emi/new backdrop prop

updated snapshots to resolve build errors

thanks! was going to do that next, but you beat me to it :)


import some scss files into library component scss throw errors

🐞 Bug report
Command (mark with an x)

[ ] new
[x] build
[ ] serve
[ ] test
[ ] e2e
[ ] generate
[ ] add
[ ] update
[ ] lint
[ ] xi18n
[ ] run
[ ] config
[ ] help
[ ] version
[ ] doc

Is this a regression?
not sure
Description
this affect only libraries
when trying to import bootstrap mixins @import "~bootstrap/scss/mixins"; it throw the following error ERROR: Can't find stylesheet to import.
but the exact same code in a normal project build successfully
🔬 Minimal Reproduction
clone
https://github.com/robertIsaac/scss-reproduce
run ng build
🔥 Exception or Error

Compiling TypeScript sources through ngc
ERROR: Can't find stylesheet to import.
  ╷
3 │ @import "~bootstrap/scss/mixins";
  │         ^^^^^^^^^^^^^^^^^^^^^^^^
  ╵
  projects\scss-reproduce\src\lib\reproduce-import\reproduce-import.component.scss 3:9  root stylesheet
An unhandled exception occurred: Can't find stylesheet to import.
  ╷
3 │ @import "~bootstrap/scss/mixins";
  │         ^^^^^^^^^^^^^^^^^^^^^^^^
  ╵
  projects\scss-reproduce\src\lib\reproduce-import\reproduce-import.component.scss 3:9  root stylesheet
See "C:\Users\...\AppData\Local\Temp\ng-ERaruX\angular-errors.log" for further details.

🌍 Your Environment

$  ng version

     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/

Angular CLI: 9.1.4
Node: 12.14.1
OS: win32 x64

Angular: 9.1.4
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes

Package                            Version
------------------------------------------------------------
@angular-devkit/architect          0.901.4
@angular-devkit/build-angular      0.901.4
@angular-devkit/build-ng-packagr   0.901.4
@angular-devkit/build-optimizer    0.901.4
@angular-devkit/build-webpack      0.901.4
@angular-devkit/core               9.1.4
@angular-devkit/schematics         9.1.4
@ngtools/webpack                   9.1.4
@schematics/angular                9.1.4
@schematics/update                 0.901.4
ng-packagr                         9.1.3
rxjs                               6.5.5
typescript                         3.8.3
webpack                            4.42.0

Anything else relevant?
i do another two imports and they are working fine
@import "~boosted/scss/functions";
@import "~boosted/scss/variables";
@import "~boosted/scss/mixins";

and changing the import to
@import "~boosted/scss/_mixins"; will make the build run successfully
it can be related to that there is a directory named mixins inside the bootstrap/scss directory, it's just a a guess

Hi @robertIsaac, libraries and applications are built using 2 separate and very different pipelines which may result in some different behaviours.

Applications are built using Webpack with sass-loader which implements it's own resolution strategy for tilda imports.

Libraries are built ng-packagr which use node-sass-tilde-importer  to resolve tilda imports.

Thus, this issue is not caused by Angular CLI. I suggest you open a feature request to ng-packagr to create it's own importer or node-sass-tilde-importer  to add the implementation to be similar to sass-loader.
Note: ~ is non standard way to import from node_modules, my personal recommendation would be to use style include paths and remove the ~ import.


Revoke Token & Invalidate Sessions Status Code 415?

I'm attempting to POST to the revoke-token endpoint, here is a breakdown of the request headers:

However, the response is coming back with a status code of 415, with the following details:
Unsupported media type "application/json, application/json;charset=utf-8" in request.

Could anyone advise why we're seeing these issues for these endpoints? What is the correct content type?

Hi @asencis,
Sorry for the massive delay. Here, I tried it myself on my local environment. Firstly, I created a new token by using hte convert-token endpoint. You can see the token created below:

If you go to your admin dashboard you will see the token created:

Copy the newly created access_token.
Byild the request to the new endpoint revoke-token. The Content-Type is just application/json. Once you fire the request you will see the status code is 204.

If you see the dashboard again, there will be no more token there:


Add testing add-on for enable special testing use cases and configuration options

meh tests fails, but works locally (?) :(

does not work either... weird.

@sneridagh What's the intention with the voltoconfig?
For me the idea was to be able to take the stuff that we put right now in package.json (and we only do addons, right now) and be able to put it in a separate json or js file, using the rc type of libraries https://github.com/davidtheclark/cosmiconfig or https://www.npmjs.com/package/rc-config-loader

So, this PR enables a way to add addons (mainly for testing) then run the tests with these custom builds. This might be handy on adding features that plain Volto does not provide (eg widgets, multilingual or Guillotina specifics).
Not happy with the outcome, since the method seems a bit cumbersome (using a script to modify package.json and add a custom jsconfig.json), I realised that might be that we could also do it in a more simple way using a higher config override, using a volto.config.js file.
I like to have the addon approach (specially for G), this will allow us to reorganize the tests in a more sane way). But having a better way to override thing in the build might be also useful. Not sure if having both around is more confusing than useful.
I would like also to extract things from package.json but for now we can only extract the 'addons' key... the rest is required for workspaces to work. Other option would be to read them from volto.config.js in the addonsloader.
We have to talk about this PR... not sure of the outcome, and if we really need them both or only one of them.

@sneridagh I see, so it opens the posibility of loading addons directly in volto, instead of going via Volto project. For us, developers, it would be nice, just cloning Volto and quickly enabling an addon. Though it could be confusing for newbies.
Even so, I think it would be better to just enable rc-style configuration of that "addons" package.json key. Then we can drop a .voltorc.js or .voltorc.json (Similar to https://eslint.org/docs/user-guide/configuring/configuration-files#configuration-file-formats) with extra addons (and this file can be simply copied in CI envs). And the code paths would be the same, discover voltorc file in "project root", which will be volto itself when running standalone.

So, RAZZLE_TESTING_ADDONS=test-addon yarn start I thought it might be better for exactly this use case.

@sneridagh Looks good!

@tiberiuichim cleanup and docs


Add e2e test using the remoteread API

using the same format as the storeapi e2e test, add a e2e test for remoteread api

@bwplotka These are e2e tests for Remote Read integration

I included this in https://github.com/thanos-community/obslytics/pull/15 PR (: Thanks!


Improve coverage for rule-babel-config

Environment

sonarwhal latest
Node.js v8.9.3:
npm v5.7.1:
OS: macOS

Steps to reproduce
Do npm install && npm test in rule-babel-config:

Testing again, everything passes, except the coverage which isn't very good.


  When we try to explode this values we are getting exception. (see the below in RED)

df=dfx1.selectExpr("explode(instrument) as ins").select("ins._id","ins.master_information").show(100)
+---------+--------------------+
|      _id|  master_information|
+---------+--------------------+
|145966938|[[WrappedArray([U...|
|145967107|[[WrappedArray([U...|
+---------+--------------------+
df=dfx1.selectExpr("explode(instrument) as ins").select("ins._id","ins._bsid").show(100)
Traceback (most recent call last):
File "", line 1, in
File "C:\spark-2.0.2-bin-hadoop2.7\python\pyspark\sql\dataframe.py", line 861, in select
jdf = self._jdf.select(self._jcols(*cols))
File "C:\Python27\lib\site-packages\py4j\java_gateway.py", line 1257, in call
answer, self.gateway_client, self.target_id, self.name)
File "C:\spark-2.0.2-bin-hadoop2.7\python\pyspark\sql\utils.py", line 69, in deco
raise AnalysisException(s.split(': ', 1)[1], stackTrace)
pyspark.sql.utils.AnalysisException: u'No such struct field _bsid in _id, master_information;'

This looks like maybe a typo in your SQL. _bsid appears to be under instrument_xref, not instrument


"apply" of "Series" does not accept returns of an object of type set[Any]

Describe the bug
"apply" of "Series" does not accept returns of an object of type set[Any]
To Reproduce
1. Provide a minimal runnable pandas example that is not properly checked by the stubs.
import pandas as pd

data = {'list1': [1, 2, 3], 'list2': ['a', 'b', 'c'], 'list3': [True, False, True]}
series_of_lists: pd.Series = pd.Series(data)

series_of_lists = series_of_lists.apply(lambda x: set(x))

2. Indicate which type checker you are using (mypy or  pyright).
I'm using mypy 1.1.1
3. Show the error message received from that type checker while checking your example.
6: error: Argument 1 to "apply" of "Series" has incompatible type "Callable[[Any], Set[Any]]"; expected "Callable[..., Union[str, bytes, date, timedelta, datetime64, timedelta64, int, float, complex, Sequence[Any], Mapping[Any, Any]]]"  [arg-type]
6: error: Incompatible return value type (got "Set[Any]", expected "Union[str, bytes, date, timedelta, datetime64, timedelta64, int, float, complex, Sequence[Any], Mapping[Any, Any]]")  [return-value]

Please complete the following information:

OS: Windows
OS Version 11
python version 3.11.1
version of type checker: mypy 1.1.1
version of installed pandas-stubs pandas-stubs <IP_ADDRESS>321

Additional context
It seems that mypy is still not satisfied with the lambda function used in the apply method, as it expects the return value to be one of the types listed in the error message. But when I print type(series_of_lists[0]), I do get <class 'set'>.

Need to add Set here:
https://github.com/pandas-dev/pandas-stubs/blob/e3d9a1f69f481015c47b5716e7cfefcdffd9d63b/pandas-stubs/core/series.pyi#L764
PR welcome.

For tests, you use from typing_extensions import assert_type, what is assert_type, it checks if the types are coherent with the stubs?

It tells the type checker to verify that the type we expect is the type that the type checker infers.  At runtime, it just returns the first argument.
See https://docs.python.org/3/library/typing.html#functions-and-decorators

The test I would've wanted to do is the following:
def test_types_apply_set() -> None:
    series_of_lists: pd.Series = pd.Series(
        {
            'list1': [1, 2, 3],
            'list2': ['a', 'b', 'c'],
            'list3': [True, False, True]
        }
    )
    check(assert_type(series_of_lists.apply(lambda x: set(x)), pd.Series), pd.Series)

But it obviously already works because apply can use the lambda x: set(x) function.

But it obviously already works because apply can use the lambda x: set(x) function.

Does the test pass with pyright and mypy ?  I would think that both of those would fail without changing the stubs.
Our tests are valid runtime code, but we also run the tests through the type checkers.  See https://github.com/pandas-dev/pandas-stubs/blob/main/docs/setup.md for setting up your environment, and https://github.com/pandas-dev/pandas-stubs/blob/main/docs/tests.md to see how to run specific tests.

My bad, I just realized what I was running wrong, sorry. PR should be coming in a bit.


Byte buf allocators

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

The only reason that this is failing the windows build at the moment is the scheduler_reentrant_safe test. This is not related to this code change and is currently being worked on by another developer.


upgrade sketch to 3.6.1

The download url is not version related
maybe change
version -> :latest
sha256 -> :no_che

is better

Updating the :checkpoint value in appcast is required. You can find it with curl --silent --compressed "{{appcast_url}}" | sed 's|<pubDate>[^<]*</pubDate>||g' | shasum --algorithm 256 | awk '{ print $1 }'.
Alternatively, you may wish to use cask-repair. It can at once update the cask’s version (according to what you give it) taking care of updating both the cask’s sha256 and the appcast’s :checkpoint, while still giving you the chance to perform other manual fixes.
You can easily install it with brew install vitorgalvao/tiny-scripts/cask-repair. cask-repair --help will show you some options, but as a whole the script will guide you through the update process.

Thank you for the contribution. It was merged directly as 4bd8c7d9221992f636476f8650e65f31dafe77b8 to keep commit history cleaner. Your contribution is still credited to you.


Submit this code as a patch to the .NET runtime

That way, any and everyone using .NET will get the speed improvement.

+1
cc @EgorBo

Filed https://github.com/dotnet/runtime/issues/48646

Our PR has been merged with runtime. Will be part of the next release (7.x) .


User Management only works with English systems

Some methods from User library are not working with different than English system language.
Issue is related with translations of net user output automatic translations.

bug was fixedd with Continuous.User v3.0.8 package version


Interface with Id generated as optional

Description
When running the generation script, even that the open api specification says that the ID key is mandatory the generation shows the ID as optional, can this generation be configured for the IDs, and for all the fields as not all are optional.
Reproducible example or configuration

C# dto
public class UserDto
{
public int UserID { get; set; }
public string FullName { get; set; }
public string Email { get; set; }
public string PhoneNumber { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string StateOrProvince { get; set; }
public string PostalCode { get; set; }
public string Country { get; set; }
public string JobTitle { get; set; }
public string Bio { get; set; }
public DateTime CreatedDate { get; set; }
public DateTime LastUpdatedDate { get; set; }
}
types.gen.ts
export type UserDto = {
userID?: number;
fullName?: string | null;
email?: string | null;
phoneNumber?: string | null;
address?: string | null;
city?: string | null;
stateOrProvince?: string | null;
postalCode?: string | null;
country?: string | null;
jobTitle?: string | null;
bio?: string | null;
createdDate?: string;
lastUpdatedDate?: string;
};
OpenAPI specification (optional)
  "UserDto": {
    "type": "object",
    "properties": {
      "userID": {
        "type": "integer",
        "format": "int32"
      },
      "fullName": {
        "type": "string",
        "nullable": true
      },
      "email": {
        "type": "string",
        "nullable": true
      },
      "phoneNumber": {
        "type": "string",
        "nullable": true
      },
      "address": {
        "type": "string",
        "nullable": true
      },
      "city": {
        "type": "string",
        "nullable": true
      },
      "stateOrProvince": {
        "type": "string",
        "nullable": true
      },
      "postalCode": {
        "type": "string",
        "nullable": true
      },
      "country": {
        "type": "string",
        "nullable": true
      },
      "jobTitle": {
        "type": "string",
        "nullable": true
      },
      "bio": {
        "type": "string",
        "nullable": true
      },
      "createdDate": {
        "type": "string",
        "format": "date-time"
      },
      "lastUpdatedDate": {
        "type": "string",
        "format": "date-time"
      }
    },

System information (optional)
No response

Hi @oscarlagatta, this is an issue with the OpenAPI specification. If you want to mark fields as required, you need to use the required keyword.

Thanks
On Tue, 12 Nov 2024 at 13:28, Lubos @.***> wrote:

Closed #1277 https://github.com/hey-api/openapi-ts/issues/1277 as not
planned.
—
Reply to this email directly, view it on GitHub
https://github.com/hey-api/openapi-ts/issues/1277#event-15264716545, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABC3QELVNWVNEFU2BU2BF2D2AH66PAVCNFSM6AAAAABRTY3ANOVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJVGI3DINZRGY2TINI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi @oscarlagatta, this is an issue with the OpenAPI specification. If you want to mark fields as required, you need to use the required keyword.

Probably it's not question for you :). But does it make sense to add "required" attributes to response (GET) models? I'm not sure it makes sense for me to request that for API owners.

@karolis-kniuksta-trimble it depends. If the API doesn't declare them as required, that means they might not be present. The API should uphold that contract. In practice, you might find an API where they are always present but the OpenAPI specification is not accurate. I suspect that's the source of this thread above.
If you have control over the spec, you should declare them as required. If not, you might want to clean it up yourself on the client side if you want cleaner types. There should be features related to this in the future so people can fix up specs, but right now it's not a common problem enough

@karolis-kniuksta-trimble no, required marks the properties as always present on the object https://json-schema.org/understanding-json-schema/reference/object#required
RE API generation, you need to maintain the OpenAPI specification, that's the manual step. The generated code will be only as good as the input specification provided


checker(dm): support optimistic checker

What problem does this PR solve?

Issue Number: close #4328
What is changed and how it works?

don't check sharding tables if not exist checkpoint
support to check optimistic compitible

Check List
Tests

Unit test
Integration test

Side effects

Possible performance regression
Increased code complexity
Breaking backward compatibility

Related changes

Need to cherry-pick to the release branch
Need to update the documentation
Need to update key monitor metrics in both TiCDC document and official document

Release note
Please add a release note.
If you don't think this PR needs a release note then fill it with `None`.

/run-dm-integration-test

/run-dm-integration-test

/run-dm-integration-test

/run-dm-integration-test

/run-dm-integration-test

/run-dm-integration-test
/run-verify

don't check sharding tables if not exist checkpoint

this PR description is wrong?

don't check sharding tables if not exist checkpoint

this PR description is wrong?

my bad. The correct is "don't check sharding tables if exist checkpoint"

all comment fixed, ptal again, thank you @lance6716 @Ehco1996
/run-dm-integration-test

/run-dm-integration-test

/hold
change optimistic-checker to multi-thread.

/unhold
/run-all-tests

/merge

/run-kafka-integration-test

/run-dm-integration-test


Mandatory status.conditions breaks operator upgrade (5.9.2 -> 5.9.10)

Change in #1600 added a status.conditions field for GrafanaFolder, which is mandatory.
This breaks upgrade process with the message:
error validating existing CRs against new CRD's schema for "grafanafolders.grafana.integreatly.org": error validating custom resource against new schema for GrafanaFolder internal-monitoring/benchmarks: [].status.conditions: Required value
We think the field should be marked as optional.

Thanks for the report! I'll release a fixed version tomorrow


librespot/snapcast sometimes plays like /dev/random :fearful:

Hi,
librespot: 0.4.2
snapserver v0.27.0

I'm trying to solve an annoying issue in my snapcast/librespot installation.
In a few words : When I move between tracks in spotify OR move to another time in the current track, sometimes it works, sometimes my whole snapclients plays random noise very loud !
I'm not alone with this issue : https://github.com/badaix/snapcast/issues/1170
Guys at snapcast (see above ticket) are wondering if librespot could be the one responsible ?
snapcast collects samples from the librespot STDOUT, and suggestion is that librespot could sometimes emit someting else on it's STDOUT (log) ? Or crash ?
Does this situation rings you sometings ?
Thanks

Or crash ?

I just see that librespot has the same pid before and after the bug occurs. So I'm sure it does not crash.

I think that issue over at https://github.com/badaix/snapcast/issues/1170 is raising the right questions to isolate the problem.
librespot doesn't output anything else to stdout, that I know.

librespot doesn't output anything else to stdout, that I know.

I confirm that I did the test to pipe librespot to vlc then run my "recipe", nothing wrong !
I go back to snapcast for a printf hunt ;-)
Thanks


dfdlx:trace function output not visible anywhere

The only way to debug expressions currently is by peppering them with calls to dfdlx:trace(expr, 'info string').
This would normally write "info string" then the value of the expr to stdout or something.
I couldn't find the output in any output tab or log tab in the vscode debugger. This should be console output from the daffodil parser.
To reproduce:
If you take the DFDLSchemas/CSV example, and add
xmlns:dfdlx="http://www.ogf.org/dfdl/dfdl-1.0/extensions"
At the top of the csvHeaderEnforced.dfdl.xsd file, then wrap the dfdl:occursCount expression so it looks like:
dfdl:occursCount="{ dfdlx:trace(fn:count(../../header/title), 'count: ') }"
Then it should output a line of 'count: N' where N is the number of headers. That is once it gets to the item array.
I could not find the word "count" in any output tab.

Note that the most recent version of Daffodil outputs the dfdlx:trace message to the info log level via Log4J. It's possible the extension is not capturing log4j output and so it's just getting dropped, or maybe the default log level used by the debugger doesn't include the info level.


Handling subdomains and configuration

In current behaviour if there is a need to block domain and subdomain rpz file must explicitly specify both in the configuration file. Example
example.com CNAME .
*.example.com CNAME .
This can be an issue when building large files and converting from other formats to RPZ.
It would be easier and simpler if we had a choice to only specify domain and additional configuration setting to imply that all subdomain should be included in the defined ACTION. The configuration setting would only be "enable | disable" so the admionistrator can switch back to default (current state).
Potential use-case
As mentioned, this would be super useful when building large RPZ lists or converting existsing non-rpz files to RPZ formats.

With a local zone statement both the name and the subdomains can be targeted in one line. Like local-zone: "example.com" static gives nxdomains for the example.com name and its subdomains. But that is not the RPZ.
The RPZ functionality is based on the specification of it. The feature that is mentioned is not in that. The links https://datatracker.ietf.org/doc/html/draft-ietf-dnsop-dns-rpz-00  and https://dnsrpz.info/ are the resources for that.

I understand that RPZ specification you must be explicit and write down domain and subdomain. I am not suggesting we change that. In a default config this is not changed and it would work as it is in current state.
Called it a Unbound "custom" RPZ extention. With the added config flag we can enable this new behaviour/extension, that is all. So we are not changing RPZ spec but providing additional functionality. Admins will have the option to enable it if they choose it.


Copy back missing docs and build scripts

Part of #78.
Instead of overriding build I left superset-build as a new target. Without COMMANDS defined the go build does nothing, and this way make build does not complain about ignored commands.

I fixed all comments on 0f39b5ba.

ok. I need it. Merging.


Factor out authenticators into a separate package

Just shuffling stuff around, no real changes
#7

Reviewed 13 of 13 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion, all commit checks successful.

auth_server/authn/authn.go, line 27 [r1] (raw file):
This is a pretty strict requirement for the users of the interface, which forces them to have synchronization, even though implementation should be goroutine-safe as well. Additional reasoning why it is done this way would reduce the confusion.

Comments from the review on Reviewable.io

Review status: all files reviewed at latest revision, 1 unresolved discussion, all commit checks successful.

auth_server/authn/authn.go, line 27 [r1] (raw file):
it's actually not a requirement but a guarantee, which makes it easier for implementors :)

Comments from the review on Reviewable.io

Review status: all files reviewed at latest revision, 1 unresolved discussion, all commit checks successful.

auth_server/authn/authn.go, line 27 [r1] (raw file):
Not that much, they still have to take care to make the implementation goroutine-safe. And the user must also take care (independetly of the implementation) to not call Authenticate after Stop and not call Stop until all Authenticate calls return.

Comments from the review on Reviewable.io

Review status: all files reviewed at latest revision, 1 unresolved discussion, all commit checks successful.

auth_server/authn/authn.go, line 27 [r1] (raw file):
to the goroutine-safe requirement my response is - tough cookie :)
(and i just realized taht with the addition of leveldb, my google auth is actually not safe, so i'll fix that).
but the guarantee provided for Stop actually makes synchronization easier. implementations may or may not want to make use of it, but it's there.

Comments from the review on Reviewable.io


The problem when i catkin deps fetch

INFO:deps: Will print status messages while cloning.
INFO:deps: Using 4 threads.
INFO:deps: Avoid fetching ROS packages.
INFO:deps: [ROS]: Searching all packages.
INFO:deps: [ROS]: Not found. Ignoring pre-defined ROS packages.
INFO:deps: Searching for dependencies.
[rangenet_lib]           : Found 0 valid dependencies
[catkin]                 : Found 5 valid dependencies
[semantic_suma]          : Found 2 valid dependencies
INFO:deps: Package [glow]: Skip default urls. Explicit one defined: https://github.com/jbehley/glow.git
INFO:deps: Package [rangenet_lib]: Skip default urls. Explicit one defined: https://github.com/PRBonn/rangenet_lib.git
[glow]                   : Found 0 valid dependencies
INFO:deps: Checking merged dependencies:
[python-argparse]        : [NOT FOUND]
[python3-catkin-pkg]     : [NOT FOUND]
[python-catkin-pkg]      : [NOT FOUND]
[python-empy]            : [NOT FOUND]
[python3-empy]           : [NOT FOUND]
[glow]                   : [FOUND]: https://github.com/jbehley/glow.git
[rangenet_lib]           : [FOUND]: https://github.com/PRBonn/rangenet_lib.git
INFO:deps: Cloning valid dependencies:
[glow]                   : [ALREADY EXISTS]
[rangenet_lib]           : [ALREADY EXISTS]
INFO:deps: New packages available. Process their dependencies now.
INFO:deps: Searching for dependencies.
INFO:deps: No new dependencies. Done.
INFO:deps: Pulling packages:
[rangenet_lib]           : [RUNNING]
[glow]                   : [RUNNING]
Traceback (most recent call last):
File "/home/rico/anaconda3/envs/sumapy3/bin/catkin", line 8, in
sys.exit(main())
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools/commands/catkin.py", line 266, in main
catkin_main(sysargs)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools/commands/catkin.py", line 261, in catkin_main
sys.exit(args.main(args) or 0)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools_fetch/cli.py", line 154, in main
pull_after_fetch=opts.update)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools_fetch/cli.py", line 273, in fetch
updater.update_packages(packages)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools_fetch/lib/update.py", line 107, in update_packages
package, picked_tag = future.result()
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/concurrent/futures/_base.py", line 425, in result
return self.__get_result()
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/concurrent/futures/_base.py", line 384, in __get_result
raise self._exception
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/concurrent/futures/thread.py", line 56, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools_fetch/lib/update.py", line 78, in pick_tag
output, branch, has_changes = GitBridge.status(folder)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/site-packages/catkin_tools_fetch/lib/tools.py", line 36, in status
cwd=repo_folder)
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/home/rico/anaconda3/envs/sumapy3/lib/python3.6/subprocess.py", line 438, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command 'git status --porcelain --branch' returned non-zero exit status 128.
(sumapy3) rico@rico-Lenovo-Legion-R9000P2021H:~/catkin_ws/src$

please help me

Hi @Rico-op, thanks for using our code. This seems to be an installation problem.
I never met this problem. Let's keep it open and see whether there is someone else who can provide any solutions.


Optimize package size

Replacing @solana/wallet-adapter-walletconnect with<EMAIL_ADDRESS>adds around 1.5 mb to my bundle. (before compression)
That is way too much for a wallet connector, especially since vite/rollup now struggles with separating imports, the size of my bundles main .js file has doubled!

@web3modal/base and @web3modal/scaffold-ui are added to the bundle. At a minimum that's 141 kB + 193 kB added to the bundle. 334 kB.

I tried replacing rainbowkit with @web3modal/wagmi (replacing no other dependencies) and ended up with 252 kB more in our base bundle. That's a non-starter.

Are there any plans to address this?

How are you measuring this? @mlenser
RainbowKit is bigger but can fool some tools because of dynamic importing on page load.
We have a lot of features in AppKit, you can try by disabling what you won't be using. We will release v6 soon and a lot of these should be addressed.

The first images are bundlephobia.
The 252 kB is from a bundle analysis script on every PR. I've also checked it with https://www.npmjs.com/package/@next/bundle-analyzer. It's accurate.
The web3modal libs combined are 334 kB. Rainbowkit is around 62 kB : https://bundlephobia.com/package/<EMAIL_ADDRESS>The difference between 334 and 62 is close to the difference by the bundle analysis script.

The analysis on Web3Modal is accurate but the one in RainbowKit is not, bundlefophia is pretty bad for this context and doesn't give you the full bundle size of RainbowKit.
Web3Modal is not 200kb though it's like 700kb, RainbowKit is around the same size.
We are using this, would love your input
<EMAIL_ADDRESS>

The sizes mentioned above are gzipped sizes which is what nextjs and other tools use as a comparison.

I've created a repo which shows the bundle size comparisons.

Base branch with wagmi, viem, and react-query is 92.3 kB on the First Load JS
Rainbowkit is 266 kB on the First Load JS
web3modal is 494 kB on the First Load JS.

Both apps use a custom connect button. web3modal seemed to bloat once using the connect button. Without it, the bundle size is not bloated. All 3 branches of that repo can be built locally with next build to see the bundle size which I copied to the README.md for documentation.
vite-size is probably a great tool. I'm not sure what numbers you're seeing, but the above numbers are actual bundle sizes with nextjs. Your numbers are probably without the bloat from a custom button?
Conclusions based on the actual nextjs numbers:

rainbowkit with a custom button is adding ~174 kB to the bundle
web3modal with a custom button is adding ~402 kB to the bundle

Vite let's you visualize the split code but it gives you the full bundle size (it doesn't filter dynamic imported files). Next will only show the first load (First Load JS), if you look at the network console you will see after the first load there are a lot of js files loaded. Bundlephobia will also ignore this.
Anyways, dynamic importing is good practice when necessary and I do agree that AppKit right now is HUGE. v6 should reduce this drastically and we'll keep working on improving this.

Thank you for looking into this.
Rainbow definitely could be loading things after the initial load. That first initial load is the most important so deferring some of the UI on web3modal via dynamic imports may be something to consider as you're saying.
I look forward to v6. Do you guys have any blogs on it or some general release timeframe?

you can follow the PR here:
https://github.com/WalletConnect/web3modal/pull/2766

I tried the latest @reown/appkit version via https://docs.reown.com/appkit/next/core/installation while using next/dynamic for the button itself.
It added ~340kB to my layout file and that's after replacing rainbowkit (~60kB). So it's adding ~400kB:

If I compare prod vs appkit builds the layout is not listed and everything seems slightly better overall

Prod
Appkit

I compared the bundle itself:

Prod
Appkit

The total chunk size is 5.56MB on prod and 4.84 MB with Appkit (parsed, not gzipped sizes in this case). However, the largest chunk for Appkit is 362 KB (1.42MB not gzipped), which dwarfs any previous chunks. That chunk is definitely getting to the users and would impact them aversely.
Some issues with the appkit bundle:

UI is 76KB + 58KB.

Possibly split the massive universal-provider?

bn.js is 11KB which should only be used for ethers, not wagmi/viem versions. @reown/appkit-adapter-wagmi is another 42KB on top of the base bundle so it's doubling up a bit here.

What it really boils down to is createAppKit and WagmiAdapter should be isolated on their own. WagmiAdapter is already is on its own (via @reown/appkit-adapter-wagmi). createAppKit should be on its own with a very minimal bundle size. Then when we lazy load the button the impact of the size of the UI chunks should be minimal.

Quick notes on reducing bundle size:
Use native javascript bigInt
npm list bignumber.js
└─┬<EMAIL_ADDRESS>extraneous
  └──<EMAIL_ADDRESS>deduped

npm list bn.js
└─┬<EMAIL_ADDRESS>extraneous
  ├─┬<EMAIL_ADDRESS>  │ └─┬ cbw-sdk@npm<EMAIL_ADDRESS>  │   └──<EMAIL_ADDRESS>  └─┬<EMAIL_ADDRESS>extraneous
    └─┬<EMAIL_ADDRESS>      └──<EMAIL_ADDRESS>
Use noble crypto instead of elliptic and @stablelib/* (partial PR exists: https://github.com/WalletConnect/walletconnect-monorepo/pull/5333)
npm list elliptic
├─┬<EMAIL_ADDRESS>extraneous
│ ├─┬<EMAIL_ADDRESS>│ │ ├─┬<EMAIL_ADDRESS>│ │ │ └─┬<EMAIL_ADDRESS>│ │ │   └─┬<EMAIL_ADDRESS>│ │ │     └──<EMAIL_ADDRESS>deduped
│ │ └─┬<EMAIL_ADDRESS>│ │   └─┬<EMAIL_ADDRESS>│ │     └──<EMAIL_ADDRESS>deduped
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>extraneous
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>deduped
├─┬<EMAIL_ADDRESS>extraneous
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>deduped
├─┬<EMAIL_ADDRESS>extraneous
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>deduped
└─┬<EMAIL_ADDRESS>extraneous
  └─┬<EMAIL_ADDRESS>extraneous
    └──<EMAIL_ADDRESS>deduped

npm list @stablelib/x25519
├─┬<EMAIL_ADDRESS>extraneous
│ ├─┬<EMAIL_ADDRESS>│ │ └─┬<EMAIL_ADDRESS>│ │   └─┬<EMAIL_ADDRESS>│ │     └──<EMAIL_ADDRESS>deduped
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>extraneous
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>deduped
├─┬<EMAIL_ADDRESS>extraneous
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>deduped
├─┬<EMAIL_ADDRESS>extraneous
│ └─┬<EMAIL_ADDRESS>extraneous
│   └──<EMAIL_ADDRESS>deduped
└─┬<EMAIL_ADDRESS>extraneous
  └─┬<EMAIL_ADDRESS>extraneous
    └──<EMAIL_ADDRESS>deduped

also the problem of splitting into a large number of packages
vite vue vendor chunk:

'reown-appkit': [
  // hidden deps
  '@reown/appkit-common',
  '@reown/appkit-polyfills',
  '@reown/appkit-scaffold-ui',
  '@reown/appkit-siwe',
  '@reown/appkit-ui',
  '@reown/appkit-utils',
  '@reown/appkit-wallet',

  // real
  '@reown/appkit',
  '@reown/appkit-adapter-wagmi',
],


feat: Add bcrypt password hashing and salting for secure authentication

Code Stack: Node.js, Express.js, MongoDB (assuming based on the use of User model)
Close #1407
Type of PR

[x] Bug fix
[X] Feature enhancement
[x] Documentation update
[ ] Other (specify): _______________

Checklist:

[X] I have performed a self-review of my code.
[X] I have commented my code, particularly in hard-to-understand areas.
[X] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[X] I have gone through the contributing.md file before contributing
[X] I have Starred the Repository.

Additional context:
This change requires updating the bcrypt package in package.json and potentially updating the User model to accommodate longer password hashes. Existing users' passwords will need to be rehashed if implementing these changes in a live system.
Are you contributing under any Open-source programme?

[x] I am contributing under GSSOC'24 Extended
[x] I am contributing under Hacktoberfest'24

Comment:
This pull request introduces bcrypt password hashing with added salt to enhance security for user authentication. By implementing bcrypt, we ensure that passwords are securely stored and difficult to crack, providing an additional layer of protection against unauthorized access.
Key points:

bcrypt: A well-established cryptographic algorithm designed for secure password hashing.
Salting: Random data added to each password before hashing to ensure unique hashes even for identical passwords.

This update is essential for improving the overall security of the authentication process.


IRC Channel

I've created #FlightPHP channel on IRC network Freenode, please join and lets discuss FlightPHP, everybody is welcome.

IRC is slow, try Discord
(Also, self-like, really?)

Ok sorry for going OT but I got really curious. How is IRC slow..?

you basically have to wait all day day for an answer, lots of idlers, no type indication (therefore you cannot predict when answer is being typed)

@aolko, If you dont like IRC, just simply dont join. We are many others who likes IRC and uses it daily.


val inside Java 8 lambda expressions

I'm building a project using Gradle 2.5 and JDK 1.8.
Something outside of a lambda compiles correctly.  e.g.

         val params = new MapSqlParameterSource();
  params.addValue("patientId", patientId);

However if trying to compile something inside a lambda:

                          (rs, rowNum) -> {
                  val holder = new PatientPhoneNumberHolder(patientPhoneNumberRepository.findOne(rs.getInt("record_id")));
                  holder.setPhoneNumber(rs.getString("phone_number"));
                  return holder;
          }

I receive this error:

error: incompatible types: PatientPhoneNumberHolder cannot be converted to val

Is Lombok supported with lambda expressions?  I recall someone running into an issue with "val" when dealing with nested classes...  not sure if it's somewhat related with this issue.

I am also using the latest version of Lombok as well (1.16.6)

Indeed. This does not compile and indicates that the val inside the lambda expression is not even visited:
import java.util.List;
import java.util.ArrayList;
import java.util.stream.Collectors;
import lombok.val;

public class LambdaVal {
    public static void main(String[] args) {
        List<String> strings = new ArrayList<String>();
        List<String> result = strings.stream().filter(s -> {
            val r = Boolean.TRUE;
            return r;
        }).collect(Collectors.toList());
    }
}

Still fails on 1.16.8 on javac. Works fine with ecj.

I have been experiencing this for a while. I always avoid using val inside a lambda because of it. It would be great if this could be fixed because it would greatly reduce type annotation noise in a lambda closure. For now, I just create methods that use val and use method references in streams, etc..

Is fixed in the edge release and will be part of the next release. Can someone verify this on their code base?

Still fails in Lombok 1.16.16 (latest stable version)

FWIW, it works great  for me in 1.16.12.


Compare against null because sequenceNumber can be 0

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/6233
Tests / QA steps

Open app and login
Create a new chat by going + > New Chat and start chat with a user never had a conversation before
Type and send a single message
Long tap on it, mark as unread
Go back to LNH. Confirm its message preview is bolded to indicate its unread (unlike the issue video).

Tested On

[x] Web
[ ] Mobile Web
[ ] Desktop
[ ] iOS
[ ] Android

Screenshots

Web

Mobile Web

Desktop

iOS

Android

On HOLD since we're on a merge freeze IPO week.

Off HOLD and ready for review.

Updated.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by @chiragsalian in version: 1.1.15-18 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by @roryabraham in version: 1.1.16-10 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Bower support

Thanks for your plugin I would like to use it.
My application uses Bower for dependency management so it would be very nice if you could create a bower.json file and GitHub release versions for this plugin.

Thanks @bennyn – should be done and accessible over bower (as knockout-es6-collections); let me know if you have any issues.


Add OmniJobs

Adding omnijobs.co to the list of remote job boards

@mr-adaro We already have a lot of remote jobs resources. Please, consider contributing to some other category with fewer resources.


fixes for xcode 14.3

Hi Team,
fixing the pod listing issues when running using Xcode 14.3. We have a dependency of this library in our project and this need to be fixed before we can release our library.
Please let me know if there is anything else that I need to do to get this merged.
thank you

fixes below issues with Xcode 14.3: Without the fix pod lib lint fails on cocoa pods.
- NOTE  | [iOS] xcodebuild:  Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 11.0 to 16.4.99. (in target 'Pods-App' from project 'Pods')

- NOTE  | [OSX] xcodebuild:  /var/folders/qm/2j1_fcg57bq62slhfc1sy2880000gr/T/CocoaPods-Lint-20230620-31345-1c645xp-DSJSONSchemaValidation/App.xcodeproj: warning: The macOS deployment target 'MACOSX_DEPLOYMENT_TARGET' is set to 10.9, but the range of supported deployment target versions is 10.13 to 13.3.99. (in target 'App' from project 'App')

@podkovyr..need some help with this. thank you


my config single_quote is ignored

It may be a bug
vimrc
let g:prettier#config#print_width = 80

" number of spaces per indentation level
" let g:prettier#config#tab_width = 2
let g:prettier#config#tab_width = 4

" use tabs over spaces
let g:prettier#config#use_tabs = 'false'

" print semicolons
"let g:prettier#config#semi = 'false'
let g:prettier#config#semi = 'true'

" single quotes over double quotes
let g:prettier#config#single_quote = 'true'

" none|es5|all
let g:prettier#config#trailing_comma = 'none'

I think the prettier ignoring my configuration about single_quote. Because it turns all quotes to double quotes. I had also tried other configuration, like tab_width. Not work too.
PrettierVersion: 0.2.7
PrettierCliVersion: 1.13.7
PrettierCliPath: prettier
And this work in previous versions until I update vim-prettier today.

Hi @dedoyle,
Do you mind providing the output of :PrettierCliPath ?
Also does your project have some prettier configuration files being written somewhere ?
The above behaviour would happen if somewhere above the ancestry of directories of where you are editing your file may have a prettier config overwrite

I'm experiencing the same issue. No settings are working and I have no .prettierrc, prettier.config.json or such present either that could interfere.
PrettierCliVersion: 1.13.7
PrettierVersion: 0.2.7
PrettierCliPath: /home/drager/my-project/node_modules/.bin/prettier

@mitermayer I don't have any configuration for prettier except the configuration in vimrc. I use Gvim in win7. And the output of :PrettierCliPath is just prettier. Nothing else.
Gvim: 8.0 (Features included +python, +lua, +perl)

I will look into this tonight and post findings in here and if able to reproduce will fix this issue and create a release

I tested this by editing a file foo.js that has simple content
function a() {
  return 2;
}

with a .prettierrc file in the same directory with contents:
{
  "tabWidth": 8
}

tested with both :Prettier and :PrettierAsync and got the outpout:
function a() {
      return 2;
}

Will investigate a bit more tomorrow to see if it has been any change on the API for forcing single quotes from the cli

I had an error where I had to set the parser explicity to 'babylon' on .prettierrc and also if requirePragma is true then the pragma now has to be
/**
 * @format
 */```

This seems to no longer work

//@format

I hope my findings help, I ended up disabling the pragma requirement to avoid changing all my pragmas to the new format, but I would like to find a way to make it work (was the old style a vim-prettier feature?)

I will resume working on vim-prettier in 2 weeks, been very busy at work at this stage as I am about to go on paternity leave in the next 2 weeks, I really appreciate you raising this issue

I got inspired from mvgrimes. So I delete .editorconfig file and the prettier configuration in vimrc work now.

let g:prettier#config#config_precedence = 'file-override'
works for me


Display change log on app update

overview
Display changelog during app update
behavior
Current behavior: App does not auto-update
Desired behavior: When app updates, it should offer to display a list of changes included in the update

Rolled into #528


Bug: Section [container] has no property [new_scopes_behavior] in create.sh

Running into issues with the ./create.sh command.
After running the command USER_PASSWORD=pword PG_ADMIN_CONSOLE_PASSWORD=pword ./create.sh dbadmin pgadmin
I'm met with the following error:
ERROR: (gcloud.config.set) Section [container] has no property [new_scopes_behavior].
Haven't been successful with any workarounds.

Did you resolve this?

Colleague figured it out—pm me at<EMAIL_ADDRESS>if you want some more info.


Upgrade Weld Core to 3.1.1.Final

@ljnelson can you do some testing with the CDI extensions with this change?


Error exporting wooden boat asset

When I try to export this wooden boat asset  from bridge, I get the following error in the houdini console, and the import fails:
Traceback (most recent call last):
  File "C:\Users/Mate/Documents/Megascans_Library/support/plugins/houdini/4.6/MSLiveLink/scripts/python\MSPlugin\MSImporter.py", line 40, in importController
    import3d.importAsset(assetData, importOptions, importParams)
  File "C:\Users/Mate/Documents/Megascans_Library/support/plugins/houdini/4.6/MSLiveLink/scripts/python\MSPlugin\AssetImporters\Import3D.py", line 504, in importAsset
    ImportUSD().importNormalUSD(assetData, importOptions, importParams)
  File "C:\Users/Mate/Documents/Megascans_Library/support/plugins/houdini/4.6/MSLiveLink/scripts/python\MSPlugin\AssetImporters\Import3D.py", line 33, in importNormalUSD
    self.usdAssetSetup(importedAssets, assetData, importOptions, importParams)
  File "C:\Users/Mate/Documents/Megascans_Library/support/plugins/houdini/4.6/MSLiveLink/scripts/python\MSPlugin\AssetImporters\Import3D.py", line 353, in usdAssetSetup
    newVariName = rchop(importedAssets[0].name(),"0")
TypeError: 'NoneType' object is not subscriptable

I can export other assets without issue.
Env:
Houdini 20.0.724 Python 3.9, Windows, Karma materials

I have updated a few things.
It seems to work on my end. can error out when some of the script isn't installed properly.
rchop() is a function I have added in Utilities/AtlasSplitter.py so if it's not installed properly it can error out.
Try copy and pasting all the files again to make sure.
If there's any other issue be sure to comment again