[Question]: Why does DotNet require browser Install when Java version downloads on demand?

Your question
I am evaluating Playwright as a tool for use in mixed language development organisation.  So far, I have setup both Java and DotNet variants to experiment with.  I noticed a significant difference in behaviour.

The Java variant does not require installation of the browsers. Instead when the test program is started it downloads them on demand.
In the DotNet case, if the Install process has not been executed then execution the test program fails, it does not perform an on-demand download.  The browsers have to be installed using pwsh bin\Debug\netX\playwright.ps1 install

Can you clarify the rational for the difference?  Is there a technical barrier to having, as an option, download at the time of execution (as implemented in the Java variant)?  Is the difference based on the DotNet team taking a position on how runtimes should be setup for test execution?

We'll most likely expose a API to install the browsers soon: #1959.
The reason for that is that not always a user wants to have all browsers installed. Sometimes they e.g. just want to do BrowserType.ConnectOverCDPAsync which does not require any browser to be downloaded when the CDP instance is externally.


Consider renaming State.config to State.widget

The term "config" comes from an old version of the system where it made more sense.  It might be more sensible to use the name "widget" now that we consistently call the configuration objects "widgets".
It's a fairly big change, so we should be mindful of the churn it will cause.
(Also, if we made this change, we'll probably want to rename didUpdateConfig as well.)

Yes please. :) That makes more sense to me, at least.
On Thu, Nov 24, 2016, 8:34 PM Adam Barth<EMAIL_ADDRESS>wrote:

The term "config" comes from an old version of the system where it made
more sense. It might be more sensible to use the name "widget" now that we
consistently call the configuration objects "widgets".
It's a fairly big change, so we should be mindful of the churn it will
cause.
(Also, if we made this change, we'll probably want to rename
didUpdateConfig as well.)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/7015, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAVZyVH-do0YLLCEAwwjnvB1vAAbB-Pks5rBmU_gaJpZM4K8GlB
.

Oh man, that's quite the disruptive change. Better do it ASAP if we want to do it.
We do use the term "configuration" in various places, but I agree that it doesn't seem to have sunk in.

I like this change as well.  It would be consistent with Element's getter (which will hopefully by documented as "This element's widget"):
  /// The configuration for this element.
  @override
  Widget get widget => _widget;

"This element's widget" for a getter called widget on a class called Element wouldn't pass our style guide. :-)
I think there is value in continuing to use the term "configuration" for what a widget is to an element, especially if we change the name of the member to widget, because that gives people two ways to think about it and one might get through...

IntelliJ refused this refactoring because widget is used as a local variable in subclasses of State, which would then shadow this getter.  That's probably a common pattern that we'd have to be careful about when making this change.

If everyone agrees, I don't mind doing this manually and try to do something reasonably for the local variable case by case.

If you're willing to try it, let's try it and see how it feels. I'm guessing this is a win.

Ok 2816 config instances, here I come

Ok, I'm thinking
Step 1 - change everything in the flutter repo, leave a deprecated config getter and a deprecated didUpdateConfig
Step 2 - change the website and various docs and slides I can find
Step 3 - change all downstream usages in google3
Step 4 - patch what I can in downstream github users
Step 5 - delete deprecated code

Do we know if @deprecated works for google's source base?  I seem to recall "warnings" were not possible there.   Reach out to @cbracken or @tvolkert to confirm privately would be my recommendation. :)

Step 3 - change all downstream usages in google3

We're also on the hook for updating fuchsia.googlesource.com.
Your plan sounds great.

Do we know if @deprecated works for google's source base?

I didn't do much last time I tried.  However, staging the change as @xster describes will make it possible to update internal customers incrementally, which is quite useful.

@deprecated is OK for the internal source base; developers will get the warning in their IDEs, but it won't break tests, and we can do a global fixup on the code as soon as we're ready.

Yep, +1 for @xster's plan - we'll make a sweep and update all internal call sites

ya, we don't need @deprecated to work per se.  We'll just go do it for them.
The annotation will just be for people adding stuff during the transition.
Understood for the fuchsia codebase.


Incorrect sparse texture status HLSL mapping

https://github.com/KhronosGroup/Vulkan-Guide/blob/c432ecbfc7439788ff0d7b75c99a34446c2c7897/chapters/high_level_shader_language_comparison.adoc#L580
sparseTexelsResidentARB corresponds to HLSL's CheckAccessFullyMapped.

Thank you very much for your feedback. Would be nice if you could put all the feedback related to that new page into one single issue. That makes it a lot easier for me to track.


Support/firebase imrpovements

Distribution now takes place only when pushing to "develop" and "main". PRs are ignored.
Common steps are moved to a separate Github action.

Just one thing related to this PR. We have files with same name in different directories, can we rename the files.
For example firebase-config/actions.yml to became firebase-config/firebase-actions.yml or it's a reserved word(filename)


Move from Incubator to RTK

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: CONTRIBUTING.md#commit
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: #25
What is the new behavior?
Does this PR introduce a breaking change?
[x] Yes
[ ] No

Other information

:tada: This PR is included in version 1.8.0-next.1 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


iPad render issue in complex view configuration

The following view shows an issue I got with an iPad tablet:
http://jsbin.com/xifugoribu/edit?html,output
The view works perfect on the desktop, but if you use an iPad following happens.
If the "SOME_TEXT" icon tab bar is expanded the text "ST" moves upwards (over the input box).
Then you get an issue if you try to enter something into the input box under "tt" label.
If you collapse the icon tab bar (SOME_TEXT) then "ST" moves to the "right" place and you can enter something into the input field under "tt".
On desktop I can't see that issue with Firefox, Chrome and IE.

Problem exists (at least) since 1.28.x and still in 1.32.x

Thanks!
I could reproduce this issue even with the latest version from master.
The first broken version seems to be 1.28.0. It can not be reproduced with any 1.26 version.
Both iOS 8.4 and 9.1 give the exact same result (using the Simulator on OS X). I haven't tried 9.2 as I couldn't install it, yet but I will do so to check if it's any iOS related issue.
Safari 9.0.2 (11601.3.9) is also broken.

With iOS 9.2 it's still broken. Internal reference:<PHONE_NUMBER>

Unfortunately, this is a browser inconsistency in Mobile Safari. The easiest way to work around this issue is to switch off shrinking for the first flex item (the table in the example). Something like:
layoutData: new sap.m.FlexItemData({shrinkFactor: 0})

@thomaskoetter this should be taken in consideration by the framework, since a lot of us have no access to any IOs Safari and sap.m.* shows more problems on Apple mobile / phone platforms that ux3 ever did.
Just my .002 eurocents.
--R


phantomjs 139 segmentation fault.

<EMAIL_ADDRESS>commented:

phantomjs-1.7.0-linux-x86_64.tar.bz2	 PhantomJS 1.7.0 Linux x86-64
If I execute the command via command line using ssh it works fine. Just displays this error
Fontconfig error: Cannot load default config file
but creates the image correctly.
However when the application executes the command:
$output = array();
$return_var=0;
$command = "./../phantom/phantomjs ../phantom/rasterize.js http://www.nfl.com ../phantom/2.png";
exec($command,$output,$return_var);
The return var is 139 segmentation fault.
Why is this happenig? I contacted with my hosting provider and they say me that its the binary problem. They say:
I did notice that the program attempts to open some non-existant files and this may be hard coded in the binary:
13:09:41 open("/lib64/ld-linux-x86-64.so.2", O_RDONLY) = 3
13:09:41 open("/home/vagrant/phantomjs/src/qt/lib/tls/x86_64/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
13:09:41 open("/home/vagrant/phantomjs/src/qt/lib/tls/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
13:09:41 open("/home/vagrant/phantomjs/src/qt/lib/x86_64/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
13:09:41 open("/home/vagrant/phantomjs/src/qt/lib/libfreetype.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
13:09:41 open("/etc/ld.so.cache", O_RDONLY) = 3
13:09:41 open("/usr/lib64/libfreetype.so.6", O_RDONLY) = 3
13:09:41 open("/usr/lib64/libfontconfig.so.1", O_RDONLY) = 3
13:09:41 open("/lib64/libdl.so.2", O_RDONLY) = 3
13:09:41 open("/lib64/librt.so.1", O_RDONLY) = 3
13:09:41 open("/lib64/libpthread.so.0", O_RDONLY) = 3
13:09:41 open("/usr/lib64/libstdc++.so.6", O_RDONLY) = 3
13:09:41 open("/lib64/libm.so.6", O_RDONLY) = 3
13:09:41 open("/lib64/libgcc_s.so.1", O_RDONLY) = 3
13:09:41 open("/lib64/libc.so.6", O_RDONLY) = 3
13:09:41 open("/lib64/libexpat.so.1", O_RDONLY) = 3
13:09:41 open("/usr/lib/locale/locale-archive", O_RDONLY) = 3
13:09:41 open("/etc/fonts/fonts.conf", O_RDONLY) = 7
13:09:41 open("/etc/fonts/conf.d", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 8
13:09:41 open("/etc/fonts/conf.d/20-fix-globaladvance.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/20-unhint-small-dejavu-lgc-sans-mono.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/20-unhint-small-vera.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/25-no-bitmap-fedora.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/25-unhint-nonlatin.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/30-metric-aliases.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/30-urw-aliases.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/40-nonlatin.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/45-latin.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/49-sansserif.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/50-user.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/51-local.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/57-dejavu-sans-mono.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/58-dejavu-lgc-sans-mono.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/60-latin.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/65-fonts-persian.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/65-nonlatin.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/69-unifont.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/80-delicious.conf", O_RDONLY) = 9
13:09:41 open("/etc/fonts/conf.d/90-synthetic.conf", O_RDONLY) = 9
13:09:41 open("/var/cache/fontconfig/3830d5c3ddfd5cd38a049b759396e72e-le64.cache-3", O_RDONLY) = 7
13:09:41 open("/var/cache/fontconfig/0251a5afa6ac727a1e32b7d4d4aa7cf0-le64.cache-3", O_RDONLY) = 7
13:09:41 open("/var/cache/fontconfig/12b26b760a24f8b4feb03ad48a333a72-le64.cache-3", O_RDONLY) = 7
13:09:41 open("/var/cache/fontconfig/b79f3aaa7d385a141ab53ec885cc22a8-le64.cache-3", O_RDONLY) = 7
13:09:41 open("/var/cache/fontconfig/87f5e051180a7a75f16eb6fe7dbd3749-le64.cache-3", O_RDONLY) = 7
You will need to contact the developer to help resolve this issue.
Please help!

Disclaimer:
This issue was migrated on 2013-03-15 from the project's former issue tracker on Google Code, Issue #902.
:star2:   3 people had starred this issue at the time of migration.

Please upgrade to PhantomJS 2.0. 1.9.x is no longer supported, and known to have many crasher bugs that are fixed in 2.0.


feat: fast open

Adds an option fast_open in client config to defer the response handling to the first Read() call, which allows applications to send requests without waiting for an RTT.
Tested using docs/socks5/check.py:
no fast_open:
Sending HTTP request to <IP_ADDRESS>
Response received
Time: 206.59 ms

with fast_open:
Sending HTTP request to <IP_ADDRESS>
Response received
Time: 105.87 ms

Note that this breaks the semantics of the SOCKS5/HTTP proxy, as what's originally returned as a "host unreachable" error will become an "empty reply from server" error (because the proxy now always accepts a connection to "bait" for a request).
For this reason, we should make this disabled by default to avoid unanticipated behavior changes.

after test. tcp connection reduce 1-rtt but udp not .

is comming, nice!


BSK: Check array items for surrogate methods

Task/Issue URL: https://app.asana.com/0/414709148257752/1202208403599546/f
Tech Design URL:
CC:
Description:
Update of https://github.com/duckduckgo/iOS/pull/1140
Steps to test this PR:
1.
2.

Copy Testing:

[ ] Use of correct apostrophes in new copy, ie ’ rather than '

Orientation Testing:

[ ] Portrait
[ ] Landscape

Device Testing:

[ ] iPhone SE (1st Gen)
[ ] iPhone 8
[ ] iPhone X
[ ] iPad

OS Testing:

[ ] iOS 13
[ ] iOS 14
[ ] iOS 15

Theme Testing:

[ ] Light theme
[ ] Dark theme

Internal references:
Software Engineering Expectations
Technical Design Template
When ready for review, remember to post the PR in MM

LGTM!


client tests do not cover npmjs delegation or artifact

We could add anything in the npjs delegation and the current tests will be fine

this should obviously be done in staging first, maybe with https://github.com/sigstore/root-signing-staging/issues/155


Runtime Error: attn_mask.dtype: float and  query.dtype: c10::Half

I use xtuner to pretrain LLava-internlm-7b. I prepared the pretain data according to this link, and used the config file llava_internlm_chat_7b_clip_vit_large_p14_336_e1_gpu8_pretrain_copy.py. I got the config file by "xtuner copy-cfg" and I only modified the batch size from 32 to 1.
And then I got the following error:
File "/opt/conda/lib/python3.10/site-packages/xtuner/model/modules/dispatch/in ternlm.py", line 66, in internlm_attn_forward     attn_output = F.scaled_dot_product_attention( RuntimeError: Expected attn_mask dtype to be bool or to match query dtype, but g ot attn_mask.dtype: float and  query.dtype: c10::Half instead.
I checked line 66 in internlm.py, and found query_states, key_states , and value_states are all torch.float16.
I am using an instance from Vast.ai with single 4090 GPU.
Could you please check this error and tell me how to fix it?

Please post the full command you used. I think you are not using deepspeed?
If that is, please try to use xtuner train $CFG --deepspeed deepspeed_zero2

Thanks! It does work now


fix(carousel): swiper scrollbar styles

Summary
Update Swiper scrollbar styles to match Figma.
Figma Design Link
https://www.figma.com/design/CQuDZEeLiuGiALvCWjAKlu/Applications---Component-Library?node-id=16511-30483&node-type=instance&m=dev

:tada: This PR is included in version 2.0.0-next.13 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update "About" FlowForge page

Description
Updated the layout and info of the entire page
Related Issue(s)
Closes #798
Checklist

[x] I have read the contribution guidelines
[x] I have considered the performance impact of these changes
[ ] Suitable unit/system level tests have been added and they pass
[ ] Documentation has been updated

Thoughts on changing from font-bold to font-medium?
bold:

medium:

should also add:
align-items: center;

to the .investors .logos class to vertically align them.

Other than the above - all good

Hi @joepavitt, thanks for the feedback! I already pushed the changes.


[BUG] Freezes on Hyprland after recent update

Hyprland version:
Hyprland, built from branch  at commit 9e781040d9067c2711ec2e9f5b47b76ef70762b3  (props: bump version to 0.41.1).
Date: Thu Jun 13 09:54:06 2024
Tag: v0.41.1, commits: 4818

flags: (if any)

When running yofi window appears, but no input is available on the whole compositor, except switching between workspaces.
Running with force_window = true does not freeze, but no window appears.
Running log:
2024-06-16T11:03:41.968001684Z[sctk][DEBUG] Bound new global [1] wl_seat v7
2024-06-16T11:03:41.968104017Z[sctk][DEBUG] Bound new global [48] wl_output v4
2024-06-16T11:03:41.968135888Z[sctk][DEBUG] Bound new global [9] zxdg_output_manager_v1 v3
2024-06-16T11:03:41.968405559Z[sctk][DEBUG] supported wl_shm format Argb8888
2024-06-16T11:03:41.968437459Z[sctk][DEBUG] supported wl_shm format Xrgb8888
2024-06-16T11:03:41.968458670Z[sctk][DEBUG] supported wl_shm format Xbgr8888
2024-06-16T11:03:41.968479168Z[sctk][DEBUG] supported wl_shm format Abgr8888
2024-06-16T11:03:41.968501731Z[sctk][DEBUG] supported wl_shm format Bgr888
2024-06-16T11:03:41.968524033Z[sctk][DEBUG] supported wl_shm format Rgbx4444
2024-06-16T11:03:41.968543811Z[sctk][DEBUG] supported wl_shm format Rgba4444
2024-06-16T11:03:41.968563308Z[sctk][DEBUG] supported wl_shm format Rgbx5551
2024-06-16T11:03:41.968583185Z[sctk][DEBUG] supported wl_shm format Rgba5551
2024-06-16T11:03:41.968602893Z[sctk][DEBUG] supported wl_shm format Rgb565
2024-06-16T11:03:41.968622360Z[sctk][DEBUG] supported wl_shm format Xbgr2101010
2024-06-16T11:03:41.968641446Z[sctk][DEBUG] supported wl_shm format Abgr2101010
2024-06-16T11:03:41.968660392Z[sctk][DEBUG] supported wl_shm format Xbgr16161616f
2024-06-16T11:03:41.968680259Z[sctk][DEBUG] supported wl_shm format Abgr16161616f
2024-06-16T11:03:41.968699706Z[sctk][DEBUG] supported wl_shm format Xbgr16161616
2024-06-16T11:03:41.968723271Z[sctk][DEBUG] supported wl_shm format Abgr16161616

Did it work at 0.2.1? There's almost no diff

I suppose my last used version was after this PR: https://github.com/l4l/yofi/pull/156
And yofi started to freeze on it.
I've updated to latest master and it didn't help.

Hi, I am unsure if it is the same problem, but on my side, I have the same effect with this specific error:
2024-06-24T08:54:15.269527575Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.286167509Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.302888110Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.319285833Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.336092200Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.353197210Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.370622724Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.386238149Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)
2024-06-24T08:54:15.403178263Z[yofi::icon][INFO] failed to load icon at path `"/usr/share/icons/Adwaita/16x16/categories/applications-engineering-symbolic.symbolic.png"`: No such file or directory (os error 2)

And indeed this icon is not there.
So the program is not frozen for me, but it looks like it.
I hope it will be useful!

It's not :)
Adwaita just changed files hierarchy. To fix this: set right fallback_icon_path as described here https://github.com/l4l/yofi/wiki/Configuration

Same here! Do not know if it's a Hyprland problem or a yofi issue.

Same here! Do not know if it's a Hyprland problem or a yofi issue.

Waybar, which also use wlr_layer_shell works file, so I think it's rather yofi's side problem.

As @l4l said, yofi undergone nearly no changes in last commits.
I updated hyprland to latest and the problem is gone.

Yes, it was indeed Hyprland after all.


[FEATURE] Set UID and GID of opensearch user and group to 10000

Is your feature request related to a problem?
Checkov recommends that the UID of containers run with 10000 or more - Ref: Ensure containers run with a high UID to avoid host conflict
What solution would you like?
Change the UID (and GID to make is consistent) defined in the Dockerfile to 10000
What alternatives have you considered?
Do you have any additional context?

Hi we are not using this repo for building docker images.
All the building scripts are currently reside here:
https://github.com/opensearch-project/opensearch-build/tree/main/docker
Thanks.

Hi @nilushancosta ,
I am moving this issue to build repo.
Thanks @nilushancosta for your initial PR here, but I suspect this is a breaking change to add.
Since many users might already turn their script to lock on to 1000 id.
I am happy to continue the discussion in build repo there.
Thanks.


Set RollForward to LatestMajor.

This enables running dotnet-example when (e.g.) only .NET 7 is installed. This is a good practice for .NET global tools so that they work on future runtimes without needing updates.

Merged! Thank you for your contribution. Much appreciated! 👍


Improvement clear arena when finalize one row

Proposed changes
clear arena when finalize one row
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

Very very important work, This PR will reduce many memory for agg table.


Why didn't you find Dashboard ？

Console not found，When to support

https://bifromq.io/docs/faq/bifromq/#why-doesnt-bifromq-have-a-management-consoleui-interface


update docker tutorials

When start a calico-node users should set ETCD_AUTHORITY env. Otherwise
command "calicocto node" fails like this:
"ERROR: Could not connect to etcd at <IP_ADDRESS>:2379:
Connection to etcd failed due to MaxRetryError..."
This problem is found when I try to deploy my environment according
to this tutorial.

 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.

@CaoShuFeng Could you actually update to use ETCD_ENDPOINTS=http:<etcd_ip>:<port> instead of ETCD_AUTHORITY?
We're deprecating ETCD_AUTHORITY in favor of ETCD_ENDPOINTS

@caseydavenport
Thanks for your review.
ETCD_ENDPOINTS tests OK in my environment.
I see many "ETCD_AUTHORITY" in doc, I know it would be better to update them all.
But I don't have enough time to test them all, so I didn't update them.

@CaoShuFeng - Yep! Definitely didn't mean for you to update them all - we'll take care of that.
Thanks for the PR!
Build failure doesn't appear to be yours, so merging.


Locus with IP2Proxy support

Hi @g-andrade
Are you planning to support IP2Proxy detection within Locus?
By the way, Locus is very useful for us. Big thanks

Hi @Zabrane, sleek website!
I’d like for locus to support any MMDB database - 50% of it because I really like the wire format and spec, the other 50 because it was the right time and place for me back when I did the bulk of the work and it matched what I needed for my job.
So, if it’s MMDB format, maybe - if not, I’ve scratched that itch already (I skimmed the website, I’m sorry if it obviously is or isn’t and I missed it.)
All of that having been said: this library was a pet project all along, and I’ve moved onto other things. Let me know if your proposal is a simple extension of what ‘locus’ already does.
Cheers,

Hi @g-andrade
The IP2Proxy database is available in both CSV in Bin (MMDB) format if I'm not mistaken (see screenshot).

Will you consider supporting IP2Proxy in the future?

locus doesn't like the binary format:

Their FAQ page mentions that it's a custom binary format - no mention of MMDB - and I didn't find a spec for it.
There is, however, an Erlang module which may fit your needs, although it looks bare bones (not an Erlang app, no rebar3 or other tooling configured, really just the parser):
https://www.ip2location.com/development-libraries/ip2location/erlang

Also, someone somewhere once wrote a script to convert IP2Proxy databases to MMDB format:
https://github.com/fengdelan/convert-ip2proxy-lite-mmdb
(I now realize I tested IP2Location databases earlier - not IP2Proxy - but the later are also not in MMDB format.)


table_sort? more like "table_port" if you ask me.

I rule and have completed some work on Case Manager that's ready for review!
Convert table_sort.coffee to table_sort.js
This pull request makes the following changes:

Convert the table_sort.coffee coffeescript into JS
Import the new JS in the application pack
Import the stupidtable plugin from NPM instead of vendoring it
Add document to the list of globals that ESLint is aware of

It relates to the following issue #s:

Fixes #1684

CI failures are from our known circle issues with forks, so smashing that merge button. Thank you @jmhooper !


cleanup: Remove alt-start script from package.json

https://github.com/OurTechCommunity/catchup/blob/8f57f8e59e92b5090306e1498cf2038615764080/package.json#L6-L9
The alt-start script was added in https://github.com/OurTechCommunity/catchup/commit/3e5c7384d5b6641f3761298d90d1c27709a98b74 but doesn't seem to be used at the moment.
Needs to be removed from CONTRIBUTING.md too.
https://github.com/OurTechCommunity/catchup/blob/507a2f54062005d4718814b5e3cf7c2a4fd9ba0d/CONTRIBUTING.md?plain=1#L16

cc: @HarshKapadia2

As mentioned in a comment of PR 97:

Replying to Kartik's comment:

The alt-start script was added in https://github.com/OurTechCommunity/catchup/commit/3e5c7384d5b6641f3761298d90d1c27709a98b74.
I don't remember why, it isn't used anywhere else in the repo either.
@HarshKapadia2 do you see any reason to keep it around?

It was added to work in Gitpod, as the original npm run start command was not working. (CONTRIBUTING.md#gitpod-setup)

I hve not tested this again after new changes to the repository, so this might be outdated. We need to check this.

Let me know if npm run start doesn't work on GitPod, I'll investigate.

Yeah npm run start works for me @KartikSoneji. I checked Gitpod.

Great, I'll remove alt-start.


Cloud Research Notebooks fail to restart

Expected Behavior
clicking "restart" at the top of the notebook will interrupt current process and allow me to run the notebook as if it was fresh with no problems
Actual Behavior
the notebook seems to interrupt but the cell that was running during the restart becomes corrupted and can no longer be executed. displays a square symbol in place of the play button. upon clicking the square the notebook displays a waiting symbol infinitely.
Potential Solution
only solution is to stop the research node and close out of the project, then re open the project.
Reproducing the Problem
run this code, then click "restart" while it is still running:
#load "../Initialize.csx"
#load "../QuantConnect.csx"
#r "../Plotly.NET.dll"
using QuantConnect;
using QuantConnect.Data;
using QuantConnect.Data.Market;
using QuantConnect.Securities;
using QuantConnect.Securities.Future;
using QuantConnect.Algorithm;
using QuantConnect.Research;
using System;
using System.Linq;
using System.Data;
using System.Collections.Generic;
using System.Runtime;
using System.Diagnostics;
using Newtonsoft.Json;
using System.Threading.Tasks;
using Plotly.NET;
using Plotly.NET.LayoutObjects;
using static Plotly.NET.StyleParam;
using Microsoft.AspNetCore.Html;
var qb = new QuantBook();
// Define start and end dates
DateTime startDate = new DateTime(2022, 6, 19);
DateTime endDate = new DateTime(2022, 6, 25);
var startDate2 = startDate;
var endDate2 = endDate;
List futuresContracts = new List {
//Futures.Indices.SP500EMini,       // ES
Futures.Indices.NASDAQ100EMini,   // NQ
//---Futures.Indices.Dow30EMini,       // YM
//Futures.Indices.Russell2000EMini, //RTY
//Futures.Metals.Gold,      // GC
//Futures.Metals.Copper,            // HG
//Futures.Metals.Silver,    // SI
//-----Futures.Grains.Corn,              // ZC, cbot
//---Futures.Grains.Soybeans,          // ZS
////Futures.Grains.SoybeanMeal,       // ZM
//----Futures.Grains.SoybeanOil,        // ZL
//----Futures.Grains.Wheat,             // ZW
//----Futures.Financials.Y2TreasuryNote,   //CBOT
//----Futures.Financials.Y30TreasuryBond,
//----Futures.Financials.Y5TreasuryNote, // ZF
//-----Futures.Financials.Y10TreasuryNote,
//Futures.Energies.CrudeOilWTI,     // CL
//Futures.Energies.NaturalGas,      // NG, nymex
//Futures.Energies.HeatingOil,      // HO
//Futures.Energies.Gasoline,        // RB
};
Dictionary<string, Future> futureSecurities = futuresContracts.ToDictionary(
contract => contract,
contract => qb.AddFuture(contract, Resolution.Tick,
dataNormalizationMode: DataNormalizationMode.Raw,
dataMappingMode: DataMappingMode.OpenInterest,
contractDepthOffset: 0));
List<Dictionary<string, object>> allOrders = new List<Dictionary<string, object>>();
foreach (var future in futureSecurities.Values)
{
DateTime currentDate = startDate;
while (currentDate < endDate)
{
    var minuteOHLC = qb.History<Tick>(future.Symbol, currentDate, currentDate.AddDays(1), Resolution.Tick);
    //var minuteOHLC = qb.History(Futures.Grains.Corn, currentDate, currentDate.AddDays(1), Resolution.Minute);
    Console.WriteLine($"Length of minuteOHLC for symbol {future.Symbol}: {minuteOHLC.Count()}");

    currentDate = currentDate.AddDays(1);
}

}
System Information
Chrome V119.0.6045.123 (x86_64)
MacOS
Checklist

[x ] I have completely filled out this template
[ x] I have confirmed that this issue exists on the current master branch
[ x] I have confirmed that this is not a duplicate issue by searching issues

[ x] I have provided detailed steps to reproduce the issue

Hey @gmwhipple! Thank you for the report, please contact support directly to handle these issues that are not related to a lean core issue.


Make the validator CI work

If anyone has an idea to make this CI work 🙏
https://github.com/meilisearch/open-api/pull/4

Closed in favor of: https://github.com/meilisearch/meilisearch/issues/4871


Fixed reading of maximum_number_of_collected_logs

This fixes memory leak when collecting logs, cause maximum_number_of_collected_logs config value was always NULL and collecting of logs records was infinite.

Thank you!


Can't use attachTo with TypeScript

When trying to mount a component with the attachTo option, TypeScript will fail with this totally reasonable response:
No overload matches this call.
  The last overload gave the following error.
    Argument of type 'DefineComponent<{ multiple: { type: BooleanConstructor; default: boolean; }; }, { formId: string; files: ComputedRef<ActorRefWithDeprecatedState<Context, Events, { value: any; context: Context; }>[]>; ... 16 more ...; useFiles: () => void; }, ... 9 more ..., { ...; }>' is not assignable to parameter of type 'ComponentOptionsWithObjectProps<Readonly<ComponentPropsOptions<Data>>, { formId: string; files: ComputedRef<ActorRefWithDeprecatedState<Context, Events, { value: any; context: Context; }>[]>; ... 16 more ...; useFiles: () => void; }, ... 8 more ..., { ...; } | {}>'.
      Type 'DefineComponent<{ multiple: { type: BooleanConstructor; default: boolean; }; }, { formId: string; files: ComputedRef<ActorRefWithDeprecatedState<Context, Events, { value: any; context: Context; }>[]>; ... 16 more ...; useFiles: () => void; }, ... 9 more ..., { ...; }>' is not assignable to type 'ComponentOptionsBase<Readonly<(readonly unknown[] & { [x: number]: string; } & { [iterator]?: IterableIterator<string> | undefined; concat?: string[] | undefined; indexOf?: ((searchElement: string, fromIndex?: number | undefined) => number) | undefined; ... 20 more ...; toLocaleString?: string | undefined; }) | ({ ....'.
        Types of property 'setup' are incompatible.
          Type '((this: void, props: Readonly<LooseRequired<Readonly<{ multiple?: unknown; } & { multiple: boolean; } & {}>>>, ctx: SetupContext<Record<string, any>>) => void | ... 2 more ... | Promise<...>) | undefined' is not assignable to type '((this: void, props: Readonly<LooseRequired<(Readonly<(readonly unknown[] & { [x: number]: string; } & { [iterator]?: IterableIterator<string> | undefined; concat?: string[] | undefined; indexOf?: ((searchElement: string, fromIndex?: number | undefined) => number) | undefined; ... 20 more ...; toLocaleString?: strin...'.
            Type '(this: void, props: Readonly<LooseRequired<Readonly<{ multiple?: unknown; } & { multiple: boolean; } & {}>>>, ctx: SetupContext<Record<string, any>>) => void | ... 2 more ... | Promise<...>' is not assignable to type '(this: void, props: Readonly<LooseRequired<(Readonly<(readonly unknown[] & { [x: number]: string; } & { [iterator]?: IterableIterator<string> | undefined; concat?: string[] | undefined; indexOf?: ((searchElement: string, fromIndex?: number | undefined) => number) | undefined; ... 20 more ...; toLocaleString?: string...'.
              Types of parameters 'props' and 'props' are incompatible.
                Property 'multiple' is missing in type 'Readonly<LooseRequired<(Readonly<(readonly unknown[] & { [x: number]: string; } & { [iterator]?: IterableIterator<string> | undefined; concat?: string[] | undefined; indexOf?: ((searchElement: string, fromIndex?: number | undefined) => number) | undefined; ... 20 more ...; toLocaleString?: string | undefined; }) | (...' but required in type 'Readonly<LooseRequired<Readonly<{ multiple?: unknown; } & { multiple: boolean; } & {}>>>'.ts(2769)
mount.d.ts(22, 25): The last overload is declared here.
import App

Adding the props manually also doesn't do anything, so the error isn't really related to the props (I assume)

For reference, this is basically the test file:
import App from '#/App.vue'

let wrapper: VueWrapper<any>

describe('App', () => {
  describe('defaults', () => {
    it('stores the form ID', async () => {
      document.body.innerHTML = `

  <form id="test-form-1" action="/cart/add">
    <button type="submit">Add to cart</button>

`
      //@ts-ignore
      wrapper = mount(App, { // this is the TS error point, on App
        attachTo: document.getElementById('app'),
      })

      expect(wrapper.vm.formId).toBe('test-form-1')
    })
  })
})

The type for attachTo is HTMLElement | string. So what I think you need to do:
wrapper = mount(App, {
  attachTo: document.querySelector<HTMLElement>('#app')!
})

You need to tell it that the element does exist with ! and that it's a HTMLElement, since we don't supporting attaching to a null value (doesn't make sense).
If this doesn't work, let me know, but I think our types are correct here.

Ah I see, your example didn't quite work but the following does:
      wrapper = mount(App, {
        attachTo: document.getElementById('app') as HTMLElement,
      })

Thanks!

The Vue components types are especially messy, especially considering it goes through a language server plugin. Not sure much can be done... glad to help.


[robin-hood-hashing] Update to latest version

https://github.com/martinus/robin-hood-hashing/releases/tag/3.8.0

/azp run

/azp run

/azp run


fix: new task created when editing task assignee

Details

Fixed Issues

$https://github.com/Expensify/App/issues/39260
PROPOSAL:
Tests

Open any chat
Create a task
Open the task details and assign the task to the user you share the task with
Navigate to the chat and open the task again
Verify that a duplicate task is not created in the task details page

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

Open any chat
Create a task
Open the task details and assign the task to the user you share the task with
Navigate to the chat and open the task again
Verify that a duplicate task is not created in the task details page

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/53095363/7db49f67-15ae-4c3f-a67e-e3b445694235

Android: mWeb Chrome

https://github.com/Expensify/App/assets/53095363/081050ac-d3e9-43d1-8898-332cca0b003c

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/53095363/45ad10af-cdef-43a2-a231-89aaa499af04

MacOS: Desktop

https://github.com/Expensify/App/assets/53095363/7af5a144-31f3-43eb-ac1f-61bdfa606b5d

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

🚀 Deployed to staging by https://github.com/bondydaa in version: 1.4.62-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/bondydaa in version: 1.4.62-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/bondydaa in version: 1.4.62-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/thienlnam in version: 1.4.62-17 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Fix/ip address

Not sure if this is of interest, and I am sure that there are better ways of implementing this, and don't feel you need to merge as this may be specific to me.
I was getting notified of clients with blank IPs, and it seems that the $client->IP  isn't always populated, so I added an option to add the last IP and if that was not found to used fixed IP.
I have added some features to my code for always notifying if the client is on a specific network (e.g. guest), a None notifier (e.g. just print to console, useful for debugging), and adding a comment if the mac address is randomized, and reading the mac addresses from file.  I can create pull requests for these if any are of interest, but I don't want to impose.

@rcastberg that seems odd, in what cases would IP not be populated?
Perhaps we add a setting to this to allow user to pull the last populated IP or have it blank?


Refactor test_billing_exchanges

⬑ #3994
← #4102 (diff) — #4111 →
Makes way for some MassPay tests in #4111.
TODO

[ ] rebase once #4102 lands

Rebased on latest #4102, previous head was 61189512b479af68e318eecb137f9b17b60b1d6a.

Rebasing on master since #4102 is merged..

Changes look good, waiting for Travis to merge

👍


Pass app version to CreateCommitment and NewMsgPayForBlobs

When creating PFBs, and specifically PFB commitments, we will need to pass the app version to provide enough context for the application to generate the correct commitment for that version.

Is this still necessary? CreateCommitment moved to the go-square repo and now accepts a param for subtreeRootThreshold which can vary based on app version.

that's a good question, I'm not sure!
it might be best to pass app version to avoid breaking the api for those functions in the future when things change. Either way, we should move this to that repo


Option to turn off processing of the format keyword

From the Draft 2019-09 release notes:

The key difference here is that format validation is now predictably off by default, but can be configured to be turned on. In draft-07, it was on (but possibly unimplemented) by default and could be configured to be turned off.

The release notes page contains a table with possible validation outcomes, depending on multiple factors - support level, configuration, and vocabulary. In our case, we don't support vocabularies just yet and I don't see much reason to distinguish "full syntax" vs "best effort" support level, so I think we can reduce that table to this one:

supported
configuration
outcome

no
-
not validated

yes
default (off)
not validated

yes
on
validated

When vocabularies will be implemented, we can revisit this behavior and add some VocabularyError to the mix.
On the implementation side, it can be controlled with a new configuration value in compilation::options::CompilationOptions that will turn format validation on and off (with false as the default value in Default impl). Let's say it is validate_formats, then its value is false on the new draft (which is behind a feature flag at the moment) and true on older drafts to maintain backward-compatible behavior.
This change will require a setter on compilation::options::CompilationOptions similarly to other setters there.
Then, depending on this value we can just return None from keywords::format::compile if it is false, which will turn format validation off.

Any details regarding this? I might try to do it

@oren0e
Thanks!
I updated the issue description :) Let me know if it provides enough details, I'll be happy to elaborate if it doesn't


Looking for solution: Recording problem when connection is weak

As expected, when a publisher has connection issues, I get tons of useless micro-recordings. I see that I can use record_append to resolve this - but does that mean ALL recordings will be appended to the same file? What about different publishing sessions on different days?
What I'm trying to accomplish:
User streams at 1pm, for an hour, with multiple connection issues. I end up with only 1 recording file for that 1hour session. User streams again on the next day with / without issues, and I have a different recording file.
I guess what I'm asking is if there is a way to use record_append, but distinguishing between a connection issue (bandwidth issue, etc) and an actual "unpublish" where the user stops streaming. On the connection drop, we'd do nothing (we want the recording to keep going and append when they reconnect) - but on the actual unpublish, we would "finalize" that file, move it, and delete it so it can't be appended to in future streaming sessions.
Any ideas? Thanks for the help.

Current setup:
exec_publish - start a "recording session" in the database to track the recording
exec_record_done - finalize the file and sesison, move to the cloud.
Problem:
Tons of micro-recordings when publisher has bandwidth issues.
Question - is exec_publish_done exactly the same as exec_record_done? Does exec_publish_done know the difference between a connection drop and an actual unpublish from OBS or the like?


lodash methods not found

I am running the example code on Mac OS. However, I am getting the following error:
Node-Zillow error:  TypeError: _.chain(...).map(...).map(...).map(...).fromPairs is not a function
    at handleResponse (/hamidb/applications/node-zillow/lib/helpers.js:99:8)
    at _fulfilled (/hamidb/applications/node-zillow/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/hamidb/applications/node-zillow/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/hamidb/applications/node-zillow/node_modules/q/q.js:816:13)
    at /hamidb/applications/node-zillow/node_modules/q/q.js:570:49
    at runSingle (/hamidb/applications/node-zillow/node_modules/q/q.js:137:13)
    at flush (/hamidb/applications/node-zillow/node_modules/q/q.js:125:13)
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
    at process._tickCallback (internal/process/next_tick.js:104:9)

Can you try uninstalling and reinstalling the package?  It seems to be missing the lodash dependency.

Thanks for quick response. In fact I did that.
It seems that the problem is with .fromPairs function. When I comment it, it is working fine.
I installed lodash 13.0.1

Do you have lodash globally installed?  The current version is 4.17.4 and the package.json calls for a 4.x version.


Can I safely read from draft?

Is it safe to read from draft?
My understanding is that it should work and may have performance consequences because of the Proxy indirection, but otherwise it's perfectly fine to read draft?
I ask because I've created an abstraction where my functions have access to draft but not previousState.  I know I can use original(draft) but I was wondering about just reading from draft directly.

Yes, as long as your recipe runs
On Wed, 9 Feb 2022, 23:17 Andrew Blakey, @.***> wrote:

Is it safe to read from draft?
My understanding is that it should work and may have performance
consequences because of the Proxy indirection, but otherwise it's
perfectly fine to read draft?
I ask because I've created an abstraction where my functions have access
to draft but not previousState. I know I can use original(draft) but I
was wondering about just reading from draft directly.
—
Reply to this email directly, view it on GitHub
https://github.com/immerjs/immer/issues/903, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAN4NBGTC5MREO6ETSUNWWDU2LYZNANCNFSM5N65VXCA
.
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.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Max int literal const overflows when used from global scope using DDC, but not dart2js

Hi there! Going off this DDC build output:
[error] The integer literal '0x7FFFFFFFFFFFFFFF' can't be represented exactly in JavaScript. The nearest value that can be represented exactly is '0x8000000000000000'

This max int literal overflows in DDC, but not dart2js, when used as a globally scoped const:
const int globallyScopedBigInt = 0x8000000000000000;

void printBigInts() {
  const int locallyScopedBigInt = 0x8000000000000000;
  print('global scope: $globallyScopedBigInt');
  print('local scope: $locallyScopedBigInt');
}

void main() {
  printBigInts();
}

dart2js output:
global scope:<PHONE_NUMBER>854776000
local scope:<PHONE_NUMBER>854776000

DDC output:
global scope: -9223372036854776000
local scope:<PHONE_NUMBER>854776000

Hi - if you're on the latest build_web_compilers, this should be fixed.  We recently migrated DDC to the same frontend as dart2js (but it's controlled by a switch in build_web_compilers).  You should see the dart2js output above on both now.
Closing as I think it's fixed.  Please reopen if you're seeing issues on the latest.


chore: Update Gradle to version 8

:loudspeaker: Type of change

[ ] Bugfix
[ ] New feature
[x] Enhancement
[x] Refactoring

:scroll: Description

Upgrade Gradle to version 8 to catch up with latest changes.
:green_heart: How did you test it?

Android and iOS samples.
:pencil: Checklist

[x] I reviewed submitted code
[ ] I added tests to verify changes
[x] All tests passing
[x] All linters passing
[x] There are no code climate issues

@kikoso @osugikoji We need to update our CI to use JDK 17


jsyaml.safeDump crashes if data set contains # (hash sign)

Version: 3.7.0
If the data you want to dump into a yaml with execute jsyaml.safeDump(data) and the data contains a hash sign # , for e.g. a link with an anchor and you:
www.foobar.com/test#subchapter
The yaml file will be written but only until www.foobar.com/test and ends there. Afterwards it's not a valid yaml file anymore and you can't import it via safeLoad anymore.

@AresSec links are broken. Could you post code sample here, to reproduce this bug?

@AresSec You can work around this by wrapping your strings with single or double quotes.

console.log(yaml.safeDump('www.foobar.com/test#subchapter'));
// => www.foobar.com/test#subchapter
console.log(yaml.safeDump({ a: 'www.foobar.com/test#subchapter', b: 123 }));
// =>
// a: 'www.foobar.com/test#subchapter'
// b: 123

I can not reproduce this error. Please, provide code sample to keep issue open.

I've created a sample object. Code:
if ($scope.extension === 'yaml') {
                                        var file = $scope.buildYAMLFile();
                                        var mime = "data:application/x-yaml;charset=utf-8,";
                                        var ext = ".yml";
                                        console.log(file);
                                        var doc = jsyaml.safeDump(file);
                                        var a = document.createElement('a');

Console output:

File output (I ommited the first parts due to the length):
- id: 2
        shortName: LC-01
        showOrder: 10
        universalId: ''
        description: Appoint the Security Mentor role.
        ticket: ''
        tagInstances:
          - 17
          - 5
        optColumns:
          - content:
              - id: 0
                content: 'In case your Security Mentor is not known, please ask the IT security department (http://test.com/

It actually only process until the hashsign of the URL (value is (http://test.com/#foobar)). Output stops directly after test.com/
I don't see any error ins the console from js-yaml. It just's process the object and creates the yaml file like nothing went wrong.

Tried it with your sample code even with double quotes:
console.log(jsyaml.safeDump({ a: "Test www.foobar.com/test#subchapter", b: 123 }));
a: 'Test www.foobar.com/test#subchapter'
b: 123

Worked like a charm. No clue why

@AresSec i need minimal possible code, that can be executed at my side.


Admin endpoints

I created the endpoints for the admin accounts that will handle retrieving all the data and its components for all the users and the organizations at once. This worked on my end, yet please can you test it, and see.
I need to also create admin modals, add them to login procedure.
For the total count, that's something that on the front end side you can get after parsing the JSON. @AnishaRan

Looks good!


RSpec/DescribeClass false positive

Problem description
On each of my spec files I get the following error (as an example):
spec/controllers/loans_controller_spec.rb:3:10: C: RSpec/DescribeClass: The first argument to describe should be the class or module being tested.
describe LoansController do
         ^^^^^^^^^^^^^^^

As you can see, the class name is fine. The same happens for all the spec files and corresponding classes on my spec folder.
RuboCop version
$ rubocop -V
0.51.0 (using Parser <IP_ADDRESS>, running on ruby 2.3.4 x86_64-linux)

The same happens for all the spec files and corresponding classes on my spec folder.

Just in spec/controllers/, or in all of spec/?
Which version of rubocop-RSpec do you use?

In all specs (I currently only have Controller and Model specs).
I was using rubocop-rspec 1.10. Upon realization of this, I updated the version to 1.20.1 and it no longer showed that error.
I'll close the issue since the problem has been resolved updating the version.


Enhance description strings used in cmdline utils

Builds on the recent changes to MSR data handling to add relevant info to the description string used in our command line utilities.

Fixes #1061 from github issues.

This is still WIP as far as the MSR descriptions go, but I think I have all the plumbing I need in place now.
This makes the output look like:
$ geopmread -i FREQUENCY
FREQUENCY: Alias for MSR::PERF_STATUS:FREQ. The value associated with the current operating frequency of the CPU.
Specified in units of hertz.
The signal will be aggregated by AVERAGE across the CPU domain.

Here's what the current output looks like:
http://mcfly.ra.intel.com/~bgeltz/geopmread_info.txt
http://mcfly.ra.intel.com/~bgeltz/geopmwrite_info.txt


Environment inverted_pendulum never returns done=True

Context
I am trying to use the inverted_pendulum environment in Brax 0.0.12 with google colab.
Even after 500 timesteps, the environnement never returns done (unless time limit is reached).
Code
try:
  import brax
except ImportError:
  from IPython.display import clear_output
  !pip install git+https://github.com/google/brax.git@main
  clear_output()
  import brax
from brax import jumpy as jp
from brax import envs

environment = "inverted_pendulum"
env = envs.create(env_name=environment, auto_reset=True, legacy_spring=False)
state = env.reset(rng=jp.random_prngkey(seed=0))
rollout = []
for i in range(500):
    action = jp.zeros((env.action_size,))
    state = env.step(state, action)
    rollout.append(state)
print('brax version ', brax.__version__)
print('any done :', jp.sum([state.done for state in rollout]))

result :
brax version  0.0.12
any done : 0.0

This problem doesn't occur with legacy_spring=True. Looking at a rollout, the hinge joint doesn't move at all. Same story for inverted_double_pendulum.

Is the default argument legacy_spring=True?

@jkterry1
The default arg is  legacy_spring=False where the hinge joint does not moves.
As @Markus28 said, the problem does not happen with   legacy_spring=True .
But the release notes from 0.011 made me believe that all brax environment would work with both modes:
https://github.com/google/brax/releases/tag/v0.0.11

Yeah this was a very silly bug.  In the legacy_spring=True codepath, the joint has angle limits of 0 (i.e., a fixed joint), BUT, there's a limit_strength: 0.0 parameter which sets the strength of the restorative angle-limit force.  In the new code, there's no such thing (because angle limits are exactly enforced, no spring needed).  But this meant the new code was making the inverted pendulum perfectly rigid...
We just added sensible angle limits to the joint.  Should make its way live shortly.

Fixed in c7735f34a48c3499516c3359d016057ed653f810.

Thanks !

Sorry for commenting on an old Issue but I have run into the same problem.
I am using brax 0.1.2 and inverted_pendulum never returns done=True (although it seems to be resetting).
Setting legacy_spring=True did not help unfortunately. Any help is appreciated!


Add retrain state for train model step

https://microbit-global.monday.com/boards/1356069004/pulses/1356405649
Preview: https://retrain.ml-trainer.pages.dev/

Deleting data also triggers the retrain state, which is correct. I'm not sure if the text needs to convey this or not given our target audience, so let's leave as is for now.


JRF Domain - How to connect RCU to SQL server database

Hello,
I would like to know if it is possible to configure the RCU to connect to a SQL server database and if it is, how can we do it.
We are able to do it when manually executing the RCU in interactive mode (with the UI) on RHEL servers. I didn't find a way to do the same thing with WDT models.
So far I have this configuration:
domainInfo:
  RCUDbInfo:
    rcu_prefix: '@@SECRET:test-rcu-access:rcu_prefix@@'
    rcu_schema_password: '@@SECRET:test-rcu-access:rcu_schema_password@@'
    rcu_db_conn_string: '@@SECRET:test-rcu-access:rcu_db_conn_string@@'
    rcu_admin_user: '@@SECRET:test-rcu-access:rcu_db_user@@'
    rcu_admin_password: '@@SECRET:test-rcu-access:rcu_db_pwd@@'

And I added a JDBCSystemResource for the sqljdbc driver (not sure if it is the right way to do it though...):
resources:
  JDBCSystemResource:
    jdbc/sqljdbc:
      JdbcResource:
        JDBCDataSourceParams:
          JNDIName: [
            jdbc/sqljdbc
          ]
          GlobalTransactionsProtocol: None
        JDBCDriverParams:
          DriverName: com.microsoft.sqlserver.jdbc.SQLServerDriver
          URL: @@SECRET:test-rcu-access:rcu_db_conn_string@@'
          PasswordEncrypted: @@SECRET:test-rcu-access:rcu_db_pwd@@'
          Properties:
            user:
              Value: @@SECRET:test-rcu-access:rcu_db_user@@'
        JDBCConnectionPoolParams:
          TestTableName: SQL SELECT 1
          TestConnectionsOnReserve: true

With this configuration, I see in the log that it is trying to connect to an Oracle database:
<Executing rcu: [cmd:[/usr/bin/sh, -c, /u01/oracle/oracle_common/bin/rcu -silent -dropRepository -databaseType ORACLE -connectString "jdbc:sqlserver://my.mssql.host:1433;databaseName=my_db" -dbUser db_user -dbRole SYSDBA -schemaPrefix my_schema -component MDS -component IAU -component IAU_VIEWER -component IAU_APPEND -component OPSS -component STB -component WLS -f]]>
I saw in this documentation that the rcu cmdline param "-databaseType" supports the SQLSERVER value: RCU
I tried adding this to the RCUDbInfo object in the model, but that didn't work:
databaseType: 'SQLSERVER'
In the logs, it say that I'm trying to use ATP database and that I'm missing tnsnames, etc...
Thank you for your help!

@sebfortier2288 No one has ever asked for this so it is unlikely to work today.  Happy to consider this as an enhancement request.

Thank you for your answer. My end goal is to install weblogic on kubernetes. I was trying to deploy it using the Weblogic Kubernetes Operator, which in turn use the WDT tool in the process. Since our requirement (SQL Server) is not supported at the moment, I have used another method and managed to make it work.
I build my own weblogic image from the official one. I inject the sqljdbc driver in the image and I use a modified entrypoint script and WSLT script to setup everything.
Glad this can be considered as an enhancement request! If this ever get implemented, I will gladly migrate to this deployment method.
Thank you!

@sebfortier2288 Well...
WDT support for running RCU against SQL Server is not working.  However, there should be no reason that you cannot run RCU yourself and then point the WDT model's RCU DataSources at the SQL Server database.  We are looking into addressing the run_rcu issue with SQL Server.

@sebfortier2288 As of FMW Infrastructure 12.2.1, SQL Server is no longer a supported RCU database.  RCU runs fine but creating the domain fails:
####<Mar 21, 2024 3:20:25 PM> <WARNING> <JpsDataManagerUtil> <getDBConnection> <> <Can not connect DB with URL jdbc:oracle:thin:@$host:1521:$dbms>
com.oracle.cie.domain.script.ScriptException: 64254: Error occurred in "OPSS Processing" phase execution
64254: Encountered error: oracle.security.opss.tools.lifecycle.LifecycleException: Error during configuring DB security store. Exception oracle.security.opss.tools.lifecycle.LifecycleException: oracle.security.jps.service.policystore.PolicyStoreConnectivityException: oracle.security.jps.service.policystore.PolicyStoreException: Can not connect DB with URL [jdbc:oracle:thin:@$host:1521:$dbms].
64254: Check log for more detail.

WDT cannot support SQL Server if the underlying products do not support it.

@sebfortier2288 Just so you know, we have done our best to allow you to specify the RCU database type as SQLSERVER in the upcoming WDT 4.0 release.  If the FMW product/version you are using supports a Target DB for RCU of SQL Server, RCU should run and the domain creation may work.  If RCU completes and the domain creation does not, please open an Oracle Support SR on the FMW product you are using.

Perfect, thank you for letting me know!
I'll give it a try when this version gets available.


TRE UI does not update when an action on a VM completes

For example, trying to stop a machine. The UI did not appear to register the request.

then this only after refresh ....

The same happened when I tried to deploy a new machine. The little blue spinner just told me the process was  pending, until I refreshed the browser page.

I believe I've worked out what's going on here.
This does not reproduce if you are a TREAdmin. Users who see this do not have admin access.
Users have multiple bearer tokens when using the TRE UI:

a bearer token for general access to the TRE
a bearer token specifically for accessing resources in a given workspace

By looking at the browser dev tools, and inspecting the bearer token for a user seeing this issue, I can see that the token being presented for these updates is the first token (the general access token) and so the user is presenting as a TREUser...
"roles": [
    "TREUser"
  ],

The UI makes calls to the API to get updates for the workspace. The URL it calls is...
https://mrictretest.uksouth.cloudapp.azure.com/api/workspaces/<workspace-id>
This API route is only callable by users in the following roles...
["TREAdmin", "WorkspaceOwner", "WorkspaceResearcher", "AirlockManager"]

and so, the API call returns an HTTP 403 and this is why the UI doesn't update.


add pattern to groupname

What do you think of
^[\w\säöüÄÖÜ]{1,50}$

Limit of 50 chars is given by backend. Allow-Lists are better then Deny-Lists.
This regex is still really restrictive but for our case it should fulfil the needs.


mpirun needs "--bind-to none" specified if used for multiple executions in parallel

There is significant slowdown observed that scales up as the number of simultaneous executions of mpirun.
Adding --bind-to none see seems to mostly resolve the issue.

[ ] Check if this issue exists as you add more cores to each execution
[ ] Look at MPI specific executor settings for rsopt. Would probably want to only use this for openmpi. I'm not aware of any similar problem ever occurring on MPICH systems.
[ ] Could be motivation to revisit a true Serial executor. I think there was talk of putting this into libEnsemble. Though it is difficult since we may want to accommodate a serial and MPI executor simultaneously.

Sirepo always passes --bind-to-none. I don't think we've had issues with mpich.

Thanks @robnagler thats good to know


dump, load and then dump fails

The attributes types are being turned into strings when using dump() to ARFF
'attributes': [
('local_hour', 'INTEGER'),
]
-->
@ATTRIBUTE 'local_hour' 'INTEGER'
When loading this back using load() it will be a the string 'INTEGER' and will miss the check "if type_values.upper() in DECODE_ARFF_TYPES" in the __decode_attribute(type_values) function. Basically comparing the string 'INTEGER' with the string INTEGER (same for the other types)
The type will thus always be treated as a list of options. This in turn will cause a new dump() of the data (without any modifications) to fail with "... was not listed as a valid nominal value for such types not being nominal.

This is supposed to be fixed so I'm closing this. Feel free to open if needed.


Investigate how to forward as an interface

E.g.
f := result.Wrap(os.Open("foo"))
result.MapE(io.ReadAll)

doesn't compile because in MapE we have B = *os.File which implements io.Reader but is not identical to it...

Can't we just write
(os.Open("foo")).(io.Reader)

?

Doesn't work because among other things https://go.dev/doc/faq#covariant_types.

See also https://github.com/golang/go/issues/58650

Collected examples from the discussion on the Gopher slack...

https://go.dev/play/p/2G4qPqK_2-T
https://go.dev/play/p/EK6B2FOUwJ1


Early termination for combining selection order-by results

Split CombineOperator into 3 different combine operators:

SelectionOnlyCombineOperator
SelectionOrderByCombineOperator
AggregationOnlyOrderByCombineOperator
(For aggregation-group by, rename the combine operator to GroupByCombineOperator and GroupByOrderByCombineOperator)

Re-implement the combine operator logic in BaseCombineOperator for the early-termination enhancement:

Worker threads no longer perform the result merge, but insert the results block from each segment to the blocking queue
Worker threads can early-terminate if the results block for one segment can satisfy the query
Main thread will merge the results blocks from the worker threads, and early-terminate if the merged results block can satisfy the query

For SelectionOnlyCombineOperator:

Only process 1 segment for LIMIT 0
Early termination when enough rows are collected

For SelectionOrderByCombineOperator:

If the first order-by expression is an identifier (column), sort segments by the column min/max value and early terminate when result for the segment must not be in the final result.

The PR summary section does not capture that it is also doing a big refactor for Combine operators. Would be good to reflect that in the PR summary so as to make it easy for future navigation.

The PR summary section does not capture that it is also doing a big refactor for Combine operators. Would be good to reflect that in the PR summary so as to make it easy for future navigation.

The PR summary section does not capture that it is also doing a big refactor for Combine operators. Would be good to reflect that in the PR summary so as to make it easy for future navigation.

@mayankshriv Good point. Added

@mayankshriv can you review this again, lets get this in

Discussed with @mayankshriv offline, the common logic has been extracted into BaseCombineOperator, and it is very hard to extract the per-thread logic because they are using different concurrency primitives.
Added TODOs into the GroupByCombineOperator and GroupByOrderByCombineOperator to extend BaseCombineOperator for future cleanup

Lets create another issue to move common functionality across multiple combine operator to a basecombineoperator.


Fix delete blob typing

This resolves https://github.com/Azure/azure-sdk-for-python/issues/13261.

Thanks for the fix!


Template: Add input type for Password

[ ] Tempalte: Add input type for Password, same as Text
[ ] UI, Add input type password
[ ] On app deployment show password field for type password

Need to implement handling of new password input type on FE side.


Security Headers (CSRF, etc.)

We want to have a secure login.
Acceptance Criteria

[ ] We have a middleware that checks the CSRF token
[ ] CSP is set

@peintnermax please estimate


[BUG]: Equations in document are cut off in Create model from equations extractions

Describe the bug
Holly tried to use Create model from equations on a document with a sizable list of equations (15).
The equations seem to have been cut-off:

Equations 13, 14, 15 are completely missing
Equations 11, 12 are missing their right-most 20% (rho P_v and rho P_s)

To Reproduce
Steps to reproduce the behavior:

Connect this paper (https://app.staging.terarium.ai/projects/eb16a7a8-17f1-4295-a938-146969f8f1a1/workflow/7fa3148d-01f6-4ef6-a4d6-64402d004d07?operator=bb280e6f-c836-45ed-adc8-aadff1ea5d5d) to a Create model from equations operator)
Look at the extractions for Page 23

Additional context
I speculate that this may be a failure in the OCR step where the equation image is too small to capture the entire length of the equations.

We can't change the model at this point


Output for YOLO and LeNet

Hey!
Awesome job loading LeNet on the fly! On first run it seems to be loading fine but the output is something I'm not able to comprehend. If you can give me some idea about the issue itself I would love to fix it and submit a PR. :)
Thanks!

Attaching a pic for reference.

@Shoshin23 Hey
Great job!
Yes, as you can see, it's impossible for us to [map] classes(https://gist.github.com/maraoz/388eddec39d60c6d52d4) to each model. Therefore, by default we only enable the mapping for SqueezeNet and for others we will only show the raw result of the prediction.
What you see here is the raw result and you pbbly wanna edit the code to map it to make it look like better lol.
I will be happy to see your Pull Request. 👍


feat: Update my account page for volunteers

Brief description. What is this change?
Updated My Account page so that UI is changed for volunteers and volunteers can update their info

Update my account page for volunteers

Implementation description. How did you make this change?

UI changes
Only update donor info if user's role is donor

Steps to test

Create an account/log in as a volunteer.
Go to My Account page and edit first name, last name, or phone number.
When you refresh the page, or log out and log in, the fields should be updated.

Checklist

[x] My PR name is descriptive and in imperative tense
[x] My commit messages follow conventional commits and are descriptive. My commits are atomic and trivial commits are squashed or fixup'd into non-trivial commits
[x] I have run the appropriate linter(s)
[x] I have requested a review from the PL, as well as other devs who have background knowledge on this PR or who will be building on top of this PR
[ ] The appropriate tests if necessary have been written

@Shehryar21 Fixed your comment. Could you also test for a donor account and make sure we can edit a field w/o error?


variable delimiters for ascii handling

When inputting custom light curves or power spectra, currently PBjam uses genfromtxt to read the provided files. It only takes space delimited files though, this should be made a bit more flexible.
Perhaps try a few different common types of delimiters. Perhaps: space, comma and tab?

Fixed in issue # 246


⚠ Bofrost.fr has degraded performance

In de60f43, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1516 ms

Resolved: Bofrost.fr performance has improved in 8940d43 after 9 minutes.


Reject clients whose 'Next Court Date' is earlier than today (e.g., the day matching is run)

Need to verify this with Steve.

'Spec' from Steve: If there is no future court date but there is a real case number, we will match it.  But the priority will always be upcoming court dates. Past court dates will need to be updated eventually- or could indicate other things.  But we don't care what the date is since [and won't match it -CK] it is in the past.

https://github.com/usdigitalresponse/npi-lawyer-client-matching/commit/97b0de1591d7143dd17038775682ea8fa115f1bf


Default results

is it possible to show an "empty" state search, for instance i'd be putting "recent searches", then when they start typing it swaps them out.
or even better yet, have a persistent list so I can have Recent and Results in the same box.
if this was possible, i'd be ecstatic

Hello @beamercola,
Sorry for my late feedback.
All the proposed ideas are very nice indeed, and could be done on top of the library as a plugin or customization instead of implementing them directly in the core library itself for the following reasons:
1- Not core functions/features
2- Not frequently used/requested
3- These functions/features might get very subjective in the way they could be built and used in
I hope you understand my point of view, and i'm always open for discussions.
Thank you, have a good weekend! :)


Option to disable formatting

Summary
Add an option to disable formatting of files on save to the settings page.
Motivation
I love this tool but I'm unable to use it on collaborative projects where the style guide is anything but the defaults for this package. My teammates have agreed to use the Google Java Style Guide (but tweaked slightly to use 4-space indent, 8-space indent when breaking a statement over multiple lines, and 100 character maximum per line) for the specific project I want to use this extension for, but unfortunately while this package is enabled, it auto-formats the current file turning would-be one line PRs into potentially hundreds of line changes and breaking the style guide.
Describe alternatives you've considered
I've tried looking through the Eclipse JDT language Server's documentation to see if maybe there's a flag that can be passed to disable formatting but wasn't able to come up with anything. I also looked for a way to specify a custom formatting configuration but wasn't able to find anything there either.
Additional context

Good news: I've figured out how to pass settings to the language server :). I see some format options there, so we should be able to control that once I get something hooked up properly in ide-java. No guarantees on when that will happen, though.


[attach-detach] MapLabel to marker while EventHandler [ENTERED-EXITED]

Hi Peter-Josef Meisch      :)
I can`t attachLabel() to marker while EventHandler is MARKER_ENTERED and detachLabel() to marker while EventHandler is MARKER_EXITED
Ex
mapView.addEventHandler(MarkerEvent.MARKER_ENTERED, event -> {
     event.consume();
     event.getMarker().attachLabel(new MapLabel("MARKER_ENTERED"));
});

mapView.addEventHandler(MarkerEvent.MARKER_EXITED, event -> {
     event.consume();
     event.getMarker().detachLabel();
});

I found simple css solution
-with MARKER_ENTERED I add css
display: block;
-with MARKER_EXITED I add css
display: none;
can you added to next version?

Also
sometime i get marker img highlight

ma by this css useful
user-select: none;
thank you very much for this library
🌹🌹🌹🌹🌹🌹

mapView.addEventHandler(MarkerEvent.MARKER_ENTERED, event -> {
     event.consume();
     event.getMarker().attachLabel(new MapLabel("MARKER_ENTERED"));
});

The label you create in the event handler will go out of scope as soon as the event handler is exited and the it will be garbage collected and removed. You have to create the label outside of this function and then in the handler you can attach it or detach it. You will have to set the label to unvisible after detaching it. As long as the label is attached to the marker, it will have the same visibility state.
As for the highlighted images: I have seen this now just once, but have not yet found what causes this element to be selected; I cannot reproduce it all the times


python3Packages: clean up toPythonModule

Description of changes
Several non-standard behavior have been corrected here.

Using toPythonModule again for the buildPythonPackage package.
Not passing python3Packages = self or inherit (self) python
Not using buildPythonPackage for packages originally used as python modules
callPackage again instead of overriding

pyside2 & pyside6 stuff and recursive-pth-loader are skipped.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 320965 at 1fec6771 run on x86_64-linux 1

2 packages failed to build:

python311Packages.hoomd-blue
python312Packages.hoomd-blue

14 packages built successfully:

hash-slinger
python311Packages.crocoddyl
python311Packages.fipy
python311Packages.gmsh
python311Packages.py3buddy
python311Packages.pyunbound
python311Packages.segyio
python312Packages.crocoddyl
python312Packages.gmsh
python312Packages.kmsxx
python312Packages.py3buddy
python312Packages.pyunbound
python312Packages.segyio
python312Packages.viennarna

python311Packages.hoomd-blue also failed the same way on hydra: https://cache.nixos.org/log/br9akkxcaygj73hwvzv84nv05q7d3ry6-hoomd-blue-2.3.4.drv


Various little enhancements

I was looking to suggest to improve bids.neuroimaging.io to reference BIDS models among specifications and then discovered activity in this branch which pretty much already did that.
Commits are just minor tune ups to improve consistency . I still could not figure out how to make "BIDS Schema" 'section' to become a hyperlink like other sections are. It seems that the trick is to have it index.md (not just schema.md)?  then may be it would work if we make it schema/ folder within https://github.com/bids-standard/bids-extensions ?

then discovered activity in this branch which pretty much already did that.

yup that's part of an effort to centralize our doc: that branch is a mirror of what's on https://github.com/bids-standard/in_darkness_bind_them and looks like this: https://in-darkness-bind-them.readthedocs.io/en/latest/
fyi that this branch may see some very wild changes in the coming weeks so small tune ups like this may disappear in those changes: not that you should not suggest those changes but just to let you know. :wink:


Add SignedMeterValue type powermeter types

This allows the encapsulation of additionaly metadata like the signing method, encoding method or the public key next to the signed meter data

Looking forward for this to be applied. Preferrably reduced to "SignedMeterValues" only.
Can we push this PR forward? So that further work on the power meters can be based on it already?

Yes, I'll rebase it and will try to restructure it a bit


Run slow tests using the full python-packages matrix in Travis

Currently tests marked as slow run only for python=2.7, numpy=1.10.4 and pandas=0.18.0 in Travis, which is the combination of the matrix marked as COVERAGE='true':
https://github.com/dask/dask/blob/master/.travis.yml#L43
While it's probably ok to report coverage only for a single combination and to run doctests also only for a certain python version (to avoid issues with differences in output) I believe slow tests should be run for all combinations.
The downside of this is that the whole suite for all combinations would take some more time to run in Travis.

Resolved by #1523


Fuse packing/unpacking kernels for reshape3d_alltoall

Currently reshape3d_alltoall for N ranks runs N packing and N unpacking kernels respectively before and after the MPI_Alltoall. As rank count grows, the overhead of launching and waiting on those kernels grows linearly with N. In sufficiently regular cases, the loop over ranks in heffte::reshape3d_alltoall::apply_base() can be lowered into the device kernel. I have working SYCL code that does that and shows a clear performance improvement even for small N. Is this an optimization you'd consider incorporating if I contribute it?

As a general rule, everything that improves performance is of consideration and probably should be included.
On the other hand, I don't recommend running so many nodes with so little data-per-node that the kernel launch will cause issues, but then again, it is a valid use case.
If you merge the for-loop into the kernel, then each iteration of the loop will manage different amount of data which in itself can lead to performance issues. This is precisely why I didn't do it using CUDA, and calling one packing kernel at a time makes it easier to pipeline packing and sending. I can certainly see how the SYCL logic will be easier to generalize (hopefully without loss of performance) and all-to-all doesn't pipeline, so we could have a boost of performance here.


Zoom to selected activity on map

Describe the Task
When a user has selected an observation to treat, or a treatment to monitor from the "My Activities page" or from other users records they've fetched/cached, the map should zoom to that record instead of the user having to find it on the map

[ ]  When you click on the map it takes you to that area.

[ ] When you click on a record in a table, the map takes you there.

@popkinj  needs your input for specific action items to address this
Components

[ ] Integrate turf-extent
[ ] Calculate extent of spatial objects
[ ] Zoom to extent

related to the work i'm doing, i think it should be done by christmas


Rework extension attribute handling for standalone modules

Fixes #174
In contrast to my plan outlined in #174, I took a different route as I realized that it can be problematic to depend on Magento framework classes (loading and analyzing framework classes at the same time). Additionally, it was not possible to install PHPStan and this extension in a different directory as then the Composer autoloader would not work for the project-specific classes (e.g. for the class_exists, interface_exists, and trait_exists checks).
What happens now is that all extension_attributes.xml found in etc directories are loaded recursively and evaluated regardless of whether the module is active or not. By default, the current working directory (the directory you placed your phpstan.neon file in) will be used as a starting point. If you need to change that, you can configure the magentoRoot parameter and point it to a different location.
To deal with inactive modules, we could either add a directory blacklist configuration or add some logic to evaluate the config.php settings and only take active modules into account.

@mattwellss mind checking if this implementation will work for your use case? Thanks!

@shochdoerfer sorry about the delay! I'm working odd hours around the holidays.
I was curious about how the extension behaves when installed globally (something I've never tested). Here's what I did

composer global install bitexpert/phpstan-magento
Update paths in my phpstan.neon file to point to the new globally installed extension
Clean phpstan's cache
Run globally installed phpstan from the application directory

When testing a file calling an extension attribute method is "provided by" a disabled module, the expected error occurs:
 ------ ------------------------------------------------------------------------------------------------------------------
  Line   ToOrderItem.php
 ------ ------------------------------------------------------------------------------------------------------------------
  33     Call to an undefined method Magento\InventoryApi\Api\Data\SourceExtensionInterface::getIsPickupLocationActive().
 ------ ------------------------------------------------------------------------------------------------------------------

While debugging the above analysis, I see PHPStan checks for a composer autoloader in the current project. That means local/vendored code is autoloadable, and that also Magento modules are able to register themselves.
Given those results, would you be willing to go into more detail about the issues here?

I took a different route as I realized that it can be problematic to depend on Magento framework classes (loading and analyzing framework classes at the same time). Additionally, it was not possible to install PHPStan and this extension in a different directory as then the Composer autoloader would not work for the project-specific classes (e.g. for the class_exists, interface_exists, and trait_exists checks).

Specifically, I'm wondering about:

The issue with depending on Magento Framework classes
Autoloading (which I believe works fine)

I know this is bitExpert's module, and any input on its direction is at your discretion. So while I would love to maintain the ability to limit extension_attributes.xml to registered/enabled modules, it's your call in the end.

I've did check out this PR, though! It works, but doesn't identify the problem of using a nonexistent method like 0.13.0 does.

@mattwellss thanks for your feedback.
So far I did not test global Composer installs, good to know that this will work fine as well. I tested installing phpstan and the extension in a different directory and then let it examine a Magento module in another directory, that was a request by someone else because they install QA tools independently from their projects. In that case Composer autoloading does not work, because Composer does only know about the local dependencies but not the ones from the other project.
None of the other phpstan extensions I checked, made use of the framework or library classes they are written for. My assumption is, that it could lead to side-effects when loading those classes and analyzing their code in parallel. In our case, having the mock/stub implementations in place (to fix doc block issues) that get loaded automatically might even cause more trouble.
For sure, I would like to support enabled/disabled modules. For now, I am just not sure if the effort would be worth it. In our own projects, we don't really have disabled modules in our code-bases. Does this happen often in your case?


Check JSDoc with linting

Describe the bug
Right now, we have situations where the JSDoc of a function has drifted from the implementation. We'd like them to match to ensure that the documentation is still up to date with what is expected on the function.
Rather than check these directly, we should investigate uses tools like https://github.com/gajus/eslint-plugin-jsdoc/ to lint the jsdoc to are shipping.

@willmtemple Thoughts on this? Can we have this as an add-on for our eslint plugin?

Additionally, the linter should also catch the cases where we have jsdoc tags that makes sense in a JavaScript code, but are not needed in TypeScript code. Examples:

@member
@memberof
@interface
@class

The format of the the jsdoc lines for parameters should also be standardized:

No need to have square brackets around optional parameters. This was required in JS code, but tooling can infer this from the TS code directly
No need to mention the param type in {} as this can also be inferred from the TS code


API Integration Authoring Tool

[x] Create hooks on WP -> Stathis
[ ] Make the calls -> Tasos

What API ?

Goedle.io API


Pre Filter Backend and GUI Logic

@larshp , @mbtools this PR contains the refactored pre selection backend and gui logic.

does it work if TRWBO_TITLE is replaced with string?

and the type definition of ty_trrngtrkor_tt must be moved to some interface, as the build(into the copy paste report) fails

does it work if TRWBO_TITLE is replaced with string?

It was not possible to replace it by string, because it is a parameter of the FM TRINT_SELECT_REQUESTS, but the commit was successful.

and the type definition of ty_trrngtrkor_tt must be moved to some interface, as the build(into the copy paste report) fails

I moved the type to the interface zif_abapgit_definitions and then it works.

@larshp this looks good to me now

cool, lets go 🚢


Prefix for resource names in ALM DA

Description

The ALM DA does not have a common prefix parameter and most of the resources created by it use names explicitly provided by the inputs, but there is a parameter for repo name prefix (only applied to git repo names). As a result, if multiple stack deployments are done in the same account, the users have to go into the ALM DA inputs and manually change multiple values to use different names in the ALM resources:

Toolchain name
registry_namespace
Code engine project names (CI and CD)

New or affected modules

By submitting this issue, you agree to follow our Code of Conduct

In progress

It looks like rel 1.9.4 is now using the prefix in the names for toolchains and code engine projects, but the registry_namespace is still used without the prefix

There are two modes supported.

Uses an existing registry_namespace or 2) Set a prefix and optionally an additionally random suffix which will create the registry namespace.

To use option 2) set 'prefix' to the value of your prefix
optionally set 'add_container_name_suffix' to 'true'
and set 'create_icr_namespace' to true

@huayuenh - could not test the create_icr_namespace due to #448
When deploying without that, I think the pipeline parameter for the namespace is actually using the prefix, for some reason in some of my "upgrade" runs I did see the value without prefix.

Testing with 1.9.4 again, a fresh deployment with
registry_namespace = "rag-sample-app"
prefix = "rag-lab-06"
create_icr_namespace = false

gives:
# module.devsecops_ci_toolchain[0].module.pipeline_ci.ibm_cd_tekton_pipeline_property.ci_pipeline_registry_namespace will be created
 2024/07/25 17:37:16 Terraform plan |   + resource "ibm_cd_tekton_pipeline_property" "ci_pipeline_registry_namespace" {
 2024/07/25 17:37:16 Terraform plan |       + href        = (known after apply)
 2024/07/25 17:37:16 Terraform plan |       + id          = (known after apply)
 2024/07/25 17:37:16 Terraform plan |       + locked      = false
 2024/07/25 17:37:16 Terraform plan |       + name        = "registry-namespace"
 2024/07/25 17:37:16 Terraform plan |       + pipeline_id = (known after apply)
 2024/07/25 17:37:16 Terraform plan |       + type        = "text"
 2024/07/25 17:37:16 Terraform plan |       + value       = "rag-sample-app"
 2024/07/25 17:37:16 Terraform plan |     }

Can you confirm that this is the intended logic and the prefix is only used in the namespace when create_icr_namespace = true.
I would expect that if the prefix is supplied, it should be used across the board.

This was the intended behaviour as I was expecting to use it for a stack where everything is created in the same resource group. I've updated the logic to separate out the ICR logic in this PR here https://github.com/terraform-ibm-modules/terraform-ibm-devsecops-alm/pull/450. Will have a release tomorrow for it

Behaviour updated for ICR. v1.9.5 pre-release available
Optionally set the prefix and/or the add_container_name_suffix
Then when you set create_icr_namespace to true, this will get Terraform to create the ICR namespace, leaving it set to false, will get the CI pipeline run to create the namespace

This is addressed in 1.9.5 right? Are we good to close this?

@ocofaigh - yes we are good on this one with 1.9.5 as released to the catalog.


add IsSetByUser

Adds the ability to know that the flag was set by the user.
Details https://github.com/alecthomas/kingpin/pull/228#issuecomment-364057375

Thanks for the effort, but I don't think the usefulness is significant enough to outweigh the maintenance overhead.

I changed my mind. Why not, it seems like a useful feature that you really need.

Thanks for writing the PR and the tests!


Merge for v3.3.3

🌦 changes

adding data from files (e.g. m.from_file or m.new_layer_from_file) now always uses "shade_raster" as the default plot-shape  (since EOmaps v3.3.2, raster-shading works perfectly fine with re-projected rasters as well)

🔨 fixes

fix autoscale_fraction not recognized when using preset="bw" in m.add_scalebar

Codecov Report

Merging #63 (04b5ab2) into master (0528e04) will increase coverage by 0.02%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master      #63      +/-   ##
==========================================
+ Coverage   75.46%   75.48%   +0.02%
==========================================
  Files          12       12
  Lines        5106     5104       -2
==========================================
  Hits         3853     3853
+ Misses       1253     1251       -2

Impacted Files
Coverage Δ

eomaps/reader.py
16.92% <0.00%> (+0.08%)
:arrow_up:

eomaps/scalebar.py
83.44% <ø> (+0.13%)
:arrow_up:

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 0528e04...04b5ab2. Read the comment docs.


Add the SetPoint to the Telemetry Signals

When the PowerPlant is in dispatched state, we could add a SetPoint signal along with the telemetry! This could be useful for the UI to show an additional plot for the SetPoint!

SetPoint is added during dispatch for both OnOffType and RampUpType PowerPlant's