CMP IFrame repository

Add UUID lib for transaction id's on requests between host and global store
Isolate polyfill to inject window object
Add integration test bootstrap and container
Add Iframe communication client isolating all postMessage stuff
Add integration test using Global Store

Global Storage

Use standard consent name for cookie in read and write use cases
Improve communication adding filter for event format and unexistent command
Standarize event format in request and responses

Codecov Report

Merging #29 into feature/develop-v1.0.0 will increase coverage by 0.72%.
The diff coverage is 100%.

@@                    Coverage Diff                     @@
##           feature/develop-v1.0.0      #29      +/-   ##
==========================================================
+ Coverage                   96.53%   97.25%   +0.72%
==========================================================
  Files                          30       47      +17
  Lines                        1242     1788     +546
  Branches                      108      145      +37
==========================================================
+ Hits                         1199     1739     +540
- Misses                         43       49       +6

Impacted Files
Coverage Δ

...lstorage/application/service/WriteCookieUseCase.js
100% <ø> (ø)

...alstorage/application/service/ReadCookieUseCase.js
100% <ø> (ø)

.../iframe_communication/IframeCommunicationClient.js
98.48% <100%> (ø)

...p/infrastructure/container/BaseConsentContainer.js
83.01% <100%> (+0.16%)
:arrow_up:

...infrastructure/container/GlobalConsentContainer.js
96.82% <100%> (ø)

...ure/service/iframe_communication/requestBuilder.js
100% <100%> (ø)

...nfrastructure/command/writeCookieCommandFactory.js
100% <100%> (ø)

...re/service/iframe_communication/responseBuilder.js
100% <100%> (ø)

...rastructure/configuration/iframeConsentCommands.js
100% <100%> (ø)

src/globalstorage/application/globalStorage.js
100% <100%> (ø)

... and 28 more

Continue to review full report at Codecov.

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


ViewService enhancement to control Lifetime of secondary windows

Perhaps should wait before stable version is released.
ViewService enhancement to create secondary views and control their Lifetime. Should be used instead of INavigationService.OpenAsync.
Before using should be statically initialized in App constructor through
  public App()  {     InitializeComponent();     ViewService.Initialize(this); }
Added example to Samples/MultipleViews.

Hm, makes sense. Would you prefer using IViewService inside NavigationService and changed NavigationService.OpenAsync signature to return ViewLifeController?
Also there should be initialization to subscribe for OnWindowCreated. Currently I left this to user to call in constructor, but I would have it done somewhere automatically. Any suggestions?

The goal is to keep the current behavior without requiring a developer to learn a new approach, just give the more. We'll need a ViewLife interface.

I've change my mind about this I think will go ahead and do it but wait until version 2 when we have redstone supported.

I want INavigationService to be the same, for sure. That's used all over the place and in thousands of apps. We can't change that. But we can change the signature of OpenAsync()
https://github.com/Windows-XAML/Template10/blob/master/Template10 (Library)/Services/NavigationService/NavigationService.cs#L186
Since this is only Task, changing the return signature is not a problem. Right? No change to the developer using it, but developers who understand ViewService can get extra capabilities.

You okay with that change?

@JerryNixon absolutely. I can utilize ViewService inside NavigationService delegating call. Would it be okay for you if I add ViewService initialization(the part that subscribes to OnWindowCreated event) somewhere inside, so that users won't have to bother about this thing?

The more "taken care of" the better. If you can encapsulate all of the work and the developer just gets benefit for free, then we should definitely do it.
The Redstone message was actually for another thread and I posted it here by mistake. I think I said I would wait until RS1, but that is NOT what I want to do with this. If you get the PR in before Friday, then I would like to include it in the next NuGet release.

@JerryNixon I updated NavigationService to utilize ViewService inside and added some initialization into BootStrapper

Very nice. Needs an update to merge, unfortunately.

Updated, hope to see it without conflicts now

@JerryNixon Guess,can be merged now

@JerryNixon would you please notify here, when you will have plans to merge so that I resolved conflicts then?

We're in the process of marking all the services as Sealed. Do that, please, and go ahead and sync. The code looks good. Send me an email jnixon@microsoft when you are ready so I can jump on it and you don't have to sync up again.

Hi @JerryNixon , Sorry for delay, I've updated service with sealed modifier and merged


Failed migration to snap

Hello
After the last update from the ubuntu repo, as sugested a tried to migrate to snap part of the migration succeed but the storage part failed.
leonarit@lab16916.com@thanos:~$ sudo lxd.migrate
=> Connecting to source server
=> Connecting to destination server
=> Running sanity checks
=== Source server
LXD version: 2.21
LXD PID: 13280
Resources:
Containers: 2
Images: 1
Networks: 0
Storage pools: 1
=== Destination server
LXD version: 2.21
LXD PID: 23883
Resources:
Containers: 0
Images: 0
Networks: 0
Storage pools: 0
The migration process will shut down all your containers then move your data to the destination LXD.
Once the data is moved, the destination LXD will start and apply any needed updates.
And finally your containers will be brought back to their previous state, completing the migration.
Are you ready to proceed (yes/no) [default=no]? yes
=> Shutting down the source LXD
=> Stopping the source LXD units
=> Stopping the destination LXD unit
=> Unmounting source LXD paths
=> Unmounting destination LXD paths
=> Wiping destination LXD clean
=> Moving the data
=> Moving the database
=> Backing up the database
=> Opening the database
=> Updating the storage backends
error: Failed to update the storage pools: Failed to run: zfs list -H -t all -o name,mountpoint -r : cannot open '': invalid dataset name`
The settings were migrated to snap and the containers were still functioning, but after i rebooted the server, i started to get the following errors and cant start the container.
journalctl._lxd.log

leonarit@lab16916.com@thanos:~$ sudo zfs list
NAME                                                                                USED  AVAIL  REFER  MOUNTPOINT
lxd                                                                                9.67G  28.8G    19K  none
lxd/containers                                                                       9.00G  28.8G    19K  none
lxd/containers/nms                                                                   9.00G  28.8G  9.11G  /var/lib/lxd/storage-pools/lxd/containers/nms
lxd/deleted                                                                           346M  28.8G    19K  none
lxd/deleted/images                                                                    346M  28.8G    19K  none
lxd/deleted/images/f4c9feb3e4018ffbd793d4b80d54fb95835bb1461380f2f9b7976c7b10ac48b9   346M  28.8G   346M  none
lxd/images                                                                            300M  28.8G    19K  none
lxd/images/8fa08537ae51c880966626561987153e72d073cbe19dfe5abc062713d929254d           300M  28.8G   300M  none
I''ve found that the  mount point is empty after some research i found this post https://discuss.linuxcontainers.org/t/lxd-zfs-mount-empty/831/2, for testing purposes i deleted the mount point
sudo rm -fr /var/lib/lxd/storage-pools/lxd/containers/nms
and after that i was able to start the container.
I've removed every trace of lxd services and targets associated with systemd besides snap-lxd  but that the container still gets created at boot,
does anyone know what are the files/configs that must be removed?


Monday 14-08-2023 roll call

Roll Call!
Leave a comment with these two things:

A summary of your study using only emojis
Something you'd like to share, anything goes! (within respect)

emoji cheat sheet

Good morning :)

Hi Milena!

hi

Good morning

Present

Good morning!

Good morning

present

was present but forgot to post


Feature request: let whoisd run in foreground

I'm running nipapd under Gentoo. Since Gentoo is not supported here and there are no openrc init scripts, I prefer NIPAP daemons to be started by supervisord, which in turn can run them in foreground saving STDOUT output to a separated log. Whoisd lacks an option for it, so I'd like to ask you to implement it.
Thanks in advance

Would you like to have a go at it yourself? :)
It's just a matter of changing https://github.com/SpriteLink/NIPAP/blob/master/whoisd/nipap-whoisd#L210 to look roughly like https://github.com/SpriteLink/NIPAP/blob/master/nipap/nipapd#L197  and you need to add argument for --foreground

yeah, in my local whoisd i've commented out createDaemon, but there's more work to do: server.serve_forever() doesn't like abrupt interruption.
as I'm not much into python, I wouldn't dirty your project ((:


Make the two types clearer by separating them.

Hi @noopman, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no contribution license agreement is required at this point. Real humans will now evaluate your PR.

TTYL, AZPRBOT;

@msmbaldwin - this seems reasonable to me. Can you review when you have a chance and LMK if you want to merge, or include in any changes you might be making?

@msmbaldwin - any thoughts on this one?

@msmbaldwin - just another ping...

I think this is a fine idea.  I'll do the merge ...

@msmbaldwin - did you want me to merge this, or just incorporate into the next revision of active-directory-authentication-scenarios?


Improve the text at the top of the home page

Received the latest home page text from the product team.

test pull

dfg


Add DADA2 disease

From @mellybelly on November 11, 2016 15:13
We should have DADA2 disease in MONDO, related to CECR1
http://www.nejm.org/doi/full/10.1056/NEJMoa1307361
http://www.nejm.org/doi/full/10.1056/NEJMc1405506
http://www.nejm.org/doi/full/10.1056/NEJMoa1307362
https://www.ncbi.nlm.nih.gov/pubmed/26607704
http://www.jacionline.org/article/S0091-6749(14)01480-8/abstract
http://www.neurology.org/content/early/2015/04/17/WNL.0000000000001581
http://acrabstracts.org/abstract/role-of-adenosine-and-neutrophils-in-inflammation-associated-with-mutations-in-cecr1-gene/
There is also an opossum paper and possum could be a potential model: https://www.ncbi.nlm.nih.gov/pubmed/7599990
Copied from original issue: monarch-initiative/monarch-disease-ontology-RETIRED#163

@mellybelly would you like me to add these specific diseases as new classes to MONDO?

we already have this term:
MONDO_0014306 'vasculitis due to ADA2 deficiency'


PAK files are no longer being created.

My AMUMSS is no longer creating PAK files upon completion of compiling using BUILDMOD.bat. It goes through the process as normal and shows values being changed as instructed by LUA scripts provided but it doesn't create any PAK files. It does however create the pak_content.txt file that is created when combining scripts. This is my first time using it in a couple of months and updated it with the latest version found here.

is mbincompiler showing that it is compiling?  mbincompiler requires .net5
now.
Did you see a message to that effect?  If so follow the instructions.
Or your anti-virus program may be blocking parts of it?  Create an
exception for the whole AMUMSS folder
If not any of that, send me the log.txt file and I’ll look into it
On Sat, Sep 18, 2021 at 20:23 ThePenitence @.***> wrote:

My AMUMSS is no longer creating PAK files upon completion of compiling
using BUILDMOD.bat. It goes through the process as normal and shows values
being changed as instructed by LUA scripts provided but it doesn't create
any PAK files. It does however create the pak_content.txt file that is
created when combining scripts. This is my first time using it in a couple
of months and updated it with the latest version found here.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/HolterPhylo/AMUMSS/issues/3, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXFQQ2SK6UUCD4MNRT3GVTUCUUQXANCNFSM5EJXEC5Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

This was resolved for you?


Update nf-wdm-kequerysystemtime.md

Add missing description of out parameter

Thanks for finding this!
Page Writer


Series layout

What feature or change would you like to see made?
Doctors working with MRI need to view several series at the same time. Currently the OHIF version uses the maximum 3x3 format by default. In theory, it would just increase the number to 4x4 (Layoutselector) for it to work. Unfortunately there is an error in the application and it keeps the viewport fixed in the position it was first loaded.
Test and see the result:
 Change the Layoutselector to 4x4 (columns x rows), open a study, change it to 4x4, then reduce the layout to 2x4 or anything smaller than 4x4. See the result.

Why should we prioritize this feature?
Who use RM studies.

We are enhancing our layout selector, you will be able to go 4x4 soon after this #3194
However, right now you can defined your own hanging protocol to match MR in the Modalities and switch to 4x4 automatically.
See Hanging Protocol Module and Hanging Protocol Service

@sedghi
I don't think you need to create a 4x4 layout. With any viewer, you can choose with 1 click how many rows and columns you want to view. A breast MRI exam can use 5x5. If there is this option to select the rows and columns in ohif, it would be easier to just add the user option to the layoutselect and toolbar to increase or not the number of rows and columns. The problem is that the calculation that ohif uses is wrong, it gets lost.

https://github.com/OHIF/Viewers/assets/3778492/47142481-13db-4a65-9c0e-b574c8331ffa


convertToDatabaseValueSQL with $columnName

Goal:
I want to be able to atomically increment a property such that $stock->setQuantityDelta(2); will render into an SQL such as UPDATE stock SET quantity = quantity+? WHERE id = ?;.
I would like to accomplish this without using DQL every time it is necessary hence I implemented a custom Doctrine2 type which can accomplish this -- with support from this PR.
Changes:
\Doctrine\ORM\Persisters\BasicEntityPersister::updateTable now passes the column name to \Doctrine\DBAL\Types\Type::convertToDatabaseValueSQL (PR)  to be used by the concrete type instance (ex.: @mihai-stancu/doctrine-types-extra:\MS\Doctrine\DBAL\Types\DeltaType).

I think passing of the column name might be a good idea and I have had a use case for it a long time ago. But I don't think your use-case is a good one. I'm smelling some major hacks.

The use case I wanted is already implemented in my doctrine-types-extra repository -- can you please point out the code-smell / hacks?
Right now it works nicely and the only implementation "hack" I need was when declaring the properties I had to specify that the delta property doesn't have a column of its own but alters another property's column:
/**
 * @Column(type="integer")
 */
protected $quantity;

/**
 * @Column(name="quantity", type="delta")
 */
protected $quantityDelta;

In the other PR for the DBAL we need to cover BC better so we'd most likely need to create an interface (ex.: ColumnNameAwareType) to discriminate between type implementations. In which case the discrimination would spill into this project to decide if the column name needs to be passed or not.

Another (better) way to implement the increment/decrement functionality would be to extend the ORM mapping of integers to allow you to specify a custom property name for the delta property and use the specified delta property (if present and non-null) to issue the appropriate UPDATE stock SET quantity = quantity + :delta;.
Example:
/**
 * @Column(type="integer", delta="quantityDelta")
 */
protected $quantity;
protected $quantityDelta;

@fprochazka as Ocramius  mentioned (on the other PR) creating a non-idempotent type seems like a bad idea. Unless you see a better use case for this PR I think I'll close it and make a different PR based on the second idea I described.

@mihai-stancu this is indeed not a good idea. DQL update statements can handle this use-case without extra hacks, and the logic can easily be implemented in a repository.

@mihai-stancu this is indeed not a good idea. DQL update statements can handle this use-case without extra hacks, and the logic can easily be implemented in a repository.

@zeroedin-bill DQL updates need to be implemented for each entity+attribute, they need to be wrapped in a transaction with the flush.
That's a lot of boilerplate IMO. This particular approach (using non-idempotent DBAL types) isn't a good idea but I still think an ORM level approach is necessary.


Animation Player Track Editor not zoomable with Trackpad

Godot version:
3.2.1 stable
OS/device including version:
macOS 10.15.4
Magic Trackpad 2
Issue description:
Using the trackpad I am unable to zoom/scale the Animation Player Track editor for bezier curves
Steps to reproduce:
Use a trackpad and try your best to zoom the bezier track editor. With a mouse you would use the mouse wheel while hovering over the track area, yet with a track pad the scroll gesture does nothing, neither does any gesture that I can think of trying.
Minimal reproduction project:
Not project specific, it's an editor thing

I checked with my regular laptop touchpad and zooming works fine. Can you test in other areas, e.g. 2D editor?

@KoBeWi It works in the 2D editor. Are you using a Mac trackpad?

@KoBeWi I should clarify, the gesture to zoom in the 2D editor is different, it's the "pinch and zoom" thing. 2 fingers scrolling in the 2D editor does pan, which is expected.

Are you using a Mac trackpad?

No, I have Asus.

I should clarify, the gesture to zoom in the 2D editor is different, it's the "pinch and zoom" thing

Yes, and it works in both editors for me. Although in the Bezier Editor it works different from mouse wheel.

Mouse wheel zooms the view, while pinch/zoom gesture scales the timeline.

I presumse this is yet another issue related to high-precision scrolling on macOS.

Is there any implementation before that using high precision scrolling, I can take a look to give a shot on this one

I can confirm that. I can't even pan in the bezier editor with my trackpad. It happens both on the internal MacBook trackpad and the magic trackpad. When I use an external trackball (or mouse, I guess), it works.
In the animation editor itself, only vertical scrolling is possible.

Same problem here on a MacBook Pro trackpad. None of the following work in the Bezier curve editor:

Vertical scroll (two-finger vertical drag)
Horizontal scroll (two-finger horizontal drag)
Zoom in/out (two-finger pinch in/out)

Note that all of the above work fine in the text editor (for vertical panning, horizontal panning, and font-size adjustment, respectively).
External mouse wheel does work in the Bezier editor (achieves vertical zoom when used on its own, and horizontal zoom when used with the Command key). I haven't figured out a direct way to vertically pan using either the mouse or the trackpad, but because the zoom operations are centred about the mouse cursor, I'm able to indirectly pan by focusing the cursor at the right spots while I zoom in and out with the mouse wheel. Cumbersome, but works if one has a mouse with them.

Has there been any fix yet for zooming in the bezier editor for MacBook trackpads?
Can there at least be a menu option for it in the meantime??

Has there been any fix yet for zooming in the bezier editor for MacBook trackpads?
Can there at least be a menu option for it in the meantime??

Has there been any fix yet for zooming in the bezier editor for MacBook trackpads?

Not yet.

Can there at least be a menu option for it in the meantime??

Maybe, but this needs to be requested in the Godot proposals repository instead of here :slightly_smiling_face:

Has there been any fix yet for zooming in the bezier editor for MacBook trackpads?

Not yet.

Can there at least be a menu option for it in the meantime??

Maybe, but this needs to be requested in the Godot proposals repository instead of here :slightly_smiling_face:

Any progress on this? I would be willing to help out if someone can point me in the right direction. Thanks!

Any progress on this? I would be willing to help out if someone can point me in the right direction. Thanks!

Nobody has started working on this feature, but keep in mind macOS touch gestures haven't been implemented yet.

Any progress on this? I would be willing to help out if someone can point me in the right direction. Thanks!

Nobody has started working on this feature, but keep in mind touchpad gestures are only implemented on macOS: https://github.com/godotengine/godot/issues/13139
Therefore, you won't be able to test this on other platforms.

That's okay I primarily use Mac anyways. I have been looking for something small to start with on learning how to contribute to the engine and this might be a great start. Will look into this when I get some free time. Thanks again!

Just a suggestion: instead of trying to fix the trackpad, it might make more sense to add a separate affordance for changing the scale here, like using a keyboard or a button or something. Not everyone can use a mouse so it's good to have keyboard alternatives for accessibility.

Just a suggestion: instead of trying to fix the trackpad, it might make more sense to add a separate affordance for changing the scale here, like using a keyboard or a button or something. Not everyone can use a mouse so it's good to have keyboard alternatives for accessibility.

There's already a zoom slider in the bottom-right corner.

This affects macs Magic Mousr too. Touch gestures would be nice but supporting scrolling would be fine. Anything really! The code editor supports scrolling with Apple’s mouse.

Windows 10 here, mouse. The issue is still in 4.1.1. I cant zoom the vertical axis. I want to be able to see values from 0 - 10 but by default there is only 0 - 50. doing CTRL + mouse wheel will zoom horizontally, doing CTRL + ALT + mouse wheel will do the same. No vertical zoom. In older versions in tutorials people was able to zoom vertically in bezier curve editor in animation player.
https://github.com/godotengine/godot/assets/80409979/db5325e8-6070-49db-b7f2-ed9852af6b95

Windows 11 + Mac M3 14.2.1 here. Can't scroll vertical axis in 4.2.1.stable.


scraps from #682

#682 was postponed until the v3 release, so much that it's very cumbersome to rebase it on the current code. this PR contains some scraps of this PR, commits which were a bit out of scope, and some code massaging to make it fit nicer. consider it a split.

rework DatasetInput into specialized components

simplify FileSelection

only takes care of entering files and make it nice, no parsing (handled by parents)
changed to be a v-model instead of emitting events (better represent that it keeps data ~inside it)

we can invalidate it from the outside by setting its model prop to undef

split into LabeledImageDatasetInput (with wrapped ByCSV & ByGroup), ImageDatasetInput (without labels), TabularDatasetInput & TextInput

for now, no much special handling of passed DatasetBuilder but will change when adding types to represented datasets in next PR

inline Data at call sites, as labelled datasets (for training) and unlabelled ones (for evaluation) are quite different
rename "webapp/src/components/data" to "…/dataset_input"
with tests™©®

rework how to start the server

single class Server that get's constructed with the wanted tasks: no more name clash with discojs.Disco, clearer Task setup, no more mutability
single CLI entrypoint as main.ts which also print some infos for humans

no more garbage output in tests

inline config: single callsite, most fields unused

webapp changes

avoid unneeded dynamic components
simplify ImageCard

fix "missing tippy directive" warning in tests
add dependabots tracking for docs/examples
rewrite console.* calls to use debug, a widely used logging library in JS
update some types here and there

Connecting by csv and not plugging all the images listed in the csv triggers the usual "some images listed in the CSV are missing" toaster but now there is an additional "Something went wrong on our side" that appears.

right, I forgot some throws without try-catch wraps. should be fixed now.

Extra feature: Now that we are using v-model can we clear already connected images  when clearing the csv file?

good catch! yes, added (soo satisfying to add a feature with a one liner).

right now users can connect more images than specified in the csv files, should be allow that? Or add a warning when this happens?

toaster warning it is!


Add MIT LICENSE file, package.json property

Added proper license declaration. I assume VMware is the copyright holder of this project as well.

Merged, but I strongly urge you to use the sockjs-client project instead now, since it runs from node and supports more transports.


"Vața", "Vețișoara", "Vârșești" are listed in the drop-down menu

Description:
When user writes "Vața", "Vețișoara" and "Vârșești" the locations appear in the drop-down menu next to the comune and the county witch is a part according to the law
Precondition:
The website is up an running.

Step 1
Write in the search bar "Vața"

Expected results
The location appears in the drop-down menu as "Sat Vața, ARGEȘ (Vedea)"

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Vețișoara"

Expected results
The location appears in the drop-down menu as "Sat Vețișoara, ARGEȘ (Vedea)"

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Vârșești"

Expected results
The location appears in the drop-down menu as "Sat Vârșești, ARGEȘ (Vedea)"


Tag lyft/envoy images with release numbers, not just commit hashes

It'll make it much, much easier to report issues and figure out where things broke with actual version numbers, rather than just the commit hashes and latest.

This is done for 1.3.0. will make this part of the normal release process.


Kubernetes 1.22 support

So, to finish this, we miss:

[ ] Release of https://github.com/newrelic/k8s-metadata-injection, to include https://github.com/newrelic/k8s-metadata-injection/commit/b95cb0137bdac1a6b92e8d81bcb976f6a5e47119.

Then optionally (as existing versions already support Kubernetes v1.22):

[ ] Release of https://github.com/newrelic/newrelic-infra-operator to include https://github.com/newrelic/newrelic-infra-operator/pull/100.
[ ] Release of https://github.com/newrelic/nri-kube-events to include https://github.com/newrelic/nri-kube-events/pull/66.

Charts PR: https://github.com/newrelic/helm-charts/pull/468

I just released all integrations. Could you update the chart PR? Thanks!

I just released all integrations. Could you update the chart PR? Thanks!

Thank you, done!


Add logrotation option to the install script

@walkjivefly please give her the once-over and see if you spot any mistakes :)

oh I see I need to change the  echo "/root/.crown/.log {" | sudo tee -a /etc/logrotate.d/crownlog.conf ->   echo "$HOME/.crown/.log {" | sudo tee -a /etc/logrotate.d/crownlog.conf


Scheduled speed tests report much slower speed results than manually triggered once

Describe the bug
Scheduled speed tests via cron job produce much slower results (Download, Upload, Ping) than manually triggered ones even though the same Server ID is used
To Reproduce
Steps to reproduce the behavior:

Check your connection speed within your router, e.g. 600 Mbit/s down and 300 Mbit/s upload
Trigger a speedtest manually via web gui with a certain server id —> Download and Upload are nearly 600 Mbit/s and 300 Mbit/s
Schedule a cronjob using the Same server id —> job sometimes fail, sometimes much slower download or upload speed
Trigger a manual test directly After the cron test —> speed as expected 600/300

Expected behavior
Cron speed tests and manually triggered tests produce the same results
Environment (please complete the following information):

Latest docker Image via docker

What is the schedule you are using? We have seen before that tests run at the hour might give a lower result due to congestion.
https://docs.speedtest-tracker.dev/help/faqs#cron-schedule-from-a-minute-or-hour

Currently, once per hour 0 * * * *  but I also tried cron every 24h on 8 pm for example 0 20 * * *
In both cases ALL scheduled tests were significantly slower (especially ping and upload) than the manually triggered ones directly afterwooods

Can you to set it like 6 minutes past the hour. Like said we have seen that test run at 01:00, 02:00 get lower results the test run at 01:06, 02:06 for example. Due to congestion on the network or server.
From the application point of view there is no difference for scheduled or manual tests they  are all run in the same way.

I will try that, thanks for the fast Feedback!
During the day, I tested 08.10 pm as cron, this one was also slower than a manually triggered one on 08.12 pm. But I will give it a try again. Manually triggered ones are nearly identical and completely stable

Going to transfer this to a discussion as this is a pretty common issue for scheduled tests and is a bottleneck in the target speedtest server not the application.


Feature Request: Support for Other Cameras

Would be nice to extend GPR for other cameras. For instance, each raw file from my Nikon D600 is 33MB.  If GPR can store RAW files that are significantly smaller that what is possible with DNG, they would load faster and take less space.

I hope Nikon is reading. :)


doc: update plugin priorities for 3.0

Signed-off-by: Joshua Schmid<EMAIL_ADDRESS>Summary
Change the updated plugin priorities
This PR changes the 2.8.x files but the change should only happen in 3.0/latest but such file does not exist in master. How was the process again to do that?

@jschmid1 The release/gateway-3.0 branch contains all of the 3.0 docs that we are working on. You can reset your local branch to release/gateway-3.0, cherry-pick 5d56978, and force push back to this branch.

superceded by https://github.com/Kong/docs.konghq.com/pull/4246


java.io.IOException: Could not write to device, result == -1 errno 88 Socket operation on non-socket

I meet this question that the USB drive is out when Android Device is copying.So it's a good tips to hold the connection.

Hi author, i also meet a similar problem. when my app to send "read/write"code (0x28/0x2a), the function(deviceConnection.bulkTransfer) return error code -1 and it shows "IO exception". and then it always fail. but when i send other code (eg. Inquiry0x12), it is normal. look forward you reply.

每次断开连接重新插上都要new UsbFile，这样才能解决这个问题。

Please try latest version

closing in favor of #237

errno 88 Socket operation on non-socket

This usually happens when you disconnect the USB drive while it's working. Maybe get a new USB-OTG adapter.
I'd close this.

Oh okay, I did not know that, will close :) thanks!


create a single vars.py used by other python scripts

Reduce the number of Terraform resources involved in provisioning by using simple file provisioners for most python scripts. vars.py will be imported by the python scripts that need Terraform define variables.

I appear to have the wrong (or no) password sent to vsan:
null_resource.vsan_claim[0] (remote-exec): vCenter Deployed... Waiting 60 seconds before configuring vSan...
null_resource.vsan_claim[0]: Still creating... [10s elapsed]
null_resource.vsan_claim[0]: Still creating... [20s elapsed]
null_resource.vsan_claim[0]: Still creating... [30s elapsed]
null_resource.vsan_claim[0]: Still creating... [40s elapsed]
null_resource.vsan_claim[0]: Still creating... [50s elapsed]
null_resource.vsan_claim[0]: Still creating... [1m0s elapsed]
null_resource.vsan_claim[0] (remote-exec): Traceback (most recent call last):
null_resource.vsan_claim[0] (remote-exec):   File "/root/bootstrap/vsan_claim.py", line 76, in <module>
null_resource.vsan_claim[0] (remote-exec):     host=vcenter_fqdn, user=vcenter_user, *** port=443
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVim/connect.py", line 901, in SmartConnectNoSSL
null_resource.vsan_claim[0] (remote-exec):     mechanism=mechanism)
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVim/connect.py", line 871, in SmartConnect
null_resource.vsan_claim[0] (remote-exec):     disableSslCertValidation=disableSslCertValidation)
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVim/connect.py", line 266, in Connect
null_resource.vsan_claim[0] (remote-exec):     keyFile, certFile, thumbprint, sslContext, connectionPoolTimeout)
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVim/connect.py", line 388, in __Login
null_resource.vsan_claim[0] (remote-exec):     x = content.sessionManager.Login(user, pwd, None)
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVmomi/VmomiSupport.py", line 706, in <lambda>
null_resource.vsan_claim[0] (remote-exec):     self.f(*(self.args + (obj,) + args), **kwargs)
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVmomi/VmomiSupport.py", line 512, in _InvokeMethod
null_resource.vsan_claim[0] (remote-exec):     return self._stub.InvokeMethod(self, info, args)
null_resource.vsan_claim[0] (remote-exec):   File "/usr/local/lib/python3.6/dist-packages/pyVmomi/SoapAdapter.py", line 1397, in InvokeMethod
null_resource.vsan_claim[0] (remote-exec):     raise obj # pylint: disable-msg=E0702
null_resource.vsan_claim[0] (remote-exec): pyVmomi.VmomiSupport.InvalidLogin: (vim.fault.InvalidLogin) {
null_resource.vsan_claim[0] (remote-exec):    dynamicType = <unset>,
null_resource.vsan_claim[0] (remote-exec):    dynamicProperty = (vmodl.DynamicProperty) [],
null_resource.vsan_claim[0] (remote-exec):    msg = 'Cannot complete login due to an incorrect user name or password.',
null_resource.vsan_claim[0] (remote-exec):    faultCause = <unset>,
null_resource.vsan_claim[0] (remote-exec):    faultMessage = (vmodl.LocalizableMessage) []
null_resource.vsan_claim[0] (remote-exec): }

E2E tests passed - destroy failed (expected)


Upgrade pulumi-terraform-bridge to v3.88.0

This PR was generated via $ upgrade-provider pulumiverse/pulumi-doppler --kind=bridge --target-bridge-version=latest.

Upgrading pulumi-terraform-bridge from v3.84.0 to v3.88.0.

Superseded by #25


Security Group gets reset (sometimes) on cluster update - undesirable

It appears that if you add and remove a nodepool, some times (but not always) security groups for nodepools are reset to their original intention through the configuration.
This does not sound bad, but can have a disastrous impact on an existing cluster.  k8s aws integration creates a security group for each load balancer and adds this security group to the whitelist of traffic in security groups that nodes are using.
Once reset, k8s aws integration does not reconcile the missing whitelist entries.    New ELBs can be created and linked correctly.
What may be desirable is to tell terraform not to to reset this security group.  This also means communicating to the user that any security group ingress/egress rules will need to be handled manually. :(

This bug only affects AWS.
Until this bug is addressed, it can be worked around by adding a "from 0/0" rule with the allowed ports to the node's security groups.

first attempt:

create cluster
manually add rule to security_group
run terraform apply from cli
manually added rule removed

second attempt, using pre-existing cluster (from first attempt):

manually add rule to security_group
modify existing nodePool (change node count from 1 -> 2)
manually added rule removed

third attempt, using pre-existing cluster (from first attempt):

manually add rule to security group
modify running kraken-lib to ignore changes to ingress/egress rules for security group
modify existing nodePool (change node count from 2 -> 1)
manually added rule ...

have a fix for an existing cluster, things to sort out still:

does this work for a new cluster (ie do the initial rules get created then we effectively hand over control to k8s for long-term maintence
why do I keep seeing that the route table wants to be updated by a raw terraform plan but kraken isn't updating it

it appears there is a similar situation with the vpc route table.  making the same fix there and testing.
fourth attempt, using pre-existing cluster (from first attempt):

manually add route to route table
modify running kraken-lib to ignore changes to routes for vpc route table
modify existing nodePool (change node count from 1 -> 2)
manually added route (in progress)

last check:  destroy/create cluster and ensure that cluster is created correctly.  if this works I'll open a PR and get CI after it.

PR open, need to open an issue to fix this at some point.  It would be best if modifying the config file's ingress/egress rules modified the existing rules without destroying the kubernetes created assets.  But that's a bigger problem then this.


Multi-tenant User working with current stored data

We're mocking our database using files, for our current data format the multitenant user is possible.

As a POC of unleash with multi tenancy, there isn't a need for a user database
It will be richer? Yes, but will not follow RFC. It is side track

targets the #3


Text overlay

Overview
When you want to choose the option to view more rows, the text overlaps with the error report.

This could be solved by setting the background of the tooltip to white.

Hi! I'm adding the step by step process so you can reproduce this problem:

Upload a file to the ODE.
Click on the Errors report button.
Now, go to Results per page and select one of the options.


pytest/testinfra discover tests

Issue Type

Question / feature request

The testinfra verifier walks the tree looking for test_*.py.  I am wondering why this is in place, since pytest will discover tests (recursively) on its own, and you can configure how it finds tests.
It'd be useful to me to leverage pytest's discovery which allows hooking into pytest's collection system (pytest_collect_directory and others) and this is not as easy when passing a list of test files.
It may also be useful to be able to provide further options in pytest.ini

We tell testinfra where the tests are located b/c the path can be changed in molecule.yml if users wish to share tests between scenarios.

Isn't something we are going to support at this time but may in the future.  Thanks @uSpike.


Feature Request: Generate SwiftUI Previews friendly schemes

Description
We'd like to avoid using _CompileStub_.m as much as possible and display a proper source file list in Compile Sources to enable SwiftUI Previews.
Motivation
Since our product is composed of hundreds of static libraries, we would like to add a dedicated ios_framework for each module instead of building a huge ios_application for SwiftUI Previews.
However, as described here, those dynamic frameworks will contain only _CompileStub_.m if their primary module is included in the dependency graph of other top-level targets.
The current rules_xcodeproj's design is reasonable enough, but in a real world project, it's common for a module to be included in the dependency graph of multiple top-level targets like ios_unit_test and ios_application, so you may not able to use SwiftUI Previews naturally like native Xcode.
For now, we have solved this by generating Xcode projects focused on a specific ios_framework, but it would be great if rules_xcodeproj solves it in a comprehensive approach.

If the library is the primary dependency of an ios_framework, and that framework is set via frameworks on other targets (ios_framework, ios_application, and ios_unit_test), you won't get the CompileStub.m. So it's not exactly true that the library can't be in the dependency graph of another top-level target, it's just that the framework also has to be in that dependent graph.
I do get the desire for this to be different. And I think I can improve this for BwB down the line, but for now, this isn't any different from Xcode where a certain target is only one type (a static library or a framework) and if you want it both ways you would create two distinct targets.

To be clear, this is 100% a BwX based constraint, and I will be able to resolve it for BwB at a minimum. Part of moving target merging into Starlark was ti resolve this issue. Ideally though I can (partially?) solve this for BwB as well, but it involves complicated search path modification that isn't possible yet.

I do believe that defining the dynamic framework and static library as distinct targets would be the proper solution to this problem, but it leads to another problem in that project generation involving multiple targets with the same module_name fail. Using a different module_name wasn't possible since it could be in the source code as a namespace.
Anyway, I don't think at least the current approach is wrong, but I look forward to further useful improvements in the future.

Is there an any  example of this setup? I can't seem to get rid of the CompileStub.m generation even with framework consuming a swift_library.

Have you tried the new incremental generation mode? In the legacy generation mode if a library wasn't able to be merged into any of its dependent targets, then it wouldn't merge at all. For example, this could happen if you had a test without a test_host. In incremental generation mode that restriction has been lifted.

I haven't tested with that. I'll try this week and see if I still have the issue.

@brentleyjones After switching to incremental, I was able to get a preview going for one framework. Thank you! I'm going to wrap a few more libraries and report back if I hit any other issues with those.

I have all my previews working except for one which is a widget, where the error says it needs to be embedded in an app to be used in previews. This even happens when selecting the generated target of "XExtension in Y", where X is the widget name and Y the app name that it's embedded in. Is there any extra setup required for widget previews or should they not be expected to work yet?

Does this repro in one of our examples, and if not, can you make a PR that adjusts the example to get it to repro? Then we can look into it. All previews are expected to work. This might be a case where we need to add the extension to a Embed App Extensions phase (which we removed because it wasn't necessary for anything) to get Xcode to see the relationship that exists.


Bug: Frametime becomes unreadable at high ranges

Can you post an example of this so we can track this issue in the future releases?


digital-inverter-openlane-gf180mcu.ipynb [ERROR]: Conflicting values of RUN_CTS and CLOCK_TREE_SYNTH; please remove CLOCK_TREE_SYNTH from your design configurations

+1 same as me, any ideas how to fix? maybe there is a combination of versions to use (downgrade) to make colab work?


Filter out streams not work if check 2 languages

If checked Filter out streams and choose 2+ languages, filter not work
Actual behavior

Expected
List of streams on Russian and English languages
Reproduction steps

Open Setting

LMC Langeages

Check Filter out streams checkbox

Check Russian(ru) and English(en) checkbox

Click Top Channels

Environment details (operating system, etc.)
Windows 10 pro x64
livestreamer twitch gui 0.14.0

This is a limitation of the Twitch API. Filtering multiple languages was working in the past, but got removed at some point. Don't ask me why they decided to remove this. There already was a discussion about this here, see #151.
That's why I added this text here:


Branch 158212897

Looks like batch_dataset_op_test failure is legitimate.
I cannot find the culprit for the issue though, maybe a merge issue?

Need to redo to pull in a fix for the Android failure. I have a fix for the batch_dataset_op_test.


How does this method edit the actions of an object?

Hi,I tried to make the standing cat sit down, but nothing changed. I hope to receive help. Thank you very much

in my case, prompt is very important...
first try with example in paper,
Child climbing: https://unsplash.com/photos/oLZViCDG-dk


Reminder app integration

almost ready. Ironing out some details

BTW this PR also introduces the json-mode of the OpenAI API
will be hella useful for other calls to ensure JSON output

example snackbar:

The integration is with the default calendar of the phone and requires no setting up, only granting permissions the first time the feature is turned on from settings.
In Android it will write to Google Calendar, in iOS to Apple Calendar. Reminders in the Google ecosystem are integrated into the Google Calendar, and in Apple starting with iOS 18 Apple Reminders are also part of Apple Calendar.
I have tested in iOS and works. Can someone test in Android?

Ready for a first pass @josancamon19

@diegoasua please relint with rules shared in the other PR so it's easy to see what was changed.
Also, record a video showing the feature in action please.

Closing PR, as I don't see significant progress, and reassigning ticket.


Fix prevState pointing to interim state value when batching (fixes #1186)

This should avoid resetting prevState for already-pending state updates, so that lifecycle methods reflect the original state value instead of the most recent previous value.

Coverage remained the same at 100.0% when pulling b95970c435ae8bee9b27fca56bc64cb9954696b7 on bugfix/prevstate-batching into 8aa7ec9e87e34596d0ec292d12fb9f79135e382f on master.

@developit cheers, glad to help :)


[operator] update lost testFramwork image override changes

Signed-off-by: Jared Tan<EMAIL_ADDRESS>following: https://github.com/open-telemetry/opentelemetry-helm-charts/pull/413/files

@JaredTan95 pls run make generate-examples and commit changes

opentelemetry-demo examples generated fails, I will check it soon.

@JaredTan95 please rebase

@JaredTan95 please rebase

done.


Debug some more

Always indicate next posId

@navalani, before this change the output for the new verb-tense rule was a bit hard to follow and 6 was missing:
There was an extractor: verb-tense
1. SaveStart(--GLOBAL--)
2. MatchToken(B-PER matches John) -> 3
3. Split.  Check out my LHS and RHS!
   (LHS)   4. MatchToken(I-PER) -> 3
   (RHS)   5. Pass
7. Split.  Check out my LHS and RHS!
      (LHS)8. Split.  Check out my LHS and RHS!
         (LHS)         9. MatchToken(ate) -> 0
         0. Done
         (RHS)         10. MatchToken(eats matches eats) -> 0
         0. Done
      (RHS)      11. MatchToken(eating) -> 0
      0. Done
   12. MatchToken(B-FOOD) -> 13
13. Split.  Check out my LHS and RHS!
      (LHS)      14. MatchToken(I-FOOD) -> 13
      (RHS)      15. Pass
      16. SaveEnd(--GLOBAL--)
      0. Done

With this change, it seems a little more understandable.
There was an extractor: verb-tense
1. SaveStart(--GLOBAL--) -> 2
2. MatchToken(B-PER matches John) -> 3
3. Split.  Check out my LHS and RHS!
   (LHS) 4. MatchToken(I-PER) -> 3
   (RHS) 5. Pass -> 6
   (RHS) 6. MatchLookAhead.  Check out my start. -> 12
      (Start) 7. Split.  Check out my LHS and RHS!
         (LHS) 8. Split.  Check out my LHS and RHS!
            (LHS) 9. MatchToken(ate) -> 0
            (LHS) 0. Done
            (RHS) 10. MatchToken(eats matches eats) -> 0
            (RHS) 0. Done
         (RHS) 11. MatchToken(eating) -> 0
         (RHS) 0. Done
   (RHS) 12. MatchToken(B-FOOD) -> 13
   (RHS) 13. Split.  Check out my LHS and RHS!
      (LHS) 14. MatchToken(I-FOOD) -> 13
      (RHS) 15. Pass -> 16
      (RHS) 16. SaveEnd(--GLOBAL--) -> 0
      (RHS) 0. Done

It seems like a Done inside a MatchLookAhead might be interpreted differently than a Done elsewhere.  I think the lookahead might start a new thread and the Done just finishes that thread and then things move on from the lookahead's next.  To me this makes the case that looking at more examples is useful.

Got it. Yeah I agree that we need more examples to test the visualization.
On Tue, Mar 26, 2024 at 4:34 PM Keith Alcock @.***>
wrote:

External Email
@navalani https://github.com/navalani, before this change the output
for the new verb-tense rule was a bit hard to follow and 6 was missing:
There was an extractor: verb-tense

SaveStart(--GLOBAL--)
MatchToken(B-PER matches John) -> 3
Split.  Check out my LHS and RHS!
(LHS)   4. MatchToken(I-PER) -> 3
(RHS)   5. Pass
Split.  Check out my LHS and RHS!
(LHS)8. Split.  Check out my LHS and RHS!
(LHS)         9. MatchToken(ate) -> 0
0. Done
(RHS)         10. MatchToken(eats matches eats) -> 0
0. Done
(RHS)      11. MatchToken(eating) -> 0
0. Done
12. MatchToken(B-FOOD) -> 13
Split.  Check out my LHS and RHS!
(LHS)      14. MatchToken(I-FOOD) -> 13
(RHS)      15. Pass
16. SaveEnd(--GLOBAL--)
0. Done

With this change, it seems a little more understandable.
There was an extractor: verb-tense

SaveStart(--GLOBAL--) -> 2
MatchToken(B-PER matches John) -> 3
Split.  Check out my LHS and RHS!
(LHS) 4. MatchToken(I-PER) -> 3
(RHS) 5. Pass -> 6
(RHS) 6. MatchLookAhead.  Check out my start. -> 12
(Start) 7. Split.  Check out my LHS and RHS!
(LHS) 8. Split.  Check out my LHS and RHS!
(LHS) 9. MatchToken(ate) -> 0
(LHS) 0. Done
(RHS) 10. MatchToken(eats matches eats) -> 0
(RHS) 0. Done
(RHS) 11. MatchToken(eating) -> 0
(RHS) 0. Done
(RHS) 12. MatchToken(B-FOOD) -> 13
(RHS) 13. Split.  Check out my LHS and RHS!
(LHS) 14. MatchToken(I-FOOD) -> 13
(RHS) 15. Pass -> 16
(RHS) 16. SaveEnd(--GLOBAL--) -> 0
(RHS) 0. Done

It seems like a Done inside a MatchLookAhead might be interpreted
differently than a Done elsewhere. I think the lookahead might start a new
thread and the Done just finishes that thread and then things move on from
the lookahead's next. To me this makes the case that looking at more
examples is useful.
—
Reply to this email directly, view it on GitHub
https://github.com/clulab/processors/pull/793#issuecomment-2021646291,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BCCR2VK7OOCWHSJQOI2FFHDY2IAXVAVCNFSM6AAAAABFJ3BJXSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRRGY2DMMRZGE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hello Keith,
I was trying to report the text character positions of rule matches and
wanted to use the tok field. I noticed it is a field in the singleThread
but need some help on how I would use singleThread to visualize the tok
field.
Thanks,
Nick
On Tue, Mar 26, 2024 at 4:36 PM Nick Avalani @.***>
wrote:

Got it. Yeah I agree that we need more examples to test the visualization.
On Tue, Mar 26, 2024 at 4:34 PM Keith Alcock @.***>
wrote:

External Email
@navalani https://github.com/navalani, before this change the output
for the new verb-tense rule was a bit hard to follow and 6 was missing:
There was an extractor: verb-tense

SaveStart(--GLOBAL--)
MatchToken(B-PER matches John) -> 3
Split.  Check out my LHS and RHS!
(LHS)   4. MatchToken(I-PER) -> 3
(RHS)   5. Pass
Split.  Check out my LHS and RHS!
(LHS)8. Split.  Check out my LHS and RHS!
(LHS)         9. MatchToken(ate) -> 0
0. Done
(RHS)         10. MatchToken(eats matches eats) -> 0
0. Done
(RHS)      11. MatchToken(eating) -> 0
0. Done
12. MatchToken(B-FOOD) -> 13
Split.  Check out my LHS and RHS!
(LHS)      14. MatchToken(I-FOOD) -> 13
(RHS)      15. Pass
16. SaveEnd(--GLOBAL--)
0. Done

With this change, it seems a little more understandable.
There was an extractor: verb-tense

SaveStart(--GLOBAL--) -> 2
MatchToken(B-PER matches John) -> 3
Split.  Check out my LHS and RHS!
(LHS) 4. MatchToken(I-PER) -> 3
(RHS) 5. Pass -> 6
(RHS) 6. MatchLookAhead.  Check out my start. -> 12
(Start) 7. Split.  Check out my LHS and RHS!
(LHS) 8. Split.  Check out my LHS and RHS!
(LHS) 9. MatchToken(ate) -> 0
(LHS) 0. Done
(RHS) 10. MatchToken(eats matches eats) -> 0
(RHS) 0. Done
(RHS) 11. MatchToken(eating) -> 0
(RHS) 0. Done
(RHS) 12. MatchToken(B-FOOD) -> 13
(RHS) 13. Split.  Check out my LHS and RHS!
(LHS) 14. MatchToken(I-FOOD) -> 13
(RHS) 15. Pass -> 16
(RHS) 16. SaveEnd(--GLOBAL--) -> 0
(RHS) 0. Done

It seems like a Done inside a MatchLookAhead might be interpreted
differently than a Done elsewhere. I think the lookahead might start a new
thread and the Done just finishes that thread and then things move on from
the lookahead's next. To me this makes the case that looking at more
examples is useful.
—
Reply to this email directly, view it on GitHub
https://github.com/clulab/processors/pull/793#issuecomment-2021646291,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BCCR2VK7OOCWHSJQOI2FFHDY2IAXVAVCNFSM6AAAAABFJ3BJXSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRRGY2DMMRZGE
.
You are receiving this because you were mentioned.Message ID:
@.***>

@navalani, be sure to look at the kwalcock/debugContext branch, especially at Evaluator.mkThreads.  My understanding is that we're dealing with an NDFA, non-deterministic finite (state) automaton.  Each thread is like an alternative reality for a different path through the rules and tokens.  An Inst can be the current Inst of numerous threads that are each being processed against a maybe different tok (index of the token/word in the sentence).  The Inst unfortunately does not know about all the threads it's in and therefore not the relevant toks.  We could change that, but it's very tricky.  (It gets mixed up with issues of identity and equality.)  Instead, I've had something else keep track of the Inst/tok pairings, at least if a thread gets far enough to use an Inst with a tok.  That thing is the transcript in the Debugger which stores DebuggerRecords.  You could query the transcript to see where all an Inst has matched (or not matched).  There are a couple of examples in the OdinStarter in that branch.  Something like this seems to be necessary.
Does the question mean that you have a substantial number of examples in TestTokenExtractorDebugger?

Thanks, I will work on that. I've added four more examples in
TestTokenExtractorDebugger which I have pushed to the repo.
Nick
On Tue, Apr 2, 2024 at 4:04 PM Keith Alcock @.***>
wrote:

External Email
@navalani https://github.com/navalani, be sure to look at the
kwalcock/debugContext
https://github.com/clulab/processors/tree/kwalcock/debugContext branch,
especially at Evaluator.mkThreads. My understanding is that we're dealing
with an NDFA, non-deterministic finite (state) automaton. Each thread is
like an alternative reality for a different path through the rules and
tokens. An Inst can be the current Inst of numerous threads that are each
being processed against a maybe different tok (index of the token/word in
the sentence). The Inst unfortunately does not know about all the threads
it's in and therefore not the relevant toks. We could change that, but it's
very tricky. (It gets mixed up with issues of identity and equality.)
Instead, I've had something else keep track of the Inst/tok pairings, at
least if a thread gets far enough to use an Inst with a tok. That thing is
the transcript in the Debugger which stores DebuggerRecords. You could
query the transcript to see where all an Inst has matched (or not matched).
There are a couple of examples in the OdinStarter in that branch. Something
like this seems to be necessary.
Does the question mean that you have a substantial number of examples in
TestTokenExtractorDebugger?
—
Reply to this email directly, view it on GitHub
https://github.com/clulab/processors/pull/793#issuecomment-2033258472,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BCCR2VL7TNY6KYCSQAZXBDDY3M2O5AVCNFSM6AAAAABFJ3BJXSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZTGI2TQNBXGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

@navalani, can you look through the paper and try to get all the operators or whatever they are called?  I don't see ?!, ?<!, {n}, {,m}, {n,}, or some of their lazy forms, for example.  We're interested now in what kind of graph of Insts these create and will want to make sure at some point that we can identify the part of the rule where these are written.

Sure, I'll check it out.
On Wed, Apr 3, 2024 at 9:22 AM Keith Alcock @.***>
wrote:

External Email
@navalani https://github.com/navalani, can you look through the paper
https://arxiv.org/pdf/1509.07513 and try to get all the operators or
whatever they are called? I don't see ?!, ?<!, {n}, {,m}, {n,}, or some of
their lazy forms, for example. We're interested now in what kind of graph
of Insts these create and will want to make sure at some point that we can
identify the part of the rule where these are written.
—
Reply to this email directly, view it on GitHub
https://github.com/clulab/processors/pull/793#issuecomment-2035043930,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BCCR2VLW25P47APD24OJ63TY3QUFBAVCNFSM6AAAAABFJ3BJXSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZVGA2DGOJTGA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Refactor and update to mc1.20.4

This PR updates the mod to 1.20.3/4 and restructures it for more efficient future maintenance.
Some notes:

Issue templates and labels are based on Sodium, with placeholder links to my own support Discord server.
Release publishing is to GitHub and Modrinth only, not CurseForge. The vast majority of this project's historical downloads are from Modrinth, especially on later versions.

The two force-pushes were attempts to retroactively verify the commit, the second of which succeeded.

Is it possible to change your pull request and use the corresponding branch

Given a mc1.20.4 branch on the main repo, sure thing.

Could you edit the metadata so that the mod is called "Now Playing" and not "NowPlaying"? I'd do it myself but mod_name is used everywhere, including class files

Small bug: The Hotbar notification style no longer has the "Now Playing" text, so it doesn't look like vanilla anymore
Vanilla record player:

Now Playing, hotbar notification style:

I'm going to commit and push this myself

Could you edit the metadata so that the mod is called "Now Playing" and not "NowPlaying"? I'd do it myself but mod_name is used everywhere, including class files

By this are you referring to the mod name, which is defined only in gradle.properties and NowPlaying.java (the latter being for the logger), or the mod id, or both?

The mod name that's shown to the player, as appears in the mod list and mods.toml/fabric.mod.json. It had a space before the refactor, which is missing now. The mod id hasn't changed.

In this PR the mod id is nowplaying, the former was now-playing

In this PR the mod id is nowplaying, the former was now-playing

Oh, lol, I didn't notice that. For consistency, could you change it back to the old id too? Otherwise there could probably be issues if someone doesn't uninstall the old version before adding the new one.

I've pushed a small addition I noticed while working on the small fix above, hope you don't mind :)

Because Neo doesn't allow hyphens in mod IDs I've added an underscored variation for it

Is there anything I need to set up in terms of API keys before merging this? Otherwise I think it's good to go.

Modrinth publishing requires a PAT secret MODRINTH_TOKEN, label sync and GitHub publishing use the default GITHUB_TOKEN assuming it has read and edit perms.

I wasn't expecting v1.5.0 to be compatible with mc1.20.5/6 but on Fabric/Quilt it is. It isn't compatible with NeoForge 1.20.6, so I guess the question is whether to release v1.5.1 for both Fabric and Neo, or just Neo and add 1.20.5 and 6 to the list of compatible MC versions on the v1.5.0-Fabric-1.20.4 Modrinth release.
I have a mc1.20.6 branch ready to PR from my fork.

It's probably fine to release 1.5.1 for fabric/quilt without changes, that way no one asks why there's no 1.5.1 for fabric
1.21 has new music, so that'll need a new release anyway :)


Save last line position for resume

It would be nice if the resume command would also save and restore the cursor position, not just replay the previous results. This would help in situations where the last fzf command has a long list of suggestions.

It would be nice if the resume command would also save and restore the cursor position, not just replay the previous results. This would help in situations where the last fzf command has a long list of suggestions.

I explored it in the past, fzf is an external terminal program which doesn’t have functionality to help with this issue, on top of that results not always come in the same order (for example rg multi-threading) so even if I restore the cursor to the same line you’re not guaranteed to land at the same spot so unfortunately the solution would be not only hacky (sending scroll keys to the term) but also incomplete.


Some weights of the model checkpoint were not used when initializing UNet2DConditionModel:

Some weights of the model checkpoint were not used when initializing UNet2DConditionModel:
['down_blocks.0.attentions.0.transformer_blocks.0.attn2.to_q.weight, down_blocks.0.attentions.0.transformer_blocks.0.attn2.to_k.weight, down_blocks.0.attentions.0.transformer_blocks.0.attn2.to_v.weight, down_blocks.0.attentions.0.transformer_blocks.0.attn2.to_out.0.weight, down_blocks.0.attentions.0.transformer_blocks.0.attn2.to_out.0.bias, down_blocks.0.attentions.0.transformer_blocks.0.norm2.weight, down_blocks.0.attentions.0.transformer_blocks.0.norm2.bias, down_blocks.0.attentions.1.transformer_blocks.0.attn2.to_q.weight, down_blocks.0.attentions.1.transformer_blocks.0.attn2.to_k.weight, down_blocks.0.attentions.1.transformer_blocks.0.attn2.to_v.weight, down_blocks.0.attentions.1.transformer_blocks.0.attn2.to_out.0.weight, down_blocks.0.attentions.1.transformer_blocks.0.attn2.to_out.0.bias, down_blocks.0.attentions.1.transformer_blocks.0.norm2.weight, down_blocks.0.attentions.1.transformer_blocks.0.norm2.bias, down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_q.weight, down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_k.weight, down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_v.weight, down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_out.0.weight, down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_out.0.bias, down_blocks.1.attentions.0.transformer_bl
i tried to download the exact models. what caused the issues. my gpu is  12vram

it's ok

but it didn't run. it said "errors" then stopped

we update the automatic installation script for Linux, you can try it.


Pinecone: Support V4

Feature request
Adapt the pinecone vectorstore to support upcoming V4. The changes are related to removing namespaces and delete by metadata feature.
Motivation
Indexes in upcoming Pinecone V4 won't support:

namespaces
configure_index()
delete by metadata
describe_index() with metadata filtering
metadata_config parameter to create_index()
delete() with the deleteAll parameter

Your contribution
I'll do it.

@StankoKuveljic @jamescalam
Can you please point me to the v4 spec documentation on pinecone.
With support for namespace removed, does the free tier restrict users to a single vector space? Using metadata filtering may be one way to bypass this limitation.

@StankoKuveljic - I searched, but can't find any information about "upcoming V4" of Pinecone.  Can you point us to documentation about v4 and removing namespaces?

`Indexes in upcoming Pinecone V4 won't support:
namespaces`
Is this information available to the public. I've not seen any communication on pinecone removing namespaces?

I'm sorry for the confusion.
This is related to upcoming starter tier https://docs.pinecone.io/docs/projects#gcp-starter-environment-public-preview it won't affect standard and enterprise tiers. The commit is reverted and I'll reopen an issue if there are breaking changes in examples and tests that won't support starter tier.

@StankoKuveljic Sounds good! If we are using namespaces, is it safe to unpin the langchain version?

@david-engelmann
The commit is reverted 2babe30 so now everything should be as before.
However, keep in mind that if you are using free tier gcp-starter environment you won't be able to use namespaces alongside with other limitations. Also, you will have issues running integration tests for Pinecone.
The integration test is probably going to change soon to allow contributors running it with free gcp-starter.


disable failing test_od::test_f16() for android CI

As discussed and agreed in #5941, the test gets disabled for android CI.
I disabled it for android on x86 and x86_64.

Thanks!


Arrays validation

Currently if request body contains array we haven't any ability to validate it.
async someEndpoint(
    @Body() data: ItemDto[]
  ): Promise<void> {
    return 'OK'
  }

And the ItemDto iteslf:
@JoiSchemaOptions(...)
export classItemDto {
  @JoiSchema(...)
  myProp: string

What about to adjust JoiSchema decorator to work with class?
@JoiSchemaOptions(...)
@JoiSchema(Joi.array().min(1))
export classItemDto {
  @JoiSchema(...)
  myProp: string

Or add some additional options to JoiSchemaOptions?
@JoiSchemaOptions({arrayValidationOptions: {minLength: 0, maxLength: 100 }})

The key problem here is that when this line is compiled to JavaScript:
@Body() data: ItemDto[]

the only type information retained is "data is an array", so this is all that Nest has to work with. In short, we have no information about which items the array contains, and even if we did, we'd have to potentially deal with lots of cases, as an array can contain any number of different classes.
This also means that adding any kind of options to the schema or the type class has no effect, since we simply don't know which type is being used due to the loss of information.
The solution is to use an explicit JoiPipe and tell it which type to use:
async someEndpoint(
    @Body(new JoiPipe(Joi.array().items(getTypeSchema(ItemDto)), {group: CREATE)) data: ItemDto[]
): Promise<void> {
    return 'OK'
}

Any other solution that I can currently see effectively amount to introducing a shorthand for this, e.g. some kind of option for JoiPipe. I'll wait to see if this issue comes more often in the future.


Master

SyntaxSummary doc has been removed and docs are updated with the new content. Hence I am closing this PR.


fields is now a json field

as per upcomming API change https://gitlab.com/silverpond/products/silverbrane/silverbrane-web/-/merge_requests/1662

looks good to merge @kirillrdy


[newrelic-infrastructure]: Make securityContext a templated value for windows infra daemonset

Is this a new chart
No
What this PR does / why we need it:
Deploying the Windows infra chart to GKE results in the error below. If the spec.containers[0].securityContext value is removed then it works fine. This PR makes the securityContext field a templated value.
(combined from similar events): Error creating: admission webhook "windows.common-webhooks.networking.gke.io" denied the request: spec.containers[0].securityContext: Invalid value: v1.SecurityContext{Capabilities:(*v1.Capabilities)(nil), Privileged:(*bool)(0xc000696a3c), SELinuxOptions:(*v1.SELinuxOptions)(nil), RunAsUser:(*int64)(nil), RunAsGroup:(*int64)(nil), RunAsNonRoot:(*bool)(nil), ReadOnlyRootFilesystem:(*bool)(nil), AllowPrivilegeEscalation:(*bool)(nil), ProcMount:(*v1.ProcMountType)(nil)}: Windows does not support this field. Note that defaults may be allowed for compatibility.
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ x] Chart Version bumped
[ x] Variables are documented in the README.md
[ x] Title of the PR starts with chart name (e.g. [mychartname])

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Matthew Goodson seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks @goody44 for the contribution.
It looks good, I will proceed to merge it once license agreements are signed,
Can you also rebase on master?

Thanks for the review! I've signed the CLA and rebased, although I may have messed that up as the diff is now showing the re-based changes.

There are different way to solve this issue.
I would suggest to rebase using the interactive mode over the updated fork
Assuming origin is pointing to this repository
git fetch -a origin
rebase -i origin/master dropping the commits that are not yours.
git push fork yourBranchName --force to update the history
Or you can reopen the PR copying manually the changes

Sorry for the delay and thanks for the instructions. I've rebased it properly now


Assets balance = 0, but windows with this assets don't disappears

When we spend all amount of one of assets, window balance don't disappears
Steps:

Open wallet
Go to send screen
Paste address other wallet
Select asset and select "add max"
Click button "send"
Wait for the transaction to finish
Look at assets

Actual:
Assets balance = 0, window balance don't disappears
Expected:
Assets with balance = 0 disappears at assets tab
https://user-images.githubusercontent.com/85252690/129528118-0db2fdeb-ef8d-4ff8-9c02-44d9fd78f14c.mp4

Asset with  balance = 0 disappeared from the "wallet" tab but remained in the "assets" tab
https://user-images.githubusercontent.com/85252690/129695050-d12b18ad-4ecd-4df3-bb6c-de5106adc26a.mp4

Checked


Fixed parenthesis missing in example code.

Just noticed and fixed a mistype in your README.

Good catch, thanks!


unciv: 4.6.8 -> 4.6.13

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/yairm210/Unciv/releases.
meta.description for unciv is: An open-source Android/Desktop remake of Civ V
meta.homepage for unciv is: https://github.com/yairm210/Unciv
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.6.9-patch2 in filename of file in /nix/store/pi7pjcmlpsi6b5mhjwvisrz88gl0nmdp-unciv-4.6.9-patch2

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
unciv

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/pi7pjcmlpsi6b5mhjwvisrz88gl0nmdp-unciv-4.6.9-patch2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A unciv https://github.com/r-ryantm/nixpkgs/archive/a1535c6e1b50317cc0458e94d4da695aa0617cbe.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/pi7pjcmlpsi6b5mhjwvisrz88gl0nmdp-unciv-4.6.9-patch2
ls -la /nix/store/pi7pjcmlpsi6b5mhjwvisrz88gl0nmdp-unciv-4.6.9-patch2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

unciv

Maintainer pings
cc @tex for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/yairm210/Unciv/releases.
meta.description for unciv is: An open-source Android/Desktop remake of Civ V
meta.homepage for unciv is: https://github.com/yairm210/Unciv
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.6.12-patch1 in filename of file in /nix/store/fkg8x9jlv64hxnrj668qsmmsjhw88q82-unciv-4.6.12-patch1

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
unciv

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/fkg8x9jlv64hxnrj668qsmmsjhw88q82-unciv-4.6.12-patch1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A unciv https://github.com/r-ryantm/nixpkgs/archive/aa81e20c80854ebd5da6a8c898bccc0f5f723450.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/fkg8x9jlv64hxnrj668qsmmsjhw88q82-unciv-4.6.12-patch1
ls -la /nix/store/fkg8x9jlv64hxnrj668qsmmsjhw88q82-unciv-4.6.12-patch1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

unciv

Maintainer pings
cc @tex for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/yairm210/Unciv/releases.
meta.description for unciv is: An open-source Android/Desktop remake of Civ V
meta.homepage for unciv is: https://github.com/yairm210/Unciv
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.6.13 in filename of file in /nix/store/n5maqr14w18cb33hp2ljy28787vbclxl-unciv-4.6.13

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
unciv

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/n5maqr14w18cb33hp2ljy28787vbclxl-unciv-4.6.13 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A unciv https://github.com/r-ryantm/nixpkgs/archive/bac076eb94a58bed33161e7bc9c8282a8942f04b.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/n5maqr14w18cb33hp2ljy28787vbclxl-unciv-4.6.13
ls -la /nix/store/n5maqr14w18cb33hp2ljy28787vbclxl-unciv-4.6.13/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

unciv

Maintainer pings
cc @tex for testing.

Result of nixpkgs-review pr 230804 run on aarch64-darwin 1

1 package built:

unciv


Clean up systemd unit disable logic

Add the following to install-lib:

unit-exists
disable-unit

Update all packages to use disable-unit

I only tested webinterface-wifi but works for me.

As part of double-checking to make sure everything is covered, I noticed that innernet doesn't manage its services at all on uninstall and opened #779 779


OLS-1308: environment variable with config file on one place

Description
OLS-1308: environment variable with config file on one place
Type of change

[x] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[x] Configuration Update
[ ] Bump-up dependent library
[ ] Bump-up library or tool used for development (does not change the final image)
[ ] CI configuration change
[ ] Konflux configuration change

Related Tickets & Documents

Related Issue #OLS-1308

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

Project coverage is 96.96%. Comparing base (7280586) to head (774af25).
Report is 36 commits behind head on main.

Additional details and impacted files

@@             Coverage Diff             @@
##             main    #2065       +/-   ##
===========================================
+ Coverage   74.89%   96.96%   +22.06%
===========================================
  Files          70       71        +1
  Lines        2892     2897        +5
===========================================
+ Hits         2166     2809      +643
+ Misses        726       88      -638

Files with missing lines
Coverage Δ

ols/constants.py
100.00% <100.00%> (ø)

... and 36 files with indirect coverage changes

/approve

/lgtm

/override "Red Hat Konflux / ols-enterprise-contract / lightspeed-service"

/test 4.17-e2e-ols-cluster

/test 4.17-e2e-ols-cluster

/override "ci/prow/4.17-e2e-ols-cluster"


test(pageserver): add test keyspace into collect_keyspace

Problem
Some test cases add random keys into the timeline, but it is not part of the collect_keyspace, this will cause compaction remove the keys.
Summary of changes
The pull request adds a field to supply extra keyspaces during unit tests.
Checklist before requesting a review

[x] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.
[ ] Do we need to implement analytics? if so did you add the relevant metrics to the dashboard?
[ ] If this PR requires public announcement, mark it with /release-notes label and add several sentences in this section.

Checklist before merging

[ ] Do not forget to reformat commit message to not include the above checklist

collect_keyspace returns two values: dense keyspace and sparse keyspace. For sparse keyspace, the test cases can simply use AUX keys for testing; for dense keyspace, users should add their keyspace into the extra keyspace. Probably I should add both extra_dense_ks and extra_sparse_ks, but given it's not needed now, I don't plan to add both of them in this pull request.

What's the context for this change? AuxFilesV2 or the new compaction algorithm?

Fixing some existing test cases that might be flaky b/c the keys could be garbage-collected, and also make the compaction algorithm tests able to use the data keyspace to do WAL replays.


How to prevent the NSPanel from being hidden when the focus leaves the NSPanel window?

Now, when the focus leaves the NSPanel window, the NSPanel window will be hidden.
How to prevent the NSPanel from being hidden when the focus leaves the NSPanel window? @ahkohd

Hello @zhouyangtingwen,
Comment out lines (384 to 385) to prevent the panel from hiding.
https://github.com/ahkohd/tauri-macos-spotlight-example/blob/c5507f5e28c6ac1a1e9bca3e28897efe63e2c37a/src-tauri/src/spotlight.rs#L385

Hello @zhouyangtingwen,
Comment out lines (384 to 385) to prevent the panel from hiding.
https://github.com/ahkohd/tauri-macos-spotlight-example/blob/c5507f5e28c6ac1a1e9bca3e28897efe63e2c37a/src-tauri/src/spotlight.rs#L385

thank you so much @ahkohd


feat: add a proper error message when file is too big

#1257
old overkill merge request
feat: check if error_class in server reponse is RequestTooLargeError and display a proper error message.
P-S: In dev env the server isn't responding with error_class -> RequestTooLargeError

P-S: In dev env the server isn't responding with error_class -> RequestTooLargeError

Works for me on dev too (which it should since on dev we still use the same server).

P-S: In dev env the server isn't responding with error_class -> RequestTooLargeError

Works for me on dev too (which it should since on dev we still use the same server).

I fork the excalidraw long time ago, I might not be up to date

Thanks for the PR!


bind different type of topics in the same broker not working

In my sceniario, I have two different type of topics in the same broker. the first is json output topic and the second is avro input topic. These two topics have different username and password. so I want to use binders to setup the producer and consumer configuration but it not work.
It works fine when I only configure the input binder or output binder in the same application.yml.
I have attached my configuration, maven dependencies and related error message log,
Please help to check whether it is a issue.
scenario.zip

anyone can help advise on it ?

hi team. today I debugged my application into org.springframework.cloud.stream.binding.BindingService. when the running cursor stopped at Line 232 return this.binderFactory.getBinder(binderConfigurationName, bindableType);, from the varables window, I can see that each topic within the bindings has the correct mapped binder name. then I let the program keep running and then I got SaslAuthenticationException from kafka. If I only configure one binder and one bindings, the error would be gone.

@AlvinYueChao I will have a look at this today.

@AlvinYueChao I am not sure what the issue is. From that zip file that you attached ^^, I see an exception - something as below.
org.springframework.cound.stream.binder.BinderException: Exception thrown while starting consumer:
	at org.springframework.cloud.stream.binder.AbstractMessageChannelBinder.doBindConsumer(AbstractMessageChannelBinder.java:435)
    at org.springframework.cloud.stream.binder.AbstractMessageChannelBinder.doBindConsumer(AbstractMessageChannelBinder.java:97)
    at org.springframework.cloud.stream.binder.AbstractBinder.bindConsumer(AbstractBinder.java:142)
    at org.springframework.cloud.stream.binding.BindingService.doBindConsumer(BindingService.java:144)
    at org.springframework.cloud.stream.binding.BindingService.doBindConsumer(BindingService.java:122)
    at org.springframework.cloud.stream.binding.BindableProxyFactory.createAndBindInputs(BindableProxyFactory.java:254)
    at org.springframework.cloud.stream.binding.InputBindingLifecycle.doStartWithBindable(InputBindingLifecycle.java:58)
    at java.util.LindedHashMap$LinkedValues.forEach(LinkedHashMap.java:608)
    at org.springframework.cloud.stream.binding.AbstractBindingLifecycle.start(InputBindingLifecycle.java:48)
    ...
Caused by: java.lang.IllegalArguementException: A list of partitions must be privided
	at org.springframework.util.Assert.isTrue(Assert.java:118)
	at org.springframework.cloud.stream.binder.kafka.KafkaMessageChannelBinder.createConsumerEndpoint(KafkaMessageChannelBinder.jave:432)
	at org.springframework.cloud.stream.binder.kafka.KafkaMessageChannelBinder.createConsumerEndpoint(KafkaMessageChannelBinder.jave:132)
	at org.springframework.cloud.stream.binder.AbstractMessageChannelBinder.doBindConsumer(AbstractMessageChannelBinder.java:382)
	... 24 common frames omitted

However, in your above analysis, you seem to imply that you are getting a SaslAuthenticationException.  Please have a look at this configuration from our samples repository: https://github.com/spring-cloud/spring-cloud-stream-samples/blob/master/multi-binder-samples/kafka-multi-binder-jaas/src/main/resources/application.yml.
That sample indeed takes jaas.options in the configuration. I suggest starting with that sample and compare notes with your configuration and see where it deviates from the sample.
Even after trying that sample, if you are still having trouble running it, could you provide a small standalone application for us to debug with instructions on how we can reproduce the issue?

@sobychacko these two exceptions occured in the same case. firstly, SaslAuthenticationException occured then I got org.springframework.cound.stream.binder.BinderException: Exception thrown while starting consumer. In my case, the producer topic and consumer have different message type and differnent username and password. if these two topics have the same jaas configuration, the issue would not occur. I have attached my use case based on the sample repository
reproduce-application.zip

@AlvinYueChao I will run an application with your configuration and get back to you.

@AlvinYueChao I was able to reproduce your issue. I am still investigating to see if this is a bug in the binder. Basically, the second time a binder context is created (from the multi binder context), the jass properties specified in that context are not properly propagated to the jaas handler. I can see that the KafkaJaasLoginModuleInitializer bean is properly created from the multi binder context. I will try to debug more/discuss with the team internally and find out what the resolution is. Thanks for bringing this to our attention.

@sobychacko after deeply debuging, I think I found the root cause. What I used is JDK 1.8. at javax.security.auth.login.Configuration public static Configuration getConfiguration(), it uses synchronized and null-check to make sure the login configuration only be set once. Event though the spring-cloud-stream framework can support multiple jaas configurations syntax, the final effective configuration would only be the first one. I think if spring-cloud-stream-binder-kafka should disable multiple jaases syntax to avoid this issue ? or we should raise this issue to Java community ?

@AlvinYueChao We also came to sort of the same conclusion. The access credentials are set statically per classloader, thus the jaas configuration set through the second binder context is ignored. We cannot simply pass it along, as jaas won't allow resetting that. As you said, if they make it relaxed, then it will work, but I am not sure how feasible it is to address those issues at the core java security foundation. In fact, there might be valid reasons why it is designed that way.
We can potentially fix this in the binder by loading the binder contexts in separate classloaders. That will make sure that the second update is visible for the access controller. However, we won't be able to make such a major change in 3.0.x SR releases. It has to wait until the next major release 3.1, as this needs to be tested thoroughly for any side effects.
In the meantime, may I ask, why do you have separate access controls for the two topics? Are they on two different Kafka clusters? Or the same cluster, but different login credentials? If you can make the logins the same, that can be used as a workaround.

@sobychacko In my case, these two topics are on the same kafka cluster, but different logic credentials. I have skipped this issue by adding read permission for the one credential. so that the same user can access the different topics. Thanks for your help. Please let me know the update about your changes if you decide to do it.

@AlvinYueChao We will keep this issue open for trying to come up with some alternatives in 3.1.

Hi, @AlvinYueChao. As pointed out by @sobychacko previously, perhaps the more uncomplicated and easy to maintain solution here would be to use the same login credentials for both the users. Once we get into RBAC'ing at individual topics and user impersonation, it gets very complicated.
Let us know if you have any other thoughts/concerns. I will close it for now.

Just wanted to close the loop on this issue. Kafka KIP-85 implementation has a solution for this issue. Here is the gist: Instead of using the binder provided jaas configuration or setting the java.security.auth.login.config property, use the sasl.jaas.config property which takes precedence over other methods. By using sasl.jaas.config, you can override the restriction placed by JVM in which a static security context is used and the first context/configuration always wins. For example, the following configuration is from a single application in which it connects to two different Kafka Clusters.
spring.cloud.stream:
    binders:
        kafka1:
          type: kafka
          environment:
             spring:
               cloud:
                 stream:
                  kafka:
                    binder.brokers: localhost:9092
                    binder.configuration.sasl.jaas.config: "org.apache.kafka.common.security.plain.PlainLoginModule required username=\"admin\" password=\"admin-secret\";"
        kafka2:
          type: kafka
          environment:
            spring:
              cloud:
                stream:
                  kafka:
                    binder:
                      brokers: localhost:9093
                      configuration.sasl.jaas.config: "org.apache.kafka.common.security.plain.PlainLoginModule required username=\"foo\" password=\"foo-secret\";"
    kafka.binder:
        configuration:
          security.protocol: SASL_PLAINTEXT
          sasl.mechanism: PLAIN

Hello!
I'm having similar issue but with ssl certificates.
binders:
        kafka-1:
          type: kstream
          defaultEnvironment: false
          environment:
            spring.cloud.stream.kafka.streams.binder:
              autoCreateTopics: false
              brokers: broker1.net:9093,broker2.net:9093,broker3.net:9093
              configuration:
                security.protocol: SSL
                ssl.truststore.location: trustore1.jks
                ssl.truststore.password: secret-pass
                ssl.keystore.location: keystore1.jks
                ssl.keystore.password: secret-pass
                ssl.key.password: secret-pass
        kafka-2:
          type: kstream
          defaultEnvironment: false
          environment:
            spring.cloud.stream.kafka.streams.binder:
              autoCreateTopics: false
              brokers: broker1.net:9093,broker2.net:9093,broker3.net:9093
              configuration:
                security.protocol: SSL
                ssl.truststore.location: trustore3.jks
                ssl.truststore.password: secret-pass
                ssl.keystore.location: keystore3.jks
                ssl.keystore.password: secret-pass
                ssl.key.password: secret-pass
         ...
         kafka-N:
         ....

Values of kafka-1 for ssl.truststore.location and ssl.keystore.location are used for all binders. Is there similar remedy to ssl configuration?
More about my case here: https://stackoverflow.com/questions/76737736/why-im-getting-topicauthorizationexception-when-multiple-kafka-binders-enabled?noredirect=1#comment135291081_76737736

Hi, This is a closed issue; this repository is no longer maintained or monitored. Please see the README for details. I suggest creating a new issue in core Spring Cloud Stream .