Reset surface size automatically; remove no-shuffle on material/paginated_data_table_test (framework shuffle-all 3/n)

Fixes part of #85160. This comes after #123751 and #123806 as part of removing no-shuffle tags from all tests in the framework.
The tests in this file had a state leak because although many of them were scrupulously resetting the surface size, two tests were missing that step:

"PaginatedDataTable with optional column checkbox"
"PaginatedDataTable arrowHeadColor set properly"

We could add a line addTearDown(() => binding.setSurfaceSize(null)); to those two tests.  But it seems like we'll inevitably keep having bugs of this form — and so will any other flutter_test users that use this setSurfaceSize feature — unless the feature arranges to automatically either check that the state got reset, or just reset it.
And then once we're automatically detecting that the state wasn't reset, it doesn't seem like there's anything to be gained by making the author of the individual test take care of it.  This isn't a situation where there's any ambiguity about how to handle the reset, or where the un-reset data could be a sign of a broader bug; the thing the test author would do is always to just reset the state to the default anyway.  So take care of it automatically.
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

To check there weren't other ordering dependencies lurking in this file, I ran it with 100 different seeds. With only 18 tests in the file, an ordering-based flake would be expected to have a rate of at least 1/18 > 5.5%, so the data is enough to reject that with p<.004.

@pdblasi-google Can you take a look at this one since you've been thinking already a bit about resetting test state to avoid leaks?

@gnprice
This is good work, but I'd like to tackle this problem from another direction. For getting the no-shuffle off of the paginated_data_table_test I'd prefer if you added the addTearDown(() => binding.setSurfaceSize(null)); to the two tests that need it for the time being.
Thanks for bringing my attention to the setSurfaceSize method. I've seen it around and it was throwing up red flags, but this PR gave me a reason to deep dive on it. I've written up #123881 with more details, but the TLDR; is that setSurfaceSize really should be TestFlutterView.physicalSize at this point as they should be equivalent.
If all instances of setSurfaceSize are instead TestFlutterView.physicalSize, then as part of #121917 they will get the "enforce reset instead of fail" behavior planned in that ticket. I'd like as much of the automatic resetting to be part of that ticket as possible for the following reasons:

Instead of spreading out any issues with automatic resetting over multiple versions, there will be a single version increment with a warning and a migration guide on how to handle potential issues caused by the automatic resets
Tests that were depending on the leaked state (intentionally or not) will have a cleaner migration path with that ticket as they'll be able to retain the same behavior (without leaks) using the setUpWidgets function from that ticket

@pdblasi-google OK, that plan makes sense to me.
I'll rework this PR to just locally fix those tests using addTearDown, and perhaps add a pointer to [TestFlutterView.physicalSize] in the setSurfaceSize doc.


ndimage.morphology.grey_dilation Gives erroneous values

I've come across a situation where sometimes using binary_dilation will give the wrong values as output. I.e. Everything that should be a 0 is a 1, and every 1, a 0. I am not sure the best way to make an example for reproduction, given it seems to be data dependent...
The bug appears when passing the array, and an argument for structure. The issue happens when the main array is a float or int array, and the structuring element is float, int, or bool.
Scipy/Numpy/Python version information:
Numpy: 1.4.1
Scipy: 1.16.0
System: sys.version_info(major=3, minor=7, micro=1, releaselevel='final', serial=0)

Actually it appears if the array is a bool then the result is all True.


Release embed-react/1.1.4 breaking builds

Commit: https://github.com/Typeform/embed/commit/7384691aa8e5efeb0ee02ce0f4b01df3b150ac1f creates a local reference to a package, this is incorrect in CI/CD builds.
Please revert the change as I don't see a valid reason for this change and is causing builds to fail.
@mathio

Sorry for the inconvenience, a new version will be released shortly.
I did not expect this would affect existing installations as dependency versions are usually defined in a lock file.


Add ubuntu CI test suite

This is an attempt to build against Ubuntu host to make sure netcore library actually works. See #96

I tried to port tests on netcore but I get very subtle errors that I have no netcore on my machine...

The build failure is because one of the target frameworks is .NET Framework itself, which isn't available on Ubuntu. So the build instructions on Ubuntu have to be carefully written to use dotnet build -f netcoreapp2.0 or whatever framework you want to target that doesn't include the desktop ones. And you can't dotnet pack since that requires all frameworks to be built.
If you can fix it up, I'll accept the PR. If I end up doing it, I'll be switching from AppVeyor to Azure Pipelines at the same time.

The build failure is because one of the target frameworks is .NET Framework itself, which isn't available on Ubuntu.

Yep, I get it. But I failed trying migrate test projects from net462. I know about this switch, but it doesn't really help when you have project targets 462 only :)

So I'm not committing nor merging this branch now. Being said, it's better for you just commit in it until it's done. I enabled the checkbox

So you can easilty commit in the same branch without having it in master (incomplete and broken).

OK, I usually multitarget my tests, so I assumed I had done so here. I guess I didn't.

No. And when I tried to move it to netcore it failed with weird errors from .targets file (about minimum netcore version and so on). I played a bit with it, but didn't succeed. I then thought that it could be your kind of magic with get versioning, mstasks and so on so I didn't investigate it a lot.

Hmm... well, simply adding netcoreapp2.1 as a target framework to the test project allowed it to build immediately for me. The minimum netcore version you speak of might be that the build agent you're using doesn't have the 2.1.300 SDK installed, which the build requires. That is easily remedied. I'll see what I can do.

Well, I had 2.1.402, but it didn't work for some reason.
P.S. Do you mind keeping all these crossplatform targeting? I mean nowadays nobody is using portable or WP7.5 targets. Full framework + netcore is enough, I guess.
Great to see it works. However, in this case I don't see why it doesn't work to me. There are tests for dependencies IIRC so it should. But it doesn't.

The tests are not passing for me anywhere. AppVeyor hasn't been running them. I think the first order of business is to get them passing.

Well, I had 2.1.402, but it didn't work for some reason.

That's because my global.json file specifies the SDK version to use, so it must be exactly 2.1.300.

That's because my global.json file specifies the SDK version to use, so it must be exactly 2.1.300.

Now that makes sense. However, I don't see why not use carret semver. Not everyone has exactly the same version as you :)

However, I don't see why not use carret semver. Not everyone has exactly the same version as you :)

That isn't supported by global.json. Besides, the whole point of pinning it is to prevent it from floating. For all the same reasons that NuGet defaults to always restoring the same package versions across time, and Yarn pushes for checking in their lock files. It's all about build reproducibility. If .NET Core SDK revs and breaks something, I don't want all my builds suddenly on the floor with no idea why. I know that this particular version works, so that's what I always use till we have a chance to test a newer version of the SDK. Ya, it's a bit of a pain at first now that 2.1.300 is no longer the "latest" since folks need to install that particular version of the SDK, but it's not too bad, IMO. It's better than builds periodically failing for no apparent reason.

@AArnott it's much more painful than you could expect. I'd rather propose to remove exact version pinning and leave it up to user, but fix the version on which tests are working. So you always know it works for 2.1.300, but user is free to use any other version. If something doesn't work then he could try reproduce it on 2.1.300, but if it does work then everything is golden.
Seriously, users need to track what version is now intended for installation just to make it compile? Bizzare :)

In a nutshell: instead of actively breaking the build with unsupported version just allow then do what they want. Instead you fix this version in CI tests only so you can always know that your build works for some particular version.
This approach is strictly better because:

Users that have the same version don't see any difference
Users that have another version where the code breaks don't see any difference
But Users that have another version where code actually works on different version now are happy

Another bonus is that currently you have "Mandatory install 2.1.300 or compilation would fail" which changes to "If compilation fails, install 2.1.300" that sounds much more reasonable.
Don't you think?

So you always know it works for 2.1.300

How would I know it works on 2.1.300 if we're not building on it regularly? Note I'm not pinning the runtime version -- I'm pinning the SDK version used to build the thing.

Seriously, users need to track what version is now intended for installation just to make it compile? Bizzare :)

People are moving more in this direction, actually. That's why the .NET SDK comes in packages nowadays. The only real pain point here is that this part of the SDK doesn't automatically download when people try to build with it. That's something I expect will change in the future.
Your proposal sounds reasonable, but I don't know how to do it. The only way to control for the SDK version AFAIK is the global.json file, which is a source controlled artifact. That means it will apply to local builds as well as CI builds.
I'm going to reach out to the .NET Core SDK folks and ask them why they produce build warnings encouraging folks to check in this file, yet don't have a better story for folks who don't already have the SDK installed.

In the meantime, you can download the right SDK from here: https://www.microsoft.com/net/download/dotnet-core/2.1

Any progress on that? I have a heavy need in ubuntu support since I'm building a docker app where it just doesn't work.

Any progress on what? Getting the .NET Core folks to auto-install the SDK version? Even if they do that, it will likely be months before it's available.
This shouldn't be blocking you. Just arrange for your docker image used to build your app to install the required SDK. I do that in my linux-buildagent docker image here:
https://github.com/AArnott/linux-buildagent/blob/026791b7e1226db8aa315f97a147187a1b6fd437/Dockerfile#L29

@AArnott I'm not sure what SKD are you talking about.
My image is based on microsoft/dotnet:2.0-sdk, see https://github.com/Pzixel/Solidity.DotNet .
Here is a build that fails because of problems with dependencies shown above: https://circleci.com/gh/Pzixel/Solidity.Roslyn/58
So I don't know what issue with SDK you mention. It's about dependency-resolution algorithm. I'm trying to make it compile, but without any success. I'd appreciate any help if any.

Oh, OK. I don't know how I was supposed to know what you were asking about. Our discussion had been focused on the 2.1.300 .NET Core SDK until your last message. Now it seems you're talking about your code generator which itself has an external dependency, which is entirely unrelated to this PR or the discussion we've been having.
I've never seen generator's own dependencies get loaded properly. @LokiMidgard added a feature to make this work in https://github.com/AArnott/CodeGeneration.Roslyn/pull/62 but I haven't personally used it.

I linked it from #96 so I thought it provides some context. Sorry for that, I wasn't clear enough.

I've never seen generator's own dependencies get loaded properly. @LokiMidgard added a feature to make this work in #62 but I haven't personally used it.

The interesting point here is that I actually have a generator that uses Json.Net just fine. It happens because generator itself seems to be using it. But if I add yet another project that relies on Json.Net then resolution fails.
It's interesting that instead of always-failing or always-succeeding scenario we have some middle-earth.
I have seen #62 but I have no idea how to use it. There is no examples, docs or something. I looked at PR but it wasn't enough to me to get it.

Dependencies will work (even if fundamentally broken) if something earlier in the build loaded them into the same appdomain that you're running in. That may explain why it sometimes works for you.

Yep, I thought about it, but it doesn't explain why sometimes it doesn't load the same assembly. I thought it may be an issue with versions, but even if I set exactly same version it doesn't load if it's "dependency dependency" instead of direct one.

Any progress on making it pass on Ubuntu?

I've had tests passing on Ubuntu 16 and 18 for a while.


Use project-relative paths

In order to make BugTrap compilable as part of other solutions, it is better to use project-relative paths for OutputDirectory\IntermediateDirectory\AdditionalIncludeDirectories\etc properties. It would be great if these changes will be at base repo.

Looks like defining Link\KeyFile is not enough to sign assembly using vs2015 solution. Additional LinkKeyFile property has been added for each .NET configuration.

Very nice. Great work m8. Thank you!


async related heap allocations are not detected

Just adding the async keyword to a function adds two heap allocations to that function. One is the state machine and one is the task method builder. Example: https://sharplab.io/#v2:EYLgxg9gTgpgtADwGwBY4AcoQGYEsA2MAJgDREgDUAPgAIBMAjALABQNAzAAT2cDCnAb1acR3LjQAc3FJwCyACgCUg4aIC+rNUA=
Not mentioning the Task/Task< T > allocations.
None of these are highlighted.

The state machine is a class only when the "Debug and Continue" option is enabled during the compilation, otherwise it's a struct and it's allocated on the heap. Please take a look on this thread to get more detailed explanation https://stackoverflow.com/questions/33871181/why-are-async-state-machines-classes-and-not-structs-in-roslyn


AutoJump for  input

Hi,
I have a drop-down list I would like to include in my autoskip.  I tried called your script using
$("input,select,textarea").autoJump();
but it did not work.  The select drop-down was completely skipped.
Shenda

HI @dillahus!
Sorry for the delay on this one, for some reason I didn't see the notification.
You are totally right, I forgot to include the select field and now it should be ok, I've just released a new version: https://github.com/josem/jquery.autojump/releases.
Please let me know if that helps at all, sorry for the troubles! :)


Make organization emails non-mandatory

This is a heavily-wanted feature already discussed at gogits/gogs#1193
The mandatory email leads to put fake addresses.
@Mr-Berna suggested to allow organization emails to be duplicate emails so we can put an user's address.

@Mr-Berna suggested to allow organization emails to be duplicate emails so we can put an user's address.

:+1:

That can't be solved easy because users and organizations share a single database table. If I remove the unique index from the database we loose the consistency check on the database side.
IMHO it makes sense to build the organization in a seperate database table. @lunny any suggestion?

IMHO it makes sense to build the organization in a seperate database table.

:+1:

I think currently the unique is a composite one, it's on (email, type). So orgnization's email could be the same as user.
Building a new organization table is a good idea, I think.
We can build three tables: base, user, organization. The base table could store the common columns between user and organization.


Website contains an invisible link

The website over at https://microsoft.github.io/language-server-protocol/ contains a link to this github page. It looks like it shouldn't be there since the color of the font is the same as the background.

In the html: https://github.com/microsoft/language-server-protocol/blob/gh-pages/index.html#L18-L21

looks like my adblocker just removes the button but the link


Create project properties for generating a nuget package

MS docs:

https://docs.microsoft.com/en-us/nuget/create-packages/creating-a-package-dotnet-cli
https://docs.microsoft.com/en-us/nuget/create-packages/prerelease-packages
https://docs.microsoft.com/en-us/nuget/create-packages/multiple-target-frameworks-project-file


Can't test pages using Material UI with Capybara

It is literally impossible to test material ui using capybara+selenium-webdriver

[x] This is a v1.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior
This library should not use elements so wrongly that it is impossible to test projects that use it with standard automated tools.
Current Behavior
Material-ui currently abuses elements so thoroughly that there is currently no way to test pages that use material-ui using capybara/selenium-webdriver.
Steps to Reproduce
codesandbox.io can't handle ruby deps, so no point in setting anything up there.
Link: I'll fill this in when i have a second

Create a Switch element on the page (non-native because otherwise you can't use multi-select)
try to select an option from it using capybara
you can't, it's literally impossible, you can get as far as clicking the option in the popup, but then selenium throws an unknown error because it can't understand the dom anymore

Selenium::WebDriver::Error::UnknownError:       unknown error: option element is not in a select
Context
I'm trying to write tests for my project, using capybara & a headless browser driven by selenium-webdriver.
Your Environment

Tech
Version

Material-UI
v1.4.1

React
16.4.6

headless Firefox
62.0b12

headless chrome
68.0.3440.75

capybara
3.1.0

selenium-webdriver
3.12.0

I'm assuming you only came to rant, and hope it made you feel better, but there's nothing here that would encourage anyone to try to help you.

In case anyone is looking at this in 2024, this bug report may have come across as abrasive, but speaking as a developer converting frontend code to use Material-UI controls with a ton of Capybara tests, I completely understand the frustration here.
It's a horrible experience. The controls are literally on the screen, and capybara can't find them.
It took me a while to figure this out. The problem is that the opacity of input controls within Material-UI rendered controls is 0, making them invisible to Capybara.
My solution is to have a SASS file included when in the test environment containing this:
.MuiCheckbox-root, .MuiFormControlLabel-root
  input
    opacity: 0.00001 !important

I'm still refining this, but this generally seems to work. I think Material-UI could have a non-zero opacity for native controls out of the box and it would save much aggravation.

You bet. What I ended up doing in addition to tweaking the CSS slightly
when in test mode was to write some wrapper classes around  etc so
that they render a regular  element when running in test mode. The
 receives the id and is kept in sync with the MUI control so that
its onChange triggers the onChange in the props.
So then I just replace <Select with <TestableSelect etc. It would be
amazing if MUI had a test mode that just made its controls interactable
with in this way.
export const TestableSelect = (props: SelectProps) => {
if (!showTestableField()) {
return <Select {...props} />;
}
return <span style={{ position: 'relative' }}>
<Select {...props} id={null} name={null} />
{renderMenu(props, extractOptionsFromSelect(props))}
;
};
On Wed, Jan 17, 2024 at 2:35 PM Matt @.***> wrote:

@scottschafer https://github.com/scottschafer Thanks for some
actionable insight. I can't promise that it will get fixed any time soon
(five years with no upvotes!) but at least it's on our radar.
—
Reply to this email directly, view it on GitHub
https://github.com/mui/material-ui/issues/12306#issuecomment-1897192125,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHFC2OLXEDZFW2PKZCVLHDYPBG4ZAVCNFSM4FMSZ2AKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOBZG4YTSMRRGI2Q
.
You are receiving this because you were mentioned.Message ID:
@.***>


Title conflicts with axis labels

In its current position, the title conflicts with the axis labels. Since the title is currently already rotated, if the user attempts to provide a new transformation to change the title position, the rotation will be overridden.
From line 127 in vertical_axis.rs:
transform={format!("rotate({}, {}, {})", rotation, x, y)}

Work performed a couple of months ago should now provide complete control over CSS positioning.


Vite throws hard to decipher error if a plugin defined named entries when the base config already had an entry array

Describe the bug
Problem
Given this vite config:
import { defineConfig } from "vite";

export default defineConfig({
  build: {
    lib: {
      entry: ["src/index.js"],
      formats: ["es"],
    },
  },
  plugins: [
    {
      config: (_config) => {
        // _config.build.lib.entry = {}; // Mutating the config object fixes it but is this something we can rely on?
        return {
          build: {
            lib: { entry: { named: "src/index.js" } },
          },
        };
      },
    },
  ],
});

Executing vite build results in this error:
vite v4.3.9 building for production...
error during build:
TypeError [ERR_INVALID_ARG_TYPE]: The "paths[1]" argument must be of type string. Received an instance of Object
    at new NodeError (node:internal/errors:405:5)
    at validateString (node:internal/validators:162:11)
    at Object.resolve (node:path:1101:7)
    at resolve (file:///home/alex/git/@aa/vite-lib-repro/node_modules/.pnpm/vite@4.3.9/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:46323:35)
    at Array.map (<anonymous>)
    at build (file:///home/alex/git/@aa/vite-lib-repro/node_modules/.pnpm/vite@4.3.9/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:46329:40)
    at async CAC.<anonymous> (file:///home/alex/git/@aa/vite-lib-repro/node_modules/.pnpm/vite@4.3.9/node_modules/vite/dist/node/cli.js:812:9)
 ELIFECYCLE  Command failed with exit code 1.

Which is pretty hard to understand.
This does not happen when I try to use mergeConfig to merge different kinds of entries like the plugin tries above.
Workaround
As a workaround, I can mutate the original config myself by either deleteing it or setting it to an empty object. But I fear this might not always be an option if one day, for example, vite decides to pass a structuredClone of the config to the config hook instead of the real thing.
Reproduction
https://github.com/AlexAegis/vite-lib-entry-bug-repro
Steps to reproduce
pnpm install
pnpm build
System Info
System:
    OS: Linux 6.3 Arch Linux
    CPU: (32) x64 AMD Ryzen 9 7950X3D 16-Core Processor
    Memory: 49.52 GB / 61.94 GB
    Container: Yes
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.3.1 - /run/user/1000/fnm_multishells/4045_1687801929693/bin/node
    Yarn: 1.22.19 - /run/user/1000/fnm_multishells/4045_1687801929693/bin/yarn
    npm: 9.7.2 - /run/user/1000/fnm_multishells/4045_1687801929693/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
  npmPackages:
    vite: ^4.3.9 => 4.3.9

Used Package Manager
pnpm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

The issue is that you defined lib.entry as an Array, and then in the plugin, you returned an object for it. So there isn't an easy way to merge this. I don't know if it is worth adding a better error for this as there are several other similar cases. If you use an Array for both or an Object for both it should work. But in this case it is better to directly modify it as your proposed. The config is mutable at this point.


createdAt spec in CSV should be populated by Build CI

https://github.com/openshift/ocs-operator/blob/8187a56c5278fcbc33badb96ce8dcbee2928bd72/deploy/olm-catalog/ocs-operator/4.3.0/ocs-operator.v4.3.0.clusterserviceversion.yaml#L60
should be populated by the build ci when releasing new registry images.
Doing so as a part of make gen-latest-csv is not very useful. It only brings more changes to each Pull Request and creates conflict between commits that only has csv generated at different times without any other changes.

@obnoxxx @jarrpa @egafford  WDYT?


Add new line at end of CHANGELOG.md

The new line at the end of this file was missing. Added it in.

alluxio-bot, merge this please


Adding method to determine if IP is in network

Codecov Report

Merging #720 (5412387) into master (5b5e068) will increase coverage by 0.75%.
The diff coverage is 90.90%.

@@            Coverage Diff             @@
##           master     #720      +/-   ##
==========================================
+ Coverage   75.19%   75.94%   +0.75%
==========================================
  Files         126      126
  Lines       11448    12142     +694
==========================================
+ Hits         8608     9221     +613
- Misses       2840     2921      +81

Impacted Files
Coverage Δ

assemblyline/common/net.py
65.54% <90.90%> (+2.58%)
:arrow_up:

assemblyline/common/heuristics.py
84.78% <0.00%> (-2.18%)
:arrow_down:

assemblyline/run/cli.py
59.47% <0.00%> (+0.69%)
:arrow_up:

assemblyline/odm/randomizer.py
95.25% <0.00%> (+0.86%)
:arrow_up:

assemblyline/remote/datatypes/hash.py
85.15% <0.00%> (+1.67%)
:arrow_up:

assemblyline/common/identify.py
90.88% <0.00%> (+1.81%)
:arrow_up:

assemblyline/common/security.py
48.10% <0.00%> (+2.53%)
:arrow_up:

assemblyline/datasource/alert.py
88.46% <0.00%> (+3.84%)
:arrow_up:

assemblyline/run/yara_importer.py
93.54% <0.00%> (+4.30%)
:arrow_up:

assemblyline/datastore/collection.py
68.09% <0.00%> (+6.20%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

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


Fix unwieldy exceptions

For example, when passing an effect with an invalid key results in a TypeError with message TypeError: __init__() got an unexpected keyword argument (...), which isn't really that great. The effect loading function should catch this and wrap it in a more descriptive error showing what tried to instantiate the effect in the first place.

I can't spell :)


$validProtocolVersions should include "2" (without minor version)

See: https://http2.github.io/faq/#is-it-http20-or-http2
https://github.com/slimphp/Slim/blob/a641082cdc08769c6fe195180ed73a63ca828b73/Slim/Http/Message.php#L39

@akrabat thoughts?

Seems valid to me.


Build: minor tweaks

Remove the forced reload upon initialization as it was causing test flake
Update keywords to include cody to see if it fixes marketplace rankings
Exclude everything but explicit BOM from bundled visx . This was causing potential security issues where temporary or .env files were included in the bundle.
Ensure global window is kept undefined in node process. For some reason window would be defined as vscode.window causing issues for tree-sitter-js which uses a window !== undefined check to see if it's running in browser or not.

Test plan

Manually verified that a bundled visx still functions

#5026
#5025
#5024
#4999
#5003
#4992
#4993
#5120
#5228  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @RXminuS and the rest of your teammates on  Graphite

For the marketplace ranking, the only way to improve ranking is to change our extension name to "Cody" because it ranks matches by Display Name first, and then for extension that has the same Display Name, they are ranked by their description in alphabetical order.
So we'll need to change the name to Cody, with the description that starts with "A" 😔

For the marketplace ranking, the only way to improve ranking is to change our extension name to "Cody" because it ranks matches by Display Name first, and then for extension that has the same Display Name, they are ranked by their description in alphabetical order.

I don't think that's true entirely. Reading the discussions on the topic it's very confusing, but I noticed that we rank on certain keywords like kotlin even though that's not in the description or name so they aren't entirely discarded.

I don't think that's true entirely. Reading the discussions on the topic it's very confusing, but I noticed that we rank on certain keywords like kotlin even though that's not in the description or name so they aren't entirely discarded.
What's more if you combine ANY keyword with cody we're constantly top ranked. So my hope was that by having both the keyword and the name we would rank as expected.

Ah I think I misunderstood your intention, my bad! I thought you wanted to improve Cody's ranking when people search for just "Cody" (which I believe will rank the exact name match first).
(I'm afk so can't check the package build for the ignore file change,  but can do it tomorrow if no one gets to it first! 😀 )

@abeatrix No I am trying to bump the ranking on just "cody" but I don't think the assumption that it's only based on name is correct. For instance, this is what you get when searching for AI...even though there's an exact match

@abeatrix No I am trying to bump the ranking on just "cody" but I don't think the assumption that it's only based on name is correct. For instance, this is what you get when searching for AI...even though there's an exact match

I just looked at my notes from the old ticket and you're right, it doesn't solely depends on the display name.
I got sidetracked by the visual studio issue today so haven't tested the vscode ignore file still (sorry about that). Will do it first thing tmr morning!

@RXminuS it looks like the issue where all the tree-sitter files are still missing in the package. Is it ok to exclude them? cc @valerybugakov

Nope just from the resources folder...did I forget to push? 🤦♂

@abeatrix ok now it works...who knew that pushing your code has such a big impact 😅


Story 503

Information

QPPCT-503

Changes proposed in this PR:

Add endpoint 3 for marking a file as processed

Checklist

[x] All JUnit tests pass (mvn clean verify).
[x] New unit tests written to cover new functionality.
[x] Added and updated JavaDocs for non-test classes and methods.
[x] No local design debt. Do you feel that something is "ugly" after your changes?
[x] Updated documentation (README.md, etc.) depending if the changes require it.

SonarQube analysis reported 1 issue

 1 major

Watch the comments in this conversation to review them.

Will you be adding the ability to mark a file as unprocessed?  This was part of the Jira issue.

SonarQube analysis reported 1 issue

 1 major

Watch the comments in this conversation to review them.


sqlservr: This program requires a machine with at least 3250 megabytes of memory.

after install container this message show to me

you need to set docker preference with computing resources of at least 3.5GB in order to run SQL Server today. if youre on a mac, click on the docker icon>preferences>advanced to set the memory

Same is true if you are using Docker for Windows.

I just followed what @vin-yu  said.

Here is the documentation:
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker#a-idrequirementsa-requirements-for-docker

Important
The default on Docker for Mac and Docker for Windows is 2 GB for the Moby VM, so you must change it to 4 GB.
Docker for Mac procedure

Click the Docker logo on the top status bar.
Select Preferences.
Move the memory indicator to 4 GB or more.
Click the restart button at the button of the screen.

Docker for Windows procedure

Right-click on the Docker icon from the task bar.
Click Settings under that menu.
Click the Advanced Tab.
Move the memory indicator to 4 GB or more.
Click the Apply button.

We are investigating removing/lowering the memory requirement, but for now this is how to configure things to work with the current memory requirements.

@twright-msft any update on lowering this requirement? We currently run multiple instances per host, and this is effectively a show-stopper for us.

Yes, we are going to lower it to 2 GB in an upcoming cumulative update (CU).  Can't remember if it is CU1 or CU2.  Within the next two months though for sure.  Is 2 GB low enough for your use case @chrismcv?

@twright-msft- thanks for the quick response. Sadly its not, we currently run 40 instances of SQL Express on a 12GB Windows Server, each with about a 250MB footprint. Appreciate our use-case isn't mainstream, but separate instances allow us to firewall each port individually.

@twright-msft
I have a VM that has only 1 GB Ram (only for development use).
So how about reducing the limit down to 1 GB Ram or less ?
Or use temp storage even if it is very slow. It's only for dev purpose.

@twright-msft That's great news. The lower memory requirement the better for us as well. Right now it's a bit ridiculous.

@twright-msft I am guessing this wasn't reduced in CU1. Will it be in CU2? Any ETA?

Yes, in CU2.  First part of Dec.

@twright-msft I see CU2 has now landed. What are the new minimum RAM requirements? DockerHub still says 3.25 gb.

Docker Hub is updated now.  I've sent in a request to have the Microsoft docs updated as well.

Hi everyone. 2GB is nice, but I believe you can do better! It's too high requirement for SQLExpress edition, which for some applications can be run on a much lower amount of RAM (e.g. on a Synology NAS with total 1 GB of RAM). For Express, there should be no artificial limitations, 512MB seems to be more than enough for many small-scale scenarios. Any hope for this?

We will keep working on reducing the minimum requirements over time.

@twright-msft
Hi, Why does SQL server require 2 GB of physical ram to run in linux? Why is there such a limit? I can have a small development server with only 1 GB physical ram + 2 GB or more of swap and I would be OK with some lags and slowness. Doesn't it make sense to take both physical ram + swap memory into account?

My frustration is the inability to run a container above 2GB of RAM on the Windows side.  As part of a development workflow it would be wonderful to have a container running SQL (SQL Linux via LCOW) and then you can run your ASP.Net applications that requires Windows running as well.
As it stands this very needed workflow is not possible simply because of a memory limitation on the container itself. I have 32GB of RAM so I can allocate plenty - if it would just let me!
If I switch to Linux containers I can change the RAM in the Docker Settings or via Hyper-V Manager. But on the Windows side I'm SOL.

It seems there is no way to influence the amount of memory that gets allocated. Not even with the -m switch. At least, not while running Windows containers:

PS C:> docker run --platform=linux -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=MyPasswordIsSafe" `

-p 1433:1433 -m 4g `
-i mcr.microsoft.com/mssql/server
sqlservr: This program requires a machine with at least 2000 megabytes of memory.
PS C:>

Would it be a good idea to have an environment variable to skip the check in its entirety? Something like -e "YesIKnowPerformanceWillSuckButYourMemoryDetectionIsOff=Y"

There is a -e UseMoreThan2MeaslyGBofRAM=Y thing in the works. :)  I've talked to the LCOW team about it and it is in internal preview now.  Just to be clear - this is an LCOW problem not a SQL problem.  The underlying VM that LCOW creates that the SQL container runs in cannot be bigger than 2GB right now.

We will keep working on reducing the minimum requirements over time.

It would be epic if we could run it from a docker container on a Raspberry pi 3 (1 gb ram)
People suspect that the Raspberry pi 4 might have 2gb of ram https://technofizi.net/raspberry-pi-4-release-date-specs-rumours/

why can't sqlservr just use swap space if it is available?
i have 1G physical RAM and 7G swap space but sqlserver still says:
"sqlservr: This program requires a machine with at least 2000 megabytes of memory."
and we can see what it is doing:
...
sysinfo({uptime=3532, loads=[20512, 54240, 90400], totalram=1037512704, freeram=308752384, sharedram=0, bufferram=0, totalswap=7516188672, freeswap=7420506112, procs=165, totalhigh=0, freehigh=0, mem_unit=1}) = 0
...
so it doesn't just try to malloc and fail or something but rather it looks for physical ram (using the sysinfo system call) and makes a value judgement for me. e.g. "your swap space isn't good enough for me."

I made a docker image that works around this memory limitation (policy):
https://github.com/justin2004/mssql_server_tiny

ı waste lots of time about this issue and ı couldnt find any solution. maybe  @justin2004 ' image can solve this problem .. Does anyone try this ?

I just have a 2GB physical memory machine with centos 7.7, while I am install SQL Server 2019, i got this "sqlservr: This program requires a machine with at least 2000 megabytes of memory.
/opt/mssql/bin/sqlservr: This program requires a machine with at least 2000 megabytes of memory." How can i get this figured?

@benbendemo
did you try https://github.com/justin2004/mssql_server_tiny ?

In my case without Docker CE installed but Docker Quickstart Terminal + VirtualBox it was within VirtualBox Manager where I had to increase RAM size as shown:

Hope this could be helpful for someone with the same problem I had.

@twright-msft any updates?

This certainly needs to have something in it to override such an OTT check, people who in theory should be dealing with a piece of software at this level should be able to understand the risks of ignoring the 2GB requirement. To not have the ability especially on Linux to override it is as said earlier as ridiculous as a 2GB check. I've just had to turn dynamic memory off on a hyper-v VM & set the ram to 2GB to pass the check & now I shall go & revert it back to dynamic etc, this is an opportunity for mssql to compete with mysql and mariadb for once, a stupid check like this would be an instant show stopper.

This limit sees to be per instance, so having 3 sqlservr instances in the same vm requires at least 2 GB so each can validate required memory amount. I'm running a postgres in the same machine and the 4 all together are using no more than 512 MB, so wasting 5.5 GB otherwise available is painful but 'required'.


Question about preprocess for observation

Hello.
I have a question about preprocess for observation in Dreamer.
In the PlaNet implementation, preprocess function converts images to 5-bits and adds noise, but it looks that preprocess function in this repository doesn't do such preprocess. Did you find that such preprocess is unnecessary for Dreamer?

Exactly. We found that this preprocessing wasn't necessary for PlaNet either. We just used it at the time because it was common in other generative modeling codebases.


CF command to list quotas space-wise?

High five for submitting a report!
If you found an issue with the cf CLI, please visit the releases page and confirm it's not fixed already in the latest release.
To avoid additional back and forth, please include the following details as relevant:

Command
e.g. cf push myapp -i 2 --no-route

What occurred, incl. error and/or stack trace

What you expected to occur

CLI Version
e.g. 6.13.0-dfba612 (see cf -v output)

CC API Endpoint Version
see cf api output

CF Trace, if issue relates to HTTP requests or strange behavior
run the command with -v and paste or attach the trace output

Platform & Shell Details
e.g. Mac OS X 10.11 iTerm, Windows 8.1 64-bit with PowerShell, Ubuntu 14.04.3 64-bit with gnome-terminal

Any other relevant information
e.g. details of an environment, cf CLI version, flag or value it does work with, DNS/network configuration, etc.

Hi @rajk63411
Not sure I understand your question right.
The cf space SPACE command shows the space quota assigned to the specified space. You can loop through your spaces (e.g. with cf spaces | tail -n +4) and pass the name of each to cf space to retrieve them all.
HTH!
Regards,
Dies Koper
CF CLI PM

Closing as answered.


error abou model.py_forward

File "/home/sc/carl_test/BottleneckTransformers-main/model.py", line 43, in forward
energy = content_content + content_position
RuntimeError: The size of tensor a (4) must match the size of tensor b (196) at non-singleton dimension 1
Hi ! when run the model.py i meet this error

Thanks for comments.
Could you plz show me your input shape?

RuntimeError: The size of tensor a (4) must match the size of tensor b (196) at non-singleton dimension 2
I'm using your code. And I didn't make any changes


Create Developer-Focused Documentation Starter

A primary goal for the Cumulus project this year is to facilitate ways for other developer(s) to contribute technically to the project. To date, it has been a small core team developing. As the platform has grown, the amount of know-how one needs to contribute to the codebase, implement a feature end-to-end, etc. has likewise grown.
The aim of this task is to:
(1) Create a basic documentation website, similar to what was done here (https://github.com/USACE/water), which is a simple docs site built with Docsify. The documentation text will be stored in this repository (https://github.com/USACE/cumulus). This will start as a skeleton and be continually updated as part of ongoing maintenance and development of new features.
(2) Enable CI/CD so that docs are rebuilt and deployed anytime changes are made

Complete. A Docsify site has been created with content managed in this repository (https://github.com/USACE/cumulus). The documentation content is written in Markdown, a simple plain-text format.
Because the documentation content is stored in Git, this lends itself to "diffing" changes, using Pull Request workflow and code review practices for documentation changes, basic IDE use for modifying text files, and other common practices used in software development.
The means and methods of updating the documentation are also synonymous with the collaborative development practices used on Cumulus platform components. As a result, interacting with and contributing to the documentation provides a good soft entrypoint for new developers in the future to learn the tools and workflows to contribute to the Cumulus platform more broadly.
To make a change to the documentation:

Clone the repository (branch main contains the latest changes that have been incorporated). git clone https://github.com/USACE/cumulus

Create a new branch. Generally, this is done using a command like git checkout -b feature/add-detail-to-document. In this case, we're creating a "feature branch" called feature/add-detail-to-document.

Make changes to the files. Specifics on changing the table of contents, adding pages, etc. are documented in the Docsify user guide here: https://docsify.js.org/#/?id=docsify. If you have the Docsify CLI installed (https://docsify.js.org/#/quickstart) you can verify the changes as you make them locally using docsify serve and examining the results in a browser at localhost:3000.

Commit changes (https://www.w3schools.com/git/git_commit.asp?remote=github)

Push new branch to Github git push origin feature/add-detail-to-document

Open a Pull Request with relevant information, targeting branch main

Once your Pull Request is reviewed and approved, merge into branch main will trigger a new build and deployment of the content to https://develop-cumulus-docs.corps.cloud.

Repository managers: To trigger a stable build, pull branch main and create a new tag following semantic versioning rules (e.g. v0.3.0). For example, this would look like git checkout main && git pull origin main && git tag v0.3.0. Push the new tag to the repository with `git push origin v0.3.0. This will trigger a new build and deployment to https://cumulus-docs.corps.cloud.

cc @adamscarberry @jeffsuperglide @FHanbali

Approximate commit hash where Docsify was implemented: https://github.com/USACE/cumulus/commit/ee1fc196dad1a3a968270b4928620748a3e4278b


Module not found: Error: Can't resolve 'VueClickaway' in

Hi,
I am struggling to implement vue-instant on a laravel 5.5 project  due to the following error:
ERROR in ./node_modules/vue-instant/dist/vue-instant.browser.js
Module not found: Error: Can't resolve 'VueClickaway' in node_modules\vue-instant\dist'

As I am using Laravel mix to compile all the assets using the following code:
import VueInstant from 'vue-instant/dist/vue-instant.common';
import 'vue-instant/dist/vue-instant.browser';

Everytime I include the line: import 'vue-instant/dist/vue-instant.browser'; I receive the error mentioned above.
Any help would be greatly appreciated?

<link rel="stylesheet" href="vue-instant/dist/vue-instant.css"/>

<script src="vue.js"></script>
<script src="vue-clickaway.js"></script>
<script src="vue-instant/dist/vue-instant.browser.js"></script>


enh: filter empty collections

Pull Request Checklist

[x] Target branch: Pull request targets the dev branch
[x] Description: Backend filtering for empty collections in completions
[x] Changelog: Added below
[x] Documentation: No documentation updates needed
[x] Dependencies: No new dependencies
[x] Testing: Code changes have been tested
[x] Code review: Self-review completed
[x] Prefix: Using fix: prefix as this addresses a bug/improvement

Changelog Entry
Description
This PR adds the logic for filtering out empty collections in completions to the backend. This ensures a cleaner separation of concerns and avoids redundant frontend handling.
Changed

Implemented file filtering in middleware.py to exclude empty collections during chat completion processing.

Fixed

Fixed issue where empty collections caused errors in hybrid search by handling them at the backend level.

Why was this closed? @tjbck


qwik-city: Link - Handle option clicks

What is it?

[x] Feature / enhancement
[ ] Bug
[ ] Docs / tests / types / typos

Description
Escape client side routing for modifier/option click. Ctrl on Windows, CMD on macOS.
Use cases and why

When users click on <a> in the <Link> component with a modifier key active, we want to allow user preferred behaviour. Usually open in new tab etc. Currently, we always prevent default which results in client render in the same window/frame.

Checklist:

[ ] My code follows the developer guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] Added new tests to cover the fix / functionality

Seems like a good idea. Nitpick is that ideally you'd limit the modifier to the correct one for the platform, but devs can just add their own onClick handler.

Wil this actually fix the issue of being able to alt click to open in a new window? I think the issue is that prevent:default prevents the browser from doing anything.
I think the correct solution is to be able to run code synchronously on prevent:default to determine if it should run or not.
I had a write up on this, but Qwik already serializes some functions as sync in <script q:func="qwik/json"> It would be greater if we could have a function there for determining if the prevent:default should run or not. @wmertens any chance we could attack that one?

Linking this to #4496 - as soon as that's implemented this can be implemented (with e2e test)

I close this PR b/c this behaviour is covered by the new sync$ API


Volunteer Manager v2.1 [2024Q2]

Infrastructure

[x] Load test the displays: sustain updates consistently for at least 3 days
[x] Load test the manager: sustain 100 requests/sec

Admin
Events

[x] Shifts: Enable deleting shifts, providing none have been scheduled
[x] Volunteers: Enable notes to be maintained in the admin area

Schedule Display

[x] Give the device a green light when volunteers are presently active
[x] Resolve the crash that occasionally happens (presumably on light changes?)

Schedule Portal

[x] Bring online infrastructure necessary to support the schedule app

[x] API for retrieving schedule information, periodically updated

[x] Artificially create locations, areas and events where applicable
[x] Refresh immediately when shift changes are expected

[x] Consistent authentication and access control

[x] Bring back online the Volunteer Portal

[x] Overview page
[x] Areas, both the overview and the individual pages
[x] Events, both the overview and the individual pages
[x] Locations, both the overview and the individual pages
[x] Volunteers, both the overview and the individual pages

[x] Enable avatars to be updated within the schedule portal
[x] Enable notes to be maintained within the schedule portal
[x] Enable volunteers to be contacted by phone and WhatsApp

[x] Ensure that pages have appropriate titles for what they're displaying
[x] Restore the search functionality on the schedule app

[x] Close the search bar then the user presses the <esc> key

[x] Improve the app's layout, personalise to the environment, Material You-ify.
[x] Introduce new functionality in the portal

[x] Provide access to help requests in the portal

[x] Redirect from an event-less location to automate the text + WhatsApp links
[x] Include the ability to acknowledge, and then close requests (w/ a reason)

[x] Provide access to the knowledge base in the portal

[x] Include knowledge base articles in the search function

[x] Provide access to the vendor teams in the portal

[x] Overview-page card indicating who's available
[x] Full availability schedule for senior volunteers

[x] Share feedback and ideas directly from the app

Welcome

[x] Enable (rich) installability for the volunteer manager portals

Closed w/ the v2.1.0 release


';' is missing after return statement for a non-simple converted loop

Hi,
when using current LKG typescriptService.js, when transpiling the following code to ES5:
(function(): number {
    for (let i = 0; i < 10; i++) {
        (() => i)();
        if (i == 5)
            return i;
        else if (i == 6)
            break;
    }
    return null;
})();

it will be transpiled to this JS:
(function () {
    var _loop_1 = function(i) {
        (function () { return i; })();
        if (i == 5)
            return { value: i };
        else if (i == 6)
            return "break";
    };
    for (var i = 0; i < 10; i++) {
        var state_1 = _loop_1(i);
        if (typeof state_1 === "object") return state_1.value
        if (state_1 === "break") break;
    }
    return null;
})();

Note that the semicolon (;) after return state_1.value is missing.
ATM this doesn't cause a problem (with "if" or "}" in the next line), but I think the semicolon should be emitted to avoid issues when the next line contains e.g. something like +4;, as this would be interpreted as part of the return statement.
The cause is in emitter.ts, line 3165:
write(`return ${loopResult}.value`);

Thanks!

PRs are welcomed.

Thanks @T18970237136!


Feature request, "Rollback" or "DiscardChanges" on IDocumentSession

Yesterday I ended up with a bit of a "weird" issue where my final solution was just...a bit too complex for my taste tbh. What I really would have needed in order to do a less crazy solution would have been a way to discard/rollback all changes in an IDocumentSession.
Basically it would be nice to have an IDocumentStore.DiscardChanges() (I think DiscardChanges is better naming than Rollback since it feels more related to SaveChanges) that just discards all currently registered changes in the IDocumentSession.
Is this a feature that would be possible to introduce in Marten?

@wastaz I think that's doable, we already have such for transaction handling. I'm fine with adding that.
@mysticmind @jeremydmiller @jokokko thoughts?

@oskardudycz yes, it looks like a useful functionality. IdentityMap has ClearChanges and if we add clear changes to UnitOfWork then it is trivial to expose the same in DocumentSession

I think this one should be relatively simple. I'm all in favor.

@oskardudycz yes, it looks like a useful functionality. IdentityMap has ClearChanges and if we expose ClearChanges (currently it is a private method) in UnitOfWork then it is trivial to impement the same in DocumentSession

when we have this feature in transaction , why need that  in IDocumentSession ?
after save change , change tracker is reset and we dont have changes for rollback ...


Disable all unimportant vulnerabilities

osv.dev integrates Debian security tracker data into existing CVE entries, filtering out unimportant vulnerabilities.

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

Project coverage is 64.31%. Comparing base (e2adeb5) to head (975a21e).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #968      +/-   ##
==========================================
+ Coverage   63.71%   64.31%   +0.60%
==========================================
  Files         146      146
  Lines       11958     9299    -2659
==========================================
- Hits         7619     5981    -1638
+ Misses       3875     2852    -1023
- Partials      464      466       +2

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


"max_public_homes" is not working

In my configuration file:
  max_homes: 10
  max_public_homes: 5
  stack_permission_limits: true

In my player's default permission group:

However, they are still able to set all ten homes as public homes:

It is still the Fabric platform, using cross-server mode with MySQL and Redis.

A cursory look at the logic and it.. seems fine? Check their entry in the DB -- how many public home slots do they have?

sure

It can be seen that player 1c9c96f2-93d8-4239-8421-d2e840092d5a has 7 public homes.Moreover, the functionality to set the maximum number of homes is working fine: in my testing, I could indeed only set 10 homes. However, the issue is that all of these 10 homes can be set as public, which exceeds the limit for public homes.

Has this value changed at some point? Can you test actually changing the homes now? If you change the config option, it won't retroactively privatize the homes

@foxii-cn Just following up on the above :)

Unable to reproduce.

I apologize, I have been busy with other matters recently. If I test later and find that this issue still exists, I will let you know. Sorry for my laziness and rudeness!


[ROCKETMQ-242] mqclient can not fetch nameSrvAddr periodly

Coverage decreased (-0.002%) to 38.717% when pulling fd635b6b28685dacfdfd3160abe2f761177685f1 on qqeasonchen:develop into 118bdec96005ce695295bcf0d9082e0230e69bf7 on apache:develop.

Coverage decreased (-0.002%) to 38.717% when pulling fd635b6b28685dacfdfd3160abe2f761177685f1 on qqeasonchen:develop into 118bdec96005ce695295bcf0d9082e0230e69bf7 on apache:develop.

Coverage decreased (-0.002%) to 38.717% when pulling fd635b6b28685dacfdfd3160abe2f761177685f1 on qqeasonchen:develop into 118bdec96005ce695295bcf0d9082e0230e69bf7 on apache:develop.

@Jaskey @shroman @zhouxinyu
create a pull request again due to previous wrong commit ,pls help to review, thx.

@lizhanhui pls help to review


Dynamic Point lights with/around RMC

What I am trying to do:
Add a dynamic point-light next to RMC created wall. Check screenshot. X-Y-Z Gizmo represents the point light.

As you can see in the image above, a wooden horizontal plank, which is a static mesh component has a correct light reflection. BUT RMC wall (no material) has light only to left. (As if masked by XZ plane)
I will try to create a reproducible example. But if there is something obvious that I am missing please let me know.
Two more screenshots to represent the issue:
First image has a point light just above RMC. The only light reflected left to X-Z plane is visible
2nd image has a point above the Static Mesh Ground Image. It works correctly.

You have misconfigured normals/tangents or UV.