Documentation about Precise DSWx-S1 Inputs

From my conversations with @oberonia78 - the DSWx-S1 product is chopped up into MGRS tiles after it has been generated. To match the production version, all the bursts overlapping a given MGRS tile must be used (not more, not less) as that will affect the distribution of backscatter that is analyzed.
The relevant repository required for this accounting is here: https://github.com/opera-adt/mgrs_tiles_database
It would be nice to have documentation about how to generate production-grade DSWx-S1 products locally. Specifically, how to generate a run-config for a given MGRS tile that will mirror what is generated on the OPERA cloud system.
🙏

To clarify:
@oberonia78 warned me of an important difference: there is the official “OPERA” product and everything else you might get out of the DSWx-S1 software. This is because the final output of DSWx-S1 crucially depends on the input you provide (at some point, a bimodal distribution is fit and a threshold is extracted).  A DSWx-S1 product generated from a single burst will be different than one generated by many (the inputs will have different distributions and hence different thresholds will be extracted - likely not too different, but could potentially problematic if a burst is coastal and an MGRS tile is not). It would be nice to produce “official” OPERA products historically and on-demand on our local machines and to have such documentation available. Roughly, this requires a way to call the software precisely.
Moreover, the auxiliary dataset is a crucial piece of this equation. Jungkyo said that using the database generated by this software over the default MGRS PyPI library will have difference in outputs too.
This distinction is what motivated the email as @oberonia78 said the products we were generating with this notebook might be slightly different than the official ones: https://github.com/OPERA-Cal-Val/dswx-s1-workflow-pst. Hope this explanation helps.

So I wanted to update my issue ticket as I misunderstood an important point. The inputs for an official DSWx-S1 product are not bursts over a single MGRS tile, but actually, a collection of MGRS tiles collected as a "frame". This accounting is done in the database repository linked above. There is also the issue of adequate spatial coverage across this frame for a DSWx-S1 product to be triggered. I look forward to understanding what both these entails and more.
Thank you @niarenaw and Luca for your explanation and patience!


I have 2 accounts, belonging to 2 separate tenants, using the same id, and I cannot switch from one to the other

Issue Type: Bug
We have two separate tenants in azure, and I have a user in each. Both of those users share the same ID (lets say me@domain-a.com).
However the login for tenant A is<EMAIL_ADDRESS>and the login for the tenant B is<EMAIL_ADDRESS>After installing ADS, I logged in to tenant A using my email<EMAIL_ADDRESS>I then realised all our databases are in tenant B. So I logged out, and logged in to tenant B using<EMAIL_ADDRESS>When returning to ADS, I see that it has logged me back in to tenant A! Despite me choosing the credentials for tenant B when the azure login page asked me to choose a tenant. I cannot seem able to log out of tenant A properly and log back in to tenant B.
Things I have tried:

Deleting ~/Library/Application Support/azuredatastudio/
Setting a different --user-data-dir
The insiders release of ADS
Logging out of all azure accounts before logging in to the correct one
Using a new unused browser
Looking in keychain to find a relevant record to delete but could not find one

Note: I was able to reproduce this problem on Windows.
Azure Data Studio version: azuredatastudio 1.41.2 (0f0960d0e774e1ce903b79378addff96117c27a6, 2023-02-08T20:18:32.853Z)
OS version: Darwin arm64 22.2.0
Restricted Mode: No
Preview Features: Disabled

System Info

Item
Value

CPUs
Apple M1 Max (10 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
43, 43, 46

Memory (System)
64.00GB (5.32GB free)

Process Argv
--ms-enable-electron-run-as-node --user-data-dir /tmp/ads

Screen Reader
no

VM
0%

Extensions: none

Hi @maxmumford

When returning to ADS, I see that it has logged me back in to tenant A! Despite me choosing the credentials for tenant B when the azure login page asked me to choose a tenant. I cannot seem able to log out of tenant A properly and log back in to tenant B.

It depends on the account you authenticate with microsoft online. And if it has associated tenant available in the list (as in Azure Portal), it should show up in the Azure tree.
Please check a few things.. have you ignored tenant you intend to log into second time by accident?
You can look for the below setting in settings.json:
"azure.tenant.config.filter"
Try to remove this and add account again.
If that's not applicable, I would recommend capturing logs (with PII Logging enabled) to help understand which tenant you logged into when you add account. If you wish to upload for investigation, please mask any sensitive information.

Hi @cheenamalhotra, thanks for your quick reply.
My settings.json was almost empty and had no reference to ignored tenants so I don't think it is that. I have also deleted the entire ~/Library/Application Support/azuredatastudio directory which would have removed it.
As for the logs, I did as requested but each time the 1-Azure Accounts.log file was completely empty. I tried deleting the azuredatastudio directory, restarting ADS, setting log level to all, and re-running the process, and nothing resulted in anything being added to the logs. The path I was looking at was:
/Users/max/Library/Application Support/azuredatastudio/logs/20230223T185632/exthost1/output_logging_20230223T185634

My settings.json:
{
    "workbench.editorAssociations": {
        "*.{sqlplan}": "workbench.editor.executionplan"
    },
    "azure.loggingLevel": "Verbose"
}

Ok so I have found a workaround. I added the following line to the root of my settings.json:
"azure.tenant.config.filter": "my-tenant-guid-to-ignore"
Where my-tenant-guid-to-ignore is the tenant id from Azure Devops > Active Directory > Properties > Tenant ID of the tenant I don't want to log in to. Then restarted ADS, removed and added the login and now I am able to access my DBs.
However the accounts list in ADS still shows the wrong email address.

As for the logs, I did as requested but each time the 1-Azure Accounts.log file was completely empty.

I hope you're running command 'Developer: Open Logs Folder' every-time you restart/reload ADS, as the path changes too.. Sometimes it does show 0 KB but opening it loads logs, maybe try giving it some time :)

However the accounts list in ADS still shows the wrong email address.

I'm interested to learn about how your accounts are created. Can you elaborate more about your account/email relation here?

Which tenant is the owner of the user account (calling it Tenant A)?
And how was it given access to Tenant B (where you want to access it)? Was it added as a guest user?
Why do you not see both tenants when you login with original email? Is that how it works in Azure Portal too?

I wasn't! When I do run that command I do indeed get the logs.
This morning I removed the ignore setting from my settings.json, removed and re-added the account and seem able to connect without issue. It still shows the wrong email address, but I'm beginning to think that is because the ID (what it's showing) is different from the actual login username.
I'm going to close this as I think I have a decent enough workaround / fix, and if it recurs I'll create another issue.
Thanks for your help.


Battery life percentage reports a number higher than 100 on a Windows laptop

Hi! After downloading latest release (2.0.5) for Windows x64, I ran fastfetch with cmd.exe without configuring anything, just running it right after downloading. Output is fast and is without layout issues, but battery percentage reporting is above 100% (reports 117% and should be 100%). The image below shall tell a lot about hardware used to run fastfetch.

I guess it has to do with this file responsible for getting battery status src/detection/battery/battery_windows.c (how do you reference files with md?)
Reproducing the bug

Hardware should be a laptop and battery should be full and connected to AC
Download latest release binary (2.0.5) for Windows x64
Extract the archive and run it with cmd.exe without configuring anything

If battery level report does not exceed 100%, there are likely more factors that leads to battery level report being above 100%

Try fastfetch --allow-slow-operations

AC ON

AC off right after disconnecting it (no change as of taking second screenshot)

AC off for some time

AC on after that and charging to 100%

I think battery life reporting outputs wrong information when battery is fully charged

When you disconnected the AC, did it drop to 97% directly or slowly? Did it show other values above 100% ( eg 110% )?

Drop to 97% was not instant but gradual and i have yet to see values that are 100 > n < 117 but now there's this problem of hardware not charging battery that is above 90%, so I will let that laptop use battery more and recharge it to completion to make sure i have not seen values like you said, for that I will come back in a while to report it.

The percentage value is calcuated with remainingCapacity / maxCapacity * 100%. It seems that the OS was reporting remaining capacity larger than max capacity.

Might get into this, which I will put it to window sill for a while

Came back with results! Two outputs show past and current battery level but even when it reports 100%, it still says Charging, so what is likely is the formula or how kernel reports battery levels.

So I disconnected the charger and reconnected it and reran fastfetch  and no longer it reports Charging but just AC Connected, but after not running it for a minute and then running the program again, Charging is reported again.

But Windows mobility centre says it's fully charged.

Maybe your laptop supports trickle charging.
Anyway, I don't think there are any bugs in detection logic. The only thing I can do is clamping the result to 100% if it exceeds 100%, but I don't think I want to to that.


feat/middleware/134

Addresses #134
🚧 Changes

Add client\middleware.ts
Add client\middlewares\stackMiddlewares.tsx
Add client\middlewares\types.ts
Add client\middlewares\withAuthorization.tsx
Add client\middlewares\withResponse.tsx
Add client\app\error.tsx
Add client\app\auth\page.tsx
Add client\app\auth\general\page.tsx
Add client\app\auth\protected\error.tsx
Add client\app\auth\protected\page.tsx
Add client\app\auth\signin\page.tsx

🚀 Impact:

Middleware request routing based on mock authentication token

📝 Notes:

Middleware files are in place to allow various tasks (TBD); such as, authentication, logging, modifying the request or response, and more, before the response is sent.
CAS Registration middleware architecture has chained middlewares to create a pipeline of operations providing better maintainability and scalability.
client\app\auth files are for demo purposes only providing the UI of request routing based on middlewares management of a mock auth token.

🔬 Testing:

Open terminal in cas-registration\client folder
Start the development server:yarn dev

In your web browser, navigate to http://localhost:3000/
You should be directed to the "Auth Sign-In Page" (client\app\auth\signin\page.tsx)

Click the "Sign-In" button to request route /authenticate to set a mock authentication cookie (client\middlewares\withResponse.tsx)
You should be directed to the "Auth Home Page"  (client\app\auth\page.tsx)

Click "Auth General Page" to request a route that needs mock authentication cookie validation (client\middlewares\withAuthorization.tsx)
You should pass authentication cookie validation and be directed to the "Auth General Page" (client\app\auth\general\page.tsx)

Click "Auth Home Page", you should be directed to the "Auth Home Page"
Click "Auth Protected Page" to request a route that needs mock authentication cookie validation
You should pass authentication cookie validation and be directed to the "Auth Protected Page" but client-side session based authentication should fail and throw error (client\app\auth\protected\page.tsx)
"Auth Protected Page" route should display boundary error page (client\app\auth\protected\error.tsx)

Click "Try Again"
You should be directed to the "Auth Sign-In Page"
Click the "Sign-In" button
You should be directed to the "Auth Home Page"
Click the "Sign-Out" button.
You should be directed to the "Auth Sign-In Page"
Enter any  http://localhost:3000/ url in the browser (with one exception below)
You should be directed to the "Auth Sign-In Page"

✅ Example  http://localhost:3000/ urls:

http://localhost:3000/
http://localhost:3000/auth
http://localhost:3000/auth/general
http://localhost:3000/auth/protected
http://localhost:3000/letmein

❌  Exception  http://localhost:3000/ url:

http://localhost:3000/authenticate

New branch from this branch for feat\layout-components


Add methods for p output

See also https://github.com/fluent/fluentd/wiki/Developer-notes-for-fixes-on-v0.14#configuration

Can you add some tests for this change?

OK! I will add tests.

I've added tests.

@okkez tests are failing with syntax error on Ruby 2.0 & 2.1.

I've fixed tests.

LGTM.

Merged. Thank you!


Using OPENAI TTS，the reply stops after reading part about 10-12seconds

Bug Report
Description
Using OPENAI TTS，the reply stops after reading part about 10-12seconds, might be token-limitation, i cannot tell.
Bug Summary:
[Provide a brief but clear summary of the bug] Using OPENAI TTS，the reply stops after reading part about 10-12seconds, might be token-limitation, i cannot tell.
Steps to Reproduce:
[Outline the steps to reproduce the bug. Be as detailed as possible.]
Expected Behavior:
[Describe what you expected to happen.] might be workable to adjust the token limitation or change configuration. butter or streaming support will be necessary.
Actual Behavior:
[Describe what actually happened.]
Environment

Operating System: [e.g., Windows 10, macOS Big Sur, Ubuntu 20.04]
Browser (if applicable): [e.g., Chrome 100.0, Firefox 98.0]

Reproduction Details
Confirmation:

[ ] I have read and followed all the instructions provided in the README.md.
[ ] I have reviewed the troubleshooting.md document.
[ ] I have included the browser console logs.
[ ] I have included the Docker container logs.

Logs and Screenshots
Browser Console Logs:
[Include relevant browser console logs, if applicable]
Docker Container Logs:
[Include relevant Docker container logs, if applicable]
Screenshots (if applicable):
[Attach any relevant screenshots to help illustrate the issue]
Installation Method
[Describe the method you used to install the project, e.g., manual installation, Docker, package manager, etc.]
Additional Information
[Include any additional details that may help in understanding and reproducing the issue. This could include specific configurations, error messages, or anything else relevant to the bug.]
Note
If the bug report is incomplete or does not follow the provided instructions, it may not be addressed. Please ensure that you have followed the steps outlined in the README.md and troubleshooting.md documents, and provide all necessary information for us to reproduce and address the issue. Thank you!

Hi, could you provide steps to reproduce the issue?


@kanaabe => Article artworks use 'artists' array

Article artworks print names from 'artists' array by default and fallback to 'artist'
Tests updated to use 'artists' array

Woot! Thanks for adding that assertion. Mergin


XMLHttpRequest cannot load on Google Chrome

Hi! I'm trying to run my aurelia app without using a web server. It runs on Firefox, but not on Google Chrome! I've got the following error:
vendor-bundle.js:4102 XMLHttpRequest cannot load file:///home/leonardo/master-the-toefl/…ent/node_modules/aurelia-materialize-bridge/dist/amd/colors/md-colors.html. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

vendor-bundle.js:4102 XMLHttpRequest cannot load file:///home/leonardo/master-the-toefl/…-client/node_modules/aurelia-materialize-bridge/dist/amd/well/md-well.html. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

How can I solve this problem?

@LeoNero
This is not a problem with this bridge or with Aurelia, it's actually a feature in Firefox. :smiley:
Anyway, I'm not sure if I can describe this properly. I think the Chrome help has a good explanation.
When serving from the file system, Chrome doesn't allow requests of other files on that file system. If you use a local web server (this can be for example BrowserSync), you won't get these errors.
I think it is well described here:
http://stackoverflow.com/questions/8449716/cross-origin-requests-are-only-supported-for-http-but-its-not-cross-domain

@Thanood Yeah, the solution is to use a local web server... Thanks! :D


Target Roots in Head Event

PR Description
PoC implementation of adding current and previous target roots to the head event and then using those to detect when validator duties have to be recalculated.  See https://github.com/ethereum/eth2.0-APIs/issues/116
Messy but enough to work through the specifics of implementation.
Documentation

[x] I thought about documentation and added the documentation label to this PR if updates are required.

Final piece of this was merged with #3434

Final piece of this was merged with #3434


Remote: rtvs::: is not autocompleting on remote server

When I want to fetch a remote file and I type "rtvs:::" I'm expecting to see command completion, but I don't. The command works fine, however and retrieves the file successfully.
rtvs:::fetch_file("foo.csv")

It seems like there's some general problem with :: and ::: Intellisense. I don't get a list when I just type those in the REPL, and Ctrl+Space gives a list of everything available globally, rather than just package/namespace members.

utils:: and RODBC:: work fine

It appears that 'rtvs' is not really a package since it does not appear in the list of loaded or installed packages and hence completion does not see it.

It is 'loaded via a namespace (and not attached)`

http://stackoverflow.com/questions/14988722/in-r-what-does-loaded-via-a-namespace-and-not-attached-mean
It means the package (In this case R) can access the package functions/objects, but the user can not without explicitly loading the tools package

This is not correct - loaded but not attached simply means that it's not on the search path, and therefore its identifiers cannot be used without qualification. But :: and ::: should still work, because they work off the list of loaded namespaces, not off the search path. Note how they do work when you actually evaluate R code - you can actually execute rtvs:::fetch_file, it's only the code completion that's not working.
If our code completion uses search() for this, then we should fix it to use loadedNamespaces() instead to be consistent with R.

It uses _host.Session.InstalledPackagesAsync() so currently only what appears in the package manager

Ah, that makes sense. rtvs is not a properly installed package, and it won't show up there.
Aside from that issue, this behavior is more correct than loadedNamespaces even. Both :: and ::: implicitly load the package on the left side before accessing the symbol, so if we want completion to track what R does, then looking at installed (and not just loaded or attached) packages is a right thing to do.
I guess we could just special-case rtvs since we always load it. Or make it a proper package - but then we'll have to build it with MinGW and install it via install.packages on first load or something...

Vaguely related: https://github.com/Microsoft/RTVS/issues/2525

I think special casing is fine

Unfortunately, we don't provide any RD documentation so there is no signature help.

https://github.com/Microsoft/RTVS/commit/5207e29f0beb99a7791dfa56855743ed775801a4


Disable travis tests

This PR temporarily disables the Travis tests. See https://github.com/apache/incubator-mxnet/issues/13136 for details.

@mxnet-label-bot [pr-awaiting-merge]
@anirudh2290 @sandeep-krishnamurthy can you please merge this.


REF: move the rest server parts into dat-server module

pardon the dust, there's a bit of a mess here

i think we should wait on this until the new dat JS API is solid and implemented


Where is "scanvideo.h" file?

https://github.com/raspberrypi/pico-extras/blob/master/src/rp2_common/pico_scanvideo_dpi/include/pico/scanvideo.h

https://github.com/raspberrypi/pico-extras/blob/master/src/rp2_common/pico_scanvideo_dpi/include/pico/scanvideo.h

Thank you.


Add ReadMissEvents and WriteMissEvents Metrics

Signed-off-by: Keshava Munegowda<EMAIL_ADDRESS>

Signed-off-by: Keshava Munegowda<EMAIL_ADDRESS>


typo: cosmos-db/resource-manager/Microsoft.DocumentDB/cosmos-db.json

defintions -> definitions
parition -> partition

Automation for azure-sdk-for-go

Automation for azure-sdk-for-node

Automation for azure-sdk-for-java


Update dockerfile to build

Can be run with the commands:
docker build -t liberty .
docker run -v $(pwd):/mnt -ti liberty

Fix for issue #22

Full disclosure: I am not very good at using Docker. I understand how it works, what it is for, and why it would be good to have for the kernel, but I could never get Docker to work on my computer.
What would the user need to do in order to set up the OS using Docker? Could we create a file to explain how to use Docker with the kernel?

Once docker is installed it is as simple as running those 2 commands. What docker issues specifically were you running into? I might be able to help out. I haven't tried anything on Windows but I do have a Windows computer (I develop on KDE Neon) and I suspect the second command will work in powershell. I can write up a document with links to setting up docker on different operating systems as well as these commands that you need to run.
docker build -t liberty .
Sets up the environment and builds the image
docker run -v $(pwd):/mnt -ti liberty
Runs the copy script to copy the target folder into the target folder in the directory you are in.
Looking at that failed build, the warnings look to be related to me bumping the version to a newer version, I can make those fixes.

If you can set that all up, go for it. Could I merge this request?

Yeah I can do that as a separate request and we can get this merged in

Hooplah!

What's the status for this PR? I would love to merge it, but I am not sure if you were finished working on it.

i pushed a PR that seems to have failed tests trying to run bootimage. the container itself doesn't seem to need it. not seeing what I missed so far. Pretty new to this level of embedded development.

Apparently there is an issue with the test runner environment/configuration. all PR being pushed are failing on the test phase including from danielteberian. Something with getting the bootimage command installed correctly? Any ideas?

Apparently there is an issue with the test runner environment/configuration. all PR being pushed are failing on the test phase including from danielteberian. Something with getting the bootimage command installed correctly? Any ideas?

If you are referring to the tests that are run by Github, they have never worked. If I remember correctly, the tests do not work without the standard library for Rust, but I could be mistaken. Perhaps I should just stop Github from automatically testing each version that is pushed to the repository. Don't be alarmed about the tests failing. If the kernel does not compile, then we have reason to be worried. As of right now, the kernel compiles without any warnings, so that is good.
If you are referring to "cargo test", then there is a longer explanation to be given. The kernel does have tests, but they have to be executed individually. For some reason, "cargo test" causes an error.


fix(Lines): set id properly on initial draw

Follow up of #1114
On initial draw, a handdraw would still not redraw the line / set the y data.
The problem was that the curve id wasn't set. curves_sel is initially an empty d3 selection, and after we attached data and added the nodes, we should reassign to curves_sel it seems. I thought d3 would keep the DOM and its selection in sync, but apparently it does not, or something else is going on.
Some more background why it doesn't work: https://github.com/bqplot/bqplot/blob/f2f01a3df3b7238ea126363bc5f93c70d89d1a92/js/src/HandDraw.ts#L118 use the id to set the data.

I thought d3 would keep the DOM and its selection in sync, but apparently it does not, or something else is going on.

Me too, that it weird. Although it fixes the issue so moving on with this. To be investigated.


Remove data-view-buffer

Removes data-view-buffer and uses DataView.prototype.buffer

Oh wow, looking at https://github.com/thepassle/module-replacements-codemods/pull/38 it seems like transformInstanceProperty is what I want to use instead. I can refactor this when #38 is merged.

Would you mind fixing the conflicts in #38? Then we can go ahead and get that merged 🙂

@thepassle I rebased on that branch and refactored data-view-buffer

Thanks for the PR!


CB-13393 Image lookup by image uuid should not filter images by OS.

See detailed description in the commit message.

increased cluster proxy version and retried


delete button redirect to previous page when there is no crud table

refs #3762
When deleting an entry from the show operation, although the entry is indeed deleted the browser stays in the entry show page. Refreshing the page would cause 404 error as the entry is already deleted from database.
This PR adds a fallback for when no crudTable is present on page and the entry is deleted we redirect to previous page.

A new inspection was created.

The inspection completed: No new issues

Hmm... I'm not sure I consider this to be a bug... From my perspective:

a success message is shown to the user, telling the item was deleted;
there's no reason for the person to refresh this page;
if the user DID refresh this page, I think it's the expected behaviour for it to fail; the item no longer exists;

Granted, what the user wants, most of the time, after deletion, is to do something else. So we could save them some time and just redirect them to the table view. But I wouldn't call this a bug to be honest...
I don't think we can implement a change like this and consider it non-breaking. That's because:

People might be loading these buttons in their custom operations, that don't have the crud js object. And they might not want this new behaviour.
I'm not sure the previous page is what they'd want; they probably want the table view; but then again, what if that doesn't exist?! tricky;

Because of the caveats above, I think it'd be better to just... not do anything 😀 I think sometimes it's difficult, but one should say "it's good enough" 😅 Please tell me if you think I'm wrong - it happens at least once a day 😅
Cheers!

Indeed, you are right about the implications. This was just a hacky solution that could work for one project.
But I still think deleting an entry and doing nothing is not the natural behaviour. Even in List, after we delete the entry, it gets deleted from table.
I will keep this around, because I think I have other PR opened to add a "different" redirect to the Cancel button. https://github.com/Laravel-Backpack/CRUD/pull/3248
This might be inline with that I think it's needed for "Crud buttons". A way to define what happens when user click the button (go previous, go to specific page wtv).


Include navigation as a prop when rendering a custom header component

When configuring a custom header, we should include the prop of navigation so we can take action with navigation parameters. See tabBarOnPress in createBottomTabNavigator for reference.

Can you rebase the PR against master?

@satya164 This looks like it's already merging into master? Is there a different branch you'd prefer?

I'm asking to rebase against master, not change the branch to merge to.

Closing since the branch was not merged.


Tailwind 1.7

Updated to reference Tailwind CSS 1.7

Thanks both, I've updated the PR to add that

1.8.2 - or indeed whatever 1.x is latest - will already be installed with the existing ^1.4 constraint.
The only time I typically look to update the constraint is when a security fix exists, or a new major version is tagged. Otherwise we’re tagging updates every week.

That is fair, however I think the addition of removeDeprecatedGapUtilities as suggested by @thinkverse  makes it worthwhile in this instance.


Danstis/issue53

Checklist

[ ] Assign labels to PR

CodiumAI Agent Commands
As required run the following CodiumAI Agent commands:

Request PR update using @CodiumAI-Agent /describe
Request PR review using @CodiumAI-Agent /review (and if required update with @CodiumAI-Agent /review -i)
Request PR improvement suggestions with @CodiumAI-Agent /improve --extended

@CodiumAI-Agent /describe

@CodiumAI-Agent /review

@CodiumAI-Agent /improve

@CodiumAI-Agent /review

How to use PR-Agent

Tag me in a comment '@CodiumAI-Agent' and add one of the following commands:
/review [-i]: Request a review of your Pull Request. For an incremental review, which only considers changes since the last review, include the '-i' option.
/describe: Modify the PR title and description based on the contents of the PR.
/improve [--extended]: Suggest improvements to the code in the PR. Extended mode employs several calls, and provides a more thorough feedback.
/ask <QUESTION>: Pose a question about the PR.
/update_changelog: Update the changelog based on the PR's contents.

To edit any configuration parameter from configuration.toml, add --config_path=new_value
For example: /review --pr_reviewer.extra_instructions="focus on the file: ..."
To list the possible configuration parameters, use the /config command.


How can I fix Footer widget overflow?

Hello, I have a question about using footer widget.
I used footer property for using custom text button, but it caused overflow when the orientation is Landscape.
so I checked the code and found OrientationBuilder widget builds Column widget.
How about wrapping Column widget with Singlechildscrollview? or Is there another solution about this problem?
Here is the code
[screen_lock.dart]
   ...
   Widget buildContent() {
      return OrientationBuilder(
        builder: (context, orientation) => SingleChildScrollView(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              Flex(
                mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                direction: orientations[orientation]!,
                children: [
                  Column(
                    mainAxisAlignment: MainAxisAlignment.center,
                    children: [
                      buildHeadingText(),
                      buildSecrets(),
                    ],
                  ),
                  buildKeyPad(),
                ],
              ),
              if (widget.footer != null) widget.footer!,
            ],
          ),
        ),
      );
    }

hello, sometimes, it shows bottom overflow even in portrait mode


Behave leeloo

Depends on https://github.com/uktrade/data-hub/pull/13

Can one of the admins verify this patch?

Current coverage is 94.95% (diff: 100%)

Merging #90 into master will not change coverage

@@             master        #90   diff @@
==========================================
  Files            28         28
  Lines           992        992
  Methods           0          0
  Messages          0          0
  Branches         43         43
==========================================
  Hits            942        942
  Misses           42         42
  Partials          8          8

Powered by Codecov. Last update e5f98f6...11a34bd


[release-1.8] Add ECC_SIGNATURE_ALGORITHM env integration test

Manual cherrypick required.
#28894 failed to apply on top of branch "release-1.8":
Applying: Add integration test for ECC_SIGNATURE_ALGORITHM
Using index info to reconstruct a base tree...
M	pkg/test/framework/features/features.yaml
Falling back to patching base and 3-way merge...
Auto-merging pkg/test/framework/features/features.yaml
CONFLICT (content): Merge conflict in pkg/test/framework/features/features.yaml
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Add integration test for ECC_SIGNATURE_ALGORITHM
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

ping @jacob-delgado

ping @jacob-delgado

fixed by https://github.com/istio/istio/pull/29829

fixed by https://github.com/istio/istio/pull/29829


Preferences Package Settings Menu Error

The keybindings entry for VHDL Mode under Preferences Package Settings does not find the file after I moved them a few versions ago.

Fixed in 1.7.1


Add registrar Role

Summarizing discussion with @dylanmcreynolds

In Tiled, a Role has a list of Scopes (e.g. read:metadata, read:data, etc.). Principals are in a many-to-many relation with Roles, and Roles can be added (via SQL query) dynamically to customize deployments. The union of the Scopes of a user Roles sets a boundary on the actions they can take, as each FastAPI endpoint in Tiled is protected with a list of Scopes it requires. Individual API keys can be configured with a narrower subset of Scopes. And Access Control Policies can further narrow that subset for a given Node.
Tiled ships with two Roles by default, user and admin. Currently, the register scope, which tells the server to expose a local file as an Asset served by Tiled, is available to admin but not to user. We propose adding a third role, named registrar, with a list of scopes just one item long: ["register"].
Since a Principal can carry multiple roles, a user or service that needs to register Scope, can be assigned the Roles user and registrar.
Alternatives

"Why not just add register Scope to the user Role? It already has write:metadata and write:data." When a client writes data, they are asking Tiled to store data that they already have (and are uploading). When a client registers data, they are asking Tiled to expose a file. Even with multiple protections in place, there is a risk that some misconfiguration might enable a client to expose a file that should not be exposed. Therefore, it's useful to be able to grant this scope specifically to clients that need it, not to all.
"Why not just use admin for this?" The admin Role can perform other powerful actions, like create Service Principals and mint API keys on behalf of other Principals. It should be possible to grant register Scope without also granting these more powerful Scopes too.
"Why not make a separate Scope like trusted_user (or some such thing with a better name)?" Principals are many-to-many with Roles, specifically to enable mixing and matching.

You've sold me on this.
Would it be reasonable to add a prefix to the scope, such as admin:register to convey they gravity of the scope?

I think the justification in bullet points makes total sense, and i really like Padraic's idea to help bring attention to the gravity of the Scope. I just want to flag a boring grammar issue: should the Scope's name be formed as <verb>:<noun> to be consistent with what we have already? (although, I understand this pattern doesn't match the rest of exisiting Scopes.)

Per a long-ago discussion with @tacaswell I think there is a path to restricting what the register scope can do via an AccessPolicy. If that happens, it will not really be an administrative capability. I would like to let that idea cool before we rename it, and leave this as a “maybe” for now.


Bug while executing python code

Hi,
I embedded the following code snippet in my LiaScript document:
import pandas as pd
import numpy as np

#Random numbers as examplary content provided by `numpy` package
s = pd.Series(np.random.randn(5))
print(s)

@LIA.eval(["main.py"], none, python3 main.py)
The coderunner quits with
missing ] after element list

The error is caused by the "´" in the comment. After deleting them, everything works fine.

@SebastianZug Thanks for the report ;-) ... The current version of LiaScript and the CodeRunner should now work as expected. It was indeed caused by the backtiks. Elm and JavaScript have different types of string escapes, which caused this problem. There was another report for Haskell, which had the same problem ...
main = do
  putStrLn $ show $ 9 `mod` 2


Spyder IDE hangs (not responding) while copying when a process is running.

Issue Report Checklist

[x] Searched the issues page for similar reports
[ ] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[ ] Tried basic troubleshooting (if a bug/error)

[x] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description

Spyder IDE 4.0.1 hangs (not responding), when a process is running and same time I do copy pasting codes in .py file the ide goes not responding, waiting for long time also didn't help, I have to close and open.
If I copy a set of code, suddenly the codes disappears and a special character appears at that place.

What steps reproduce the problem?

I am running a keras model and doing a copy paste in the code when the model running, the spyder hangs, I have to wait till running process finishes. Not only keras model, while any long run process.
Copy a set of codes, switch between 2 screens, the highlighted copied code disappears and a special character like omega, alpha.... appears.

What is the expected output? What do you see instead?

IDE hangs
special characters

Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

Spyder version: 4.0.1
Python version: 3.7.4
Qt version:
PyQt version:
Operating System name/version:

Dependencies

PASTE DEPENDENCIES HERE

Closing due to lack of response.


Should time delays and intervals be an int or float?

Current opinions from other threads:
@bwoebi https://github.com/async-interop/event-loop/issues/6#issuecomment-186619234

@AndrewCarterUK why are you proposing floats for times? The precision of the reactors/loops is one millisecond. (Some do allow for more, but e.g. for uv it's at most one millisecond. And we should be able to get same results for each backend.) At least that's the reason why Amp choose to use milliseconds as base unit and should be retained here.

@trowski

@bwoebi Perhaps someday there can be greater precision than 1 ms. Using a float allows for that.

@bwoebi

@trowski If there will ever be, it will be a BC break (significant enough for a major I mean) anyway as currently we should guarantee that all the backends use the same granularity for time management and that granularity would be changed too.

As already mentioned, I'm for int. If we choose float, I'm still for milliseconds as unit of time.

The thing I like about float is that 1.5 will always be 1.5 seconds. With an int, 1500 means 1.5 seconds now, but if a future version allows 0.1 ms accuracy, then perhaps 15000 would be needed for 1.5 seconds, causing a BC break.

It will also cause a BC break if we pass 0.0015 in and in future behavior changes because it actually doesn't get rounded down. Causing a BC break too.
It's like in physics … if you use natural units, most things are expressible as simple fractions or integers, if you use "weird" units like meters and kilograms, you end up with totally weird irrational numbers.

I'm not sure the physics analogy is appropriate - both milliseconds and seconds are 'natural' units.
I also don't think there's any backwards compatibility issue. Event loop timers and sleep() calls are very approximate delays and advertised as such. An implementation being able to improve the accuracy of their timers wouldn't cause a BC break - and not any more than if you just switched it out for a different implementation that also had a different resolution.

@trowski Just because it's an int, we won't change the unit in case of a future 0.1 ms accuracy. Unit ≠ Type.

@kelunik - That's exactly what @trowski is getting at. Your approach sets a minimum resolution that cant be improved upon, using a float avoids this.

@AndrewCarterUK Just to be clear, we have to answer two questions here:

Seconds or milliseconds
int or float (float for sure if we choose seconds as unit of time)

@kelunik - Am aware :) It is still the case that using int rather than float (with either unit) sets a minimum resolution that cannot be improved upon without a backwards compatibility break.

@AndrewCarterUK I meant that we'll have simple integers, an unit which is simplest to operate on.
Sure, I get that point, and I'm still preferring to have integers … well few questions:

What would you ever need µs resolution for?
Will all the backends support µs resolution?

Also, as we today need to cap to ms, it still is technically a BC break when we extend that to µs [we always can extend it to floats, even with PHP 7 strict types, we allow int->float widening].

@bwoebi - I've got no answer for needing microsecond resolution. The only thing I can add is that we have been surprised by changing tech capabilities in the past (Bill Gates's 640 kB of RAM comment) - but I'm not sure that's too applicable here.
Also, you wouldn't be able to change a type hint on an interface without breaking implementations and making a major version change. You're right that the code would work but there would be an error for the method signatures of the implementations not matching the interface.

yea, right, if we were to use PHP 7 and actually specify a type here ;-) But in reality it isn't a problem here.
With that though, if we change from millisecond to microsecond, there will be some reactors still being limited to millisecond and others to microsecond, which is a consistency break then. It's just not as apparent.
[Ad. I'm sure, even if we had like a million clock cycles per nanosecond, our constraints are still limited to the speed of light (requests/jobs/... won't be served faster, only more massively), which is why milliseconds will probably be good enough until all eternity.]

$loop->delay(0.1, ...) // 0.10000000000001 <3

I feel like milliseconds would probably make more sense here for a few reasons ...

There is a very practical argument to make that PHP is not going to be fast enough in the near-term (or medium-term, for that matter) to make sub-millisecond loop iteration a feasible.

The major underlying compiled event loop libraries (kqueue, epoll, libevent and libuv) all use millisecond resolution; it makes sense to follow the lead of the primary implementations in this space and doing otherwise would probably be a violation of the law of least surprise.

Due to modern operating system task-switching you generally can't work under the expectation that your process will get CPU time at intervals below a few milliseconds. Suggesting to API users that they can schedule things at sub-millisecond intervals only sets your library up for a torrent of bug reports (and general confusion) because it's a promise on which you literally cannot deliver. Roughly 10ms is the standard timer resolution for non-realtime operating systems.

ntp.org sums it up nicely:

A high resolution does not help you anything if you can't read the clock. Therefore the smallest possible increase of time that can be experienced by a program is called precision.

It's important to note also that just by nature of using millisecond units we are not foregoing the possibility of sub-millisecond resolution in the future. As long as we explicitly omit an int or float scalar type in the declaration we can easily support nanosecond resolution in the future. I was pleased to see that there was no explicit int requirement.

The idea that we want to support nanosecond resolution at some point in the future is an argument in favor of using milliseconds as the unit of measure because does anyone seriously want to express a nanosecond interval (1e-9) as 0.0000000001 ? Using milliseconds for now would at least make that more palatable. Expressing timer resolution in milliseconds allows us to get the maximum possible scheduling accuracy today (i.e. not using floating point math) while better supporting the potential future reality of nanosecond resolution.

Floating point math is literally the worst

Anyhow ... those are my thoughts ... feel free to disagree. Hope everyone has a nice day :)
P.S. in the amp library we originally used one-second resolution and the floating point math quickly turned into a nightmare so take that for what it's worth.

It seems like there is enough consensus in this thread to warrant moving forward on this basis.
Again, if anyone wants to submit a PR - if not I'll do it next week.

PR done.

Merged.
Closing this now but happy to reopen if anyone has anything else to add.


Add instrumentation

Looks good! Thank you! Should we also add instrumentation to method like evaluate_main_transition(), evaluate_aux_transistion(), evaluate_lagranage_transition() (e.g., here).

That would log the function each time it is called, which is not what we want. Probably there is a better way to get the overall time instead.


node-red-contrib-sm-16inpind

I would like to use the Sequent Pi hat for digital input with Node-RED. My question is the following: does the change of an input result in a new message from the node? Or, should I poll the digital input board?

Hi,
You should poll the board by sending a message to the node.
My advice is to read all inputs with one node (select zero for the channel number) and check for the changing inputs on a function node.

Thank you very much for your honest answer Alexandru.
In my project I need to connect buttons to these inputs and for this reason I’d prefer a node generating a message on each new event.
Kind regards,
Met vriendelijke groeten,
Jos Oude Vrielink
Borggravevijversstraat 40
3500 Hasselt, België
Mobiel: +32 499 71.79.91
Van: Alexandru Burcea @.>
Verzonden: dinsdag 23 mei 2023 11:35
Aan: SequentMicrosystems/16inpind-rpi @.>
CC: Josov @.>; Author @.>
Onderwerp: Re: [SequentMicrosystems/16inpind-rpi] node-red-contrib-sm-16inpind (Issue #2)
Hi,
You should poll the board by sending a message to the node.
My advice is to read all inputs with one node (select zero for the channel number) and check for the changing inputs on a function node.
—
Reply to this email directly, view it on GitHub https://github.com/SequentMicrosystems/16inpind-rpi/issues/2#issuecomment-1558910171 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AJ733TX6FUQNGTAKEF4IPETXHSACTANCNFSM6AAAAAAYLQODZ4 .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AJ733TTTXDAWLB34M6T7RJ3XHSACTA5CNFSM6AAAAAAYLQODZ6WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTS45MKNW.gif Message ID: @.*** @.***> >

The node can be modified to accommodate this; however, given our busy schedule, I cannot make any promises.
We will consider your suggestion in the future.
Best regards,
Alex.

Dear Alexandru,
I need to react promptly on limit switches and user buttons. Polling could cause trouble if I miss an event. It would make my system unreliable. Would it be so much work to adapt the Node and make it event driven? I volunteer for testing documenting etc.
Kind regards,
Met vriendelijke groeten,
Jos Oude Vrielink
Independent IT Consultant
Borggravevijversstraat 40
3500 Hasselt, België
Mobiel: +32 499 717991
Van: Alexandru Burcea @.>
Verzonden: dinsdag 23 mei 2023 12:09
Aan: SequentMicrosystems/16inpind-rpi @.>
CC: Josov @.>; Author @.>
Onderwerp: Re: [SequentMicrosystems/16inpind-rpi] node-red-contrib-sm-16inpind (Issue #2)
The node can be modified to accommodate this; however, given our busy schedule, I cannot make any promises.
We will consider your suggestion in the future.
Best regards,
Alex.
—
Reply to this email directly, view it on GitHub https://github.com/SequentMicrosystems/16inpind-rpi/issues/2#issuecomment-1558970832 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AJ733TUX6GCONCDQPEFKDODXHSECLANCNFSM6AAAAAAYLQODZ4 .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AJ733TTZVXC6RZNORTZFJOTXHSECLA5CNFSM6AAAAAAYLQODZ6WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTS45QA5A.gif Message ID: @.*** @.***> >

Dear Alexandru,
Thank you very much, I believe this is a good solution, no need to adapt the node.
I consider to use 3 or 4 boards each with 4 HV inputs and 4 relays. Will the same principle work using 4 boards as well? Of course, upon interrupt I will nee to read the inputs from all connected boards.
Regarding GPIO26 I read from the documentation this pin is used for signalling shut-down (for the HV 4-relay input output board). I do not read about using this pin as interrupt on input change.
This will be the configuration, pls let me know if you think I should do different:
Kind regards,
Met vriendelijke groeten,
Jos Oude Vrielink
Borggravevijversstraat 40
3500 Hasselt, België
Mobiel: +32 499 71.79.91
Van: Alexandru Burcea @.>
Verzonden: dinsdag 23 mei 2023 18:02
Aan: SequentMicrosystems/16inpind-rpi @.>
CC: Josov @.>; Author @.>
Onderwerp: Re: [SequentMicrosystems/16inpind-rpi] node-red-contrib-sm-16inpind (Issue #2)
Hi,
You can do your own interrupt driven implementation. The card uses Raspberry GPIO26 to signaling the on-change interrupt. So you can use the gpio node to catch the interrupt and the output of this node will feed the input of the 16relind node which reads the state of the inputs. The same as we intend to do inside the node.
Alex.
—
Reply to this email directly,  https://github.com/SequentMicrosystems/16inpind-rpi/issues/2#issuecomment-1559735216 view it on GitHub, or  https://github.com/notifications/unsubscribe-auth/AJ733TVRIE36CPD4NTDW6E3XHTNP5ANCNFSM6AAAAAAYLQODZ4 unsubscribe.
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AJ733TQRRNCZ2EWGLEMEKULXHTNP5A5CNFSM6AAAAAAYLQODZ6WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTS466V3A.gif Message ID: < @.> @.>

Hi,
Unfortunately the same principle will not work well with the 4-relays cards. There is a firmware bug on that cards so they will signaling the GPIO26 on the falling edge of the input, this means that you can use it in reverse logic  manner. The card will signaling when one input is deenergized so if you need to catch the "logical 1", you can not. On the other hand the 4-relays card has a lot more features, you can count the transitions and measure the frequency of an input signal.
I guess 16-inputs is more suitable for your application because you have to do a single read operation when the interrupt is raised. I must tell you that all our cards with interrupt use the same GPIO26 for the interrupt generation so you have to ask all the cards in the system to see which one generates the interrupt.
Alex.


Address post-merge review comments for grouped resources.

Description
Address post-merge review comments within #1384 .
Testing Performed

Added tests for CheckAccess

Looks like we need to add mock identity via authn.ContextWithIdentity() to the test suite to fix failures.

@dhaus67 Have you investigated failing e2e pg tests? Looks like failures occurred first on this branch and now they are failing


[SPARK-36805][BUILD][K8S] Upgrade kubernetes-client to 5.7.3

What changes were proposed in this pull request?
This PR aims to upgrade kubernetes-client from 5.6.0 to 5.7.3
Why are the changes needed?
This will bring the latest improvements and bug fixes.

https://github.com/fabric8io/kubernetes-client/releases/tag/v5.7.3
https://github.com/fabric8io/kubernetes-client/releases/tag/v5.7.2
https://github.com/fabric8io/kubernetes-client/releases/tag/v5.7.1
https://github.com/fabric8io/kubernetes-client/releases/tag/v5.7.0

Does this PR introduce any user-facing change?
No
How was this patch tested?
Pass the CIs.

Test build #143448 has started for PR 34047 at commit 00857bb.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47956/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47956/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/47956/

SparkR Image building failure is a known issue and will be recovered by the following PR.

https://github.com/apache/spark/pull/34048

The following packages have unmet dependencies:
 r-base-core : Depends: libicu63 (>= 63.1-1~) but it is not installable
               Depends: libreadline7 (>= 6.0) but it is not installable
E: Unable to correct problems, you have held broken packages.
The command '/bin/sh -c apt-get update &&   apt install -y gnupg &&   echo "deb http://cloud.r-project.org/bin/linux/debian buster-cran35/" >> /etc/apt/sources.list &&   apt-key adv --keyserver keyserver.ubuntu.com --recv-key 'E19F5F87128899B192B1A2C2AD5F960A256A04AF' &&   apt-get update &&   apt install -y -t buster-cran35 r-base r-base-dev &&   rm -rf /var/cache/apt/*' returned a non-zero code: 100
Failed to build SparkR Docker image, please refer to Docker build output for details.

Could you review this, @attilapiros ?

Test build #143448 has finished for PR 34047 at commit 00857bb.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/143448/

Thank you so much, @attilapiros .
Merged to master for Apache Spark 3.3.0.


Documentation for using a service principal with the AGIC Helm chart specifies using a deprecated Azure CLI option

The --sdk-auth option to az ad sp create-for-rbac is noted as deprecated.  Please document the minimal set of entries in a JSON map that can be base64 encoded to substitute for the armAuth.secretJSON value.

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

ID: d3925c0f-2f3a-a53e-d558-c00cca37e961
Version Independent ID: 1a49146e-07a4-bb12-0a5b-0d07590fbcad
Content: Create an ingress controller with an existing Application Gateway
Content Source: articles/application-gateway/ingress-controller-install-existing.md
Service: application-gateway
GitHub Login: @Caya
Microsoft Alias: caya

Thank you for your feedback! We have assigned this issue to the author to review further and take the next course of action.

Hi - I will update the article as I am able. I am closing this issue as duplicate because we have others saying the same thing. Thanks for bringing this up. #please-close


Add version command

A version command shows the WordPress version and optionally extra version information (DB revision, all the stuff in version.php)

I think this would make more sense as a subcommand of core:
wp core version
wp core version --extra

My idea was to be able to hook versions in the command.
Now thinking more of it, it makes more sense to have an info command (like phpinfo()), which can give you various information about the install: versions, paths, stats, caches, stuff like that.

Can you make this command a sub command of the core command?

Cherry-picked: 46446f4ddbfa185dce449a283980ef6d2f7479d5


Script only runs on 64bit system

I recently installed 32-bit version Windows 10 2004 when I ran your script it gave me an error that the system isn't supported.

Of course it runs on x64 systems only. What is the question?

Is there any way that I can run this on 32-bit system?

No. the x86 systems are obsolete. I haven't even PCs to test. If you can, update script to be able to run it on x86 OS.


Logging tweak - turn down the noise in dev

This turns down the constant noise from resque workers polling.  This will only log the "Sleeping for xx seconds" messages if VERBOSE or VVERBOSE are true.
/cc @mgbatchelor @GilUpstream

Are we currently using a fork of Resque? 😢

Are we currently using a fork of Resque? 😢

No, this is a new fork.  If you look at the source that is constantly filling the log in dev, though, there is not really an easy way to override or monkey patch that piece and still maintain DEBUG logging in dev.

Hm, this is based against master, but should really be based against 1.26.0.  I'll fix that up.

Oh, there's a way ... 😁
I think it would be possible to monkey-patch log_with_severity and have it do the normal thing generally, but:

Maybe (less likely): only output debug stuff if VERBOSE or VVERBOSE is set.  This probably squelches too much debug output, but not sure
Same, but tighten the condition so that we check either the message being sent, or check where caller() says we're being called from; and only conditionalize in those cases.

Oh, there's a way ...

heh. I realize there is always a way in Ruby.  Bug I think the monkeypatch + analyzing the message is worse than the approach here.

Is this something we can/will submit as a patch to be possibly accepted so that we won't have to long-term deal with a fork simply because of these annoying-as-heck log messages?
As an aside, it's kind of amazing that Resque uses VERBOSE and VVERBOSE instead of, say, a verbosity level.


Provide a more expressive way to replicate only a subset of components of an entity

For example what if a user only wants to replicate one component?

I cant really think of anything to implement this with a user facing api. Maybe implementing a certain trait for each component that returns a "do_replicate" bool for a given entity, but in practice this wouldnt work well either as the overhead would be huge

Another idea might be having markers / tags for each replicated (or non-replicated for that matter) component

@cBournhonesque can we close this? i think so cuz we have the exclusion marker

I wanted to be a handle the other case: If you only want to replicate 1 component out of 20, you have to add 19 DisableComponent components, which is not ideal


replace t.Fatal to t.Error

Fatal will halt the test function entirely, and subsequent test cases won't run, so that we could just find one potential bug.
When running unit test, we want to find as many bug as possible. It's a better choice to use Error and continue,  so that subsequent test cases could run and find more.
Usually, Fatal is used in cases where some internal error occurs so that test can not go on.
Signed-off-by: mqliang<EMAIL_ADDRESS>

@mqliang Would you mind to squash commit pls?

Agree with the concept, but not sure if we need to be going and changing these just to change them.
Is there a style-guide for writing tests?

@MHBauer No, there is no. We just use Fatal everywhere. But Error allows you to collect more info to fix issue on failure.

once it's squashed, LGTM :cat:

This does NOT LGTM. Failing fast is always better and, as you mention, avoids side effects. Moreover, these tests will be modified again to use Fatal as soon as someone opens a PR to port them to go-check and c.Assert.
I'd rather migrate this tests to go-check and leave the behavior consistent to the rest of the suites.

Usually, when one of test cases failed, we should use Error and continue, Fatal is used in some inevitable error case so that subsequent test cases CAN NOT run, such as failed when fake a client.
Just like complier:  find out as much error as possible, but when we fix those errors, start fix from the first one to avoid cascading errors.
I am glad to refactor the leaving test files(may separated into several parts) if this looks good to you.

I agree with @calavera - failing as soon as an error occurs is better to avoid side effects so I'd stick with Fatal

looks like we don't reach consensus on this; I see two maintainers that want this change, two that don't want this. Should this be closed, or are more maintainers needed to make a decision?

I favor using Fatal. Error is okay in cases where it's clear there are no side effects from the failure, but we shouldn't go out of our way to use it.

I'll go ahead and close this. Thanks so much @mqliang, I hope you understand :heart:

It doesn't matter.
In fact, I don't mean replace all Fatal to Error. For example, if we want write a unit test for function GetOdd() which will return us some odd numbers, I propose to write our unit test like this:
TestGetOdd(t *testing.T) {
	odds, err := GetOdd()
	if err != nil {
		// use Fatal, since the following test cases can not go on
		t.Fatalf("unexpetced err")
	}
	for odd := range odds {
		if odd % 2 != 1 {
			// use Errorf, to find more error cases
			t.Errorf("%d is not odd", odd)
		}
		.....
	}
}


Power monitoring exception

Happened while exploding box station. @chromiumboy

Thanks for the heads up, but I'm out of town unfortunately, won't be able to get to it for several weeks


Watcher for errors computed property does not work to be able to $emit if the input is valid or not

Versions:

VueJs:"^2.5.16"
Vee-Validate: "^2.1.0-beta.1"

Description:
I am trying to implement a custom input component that can be reused with a variety of props. The problem arises when i want to emit if the input is valid or not. The problem is, from what i can understand, that the errors computed property is refreshed in next tick. For that reason, when the @input or @blur event are emitted is still populated with the old validations and if it is the first event then errors property is not populated at all.
The best solution would be to watch the errors computed property and emit if the input is valid or not when needed but it does not trigger. The fields computed property can be watched but it does not update if it is not actually used somewhere in the component.
Can i get i little help whit this?
This is a snippet of the implementation
<template>
...
 <input
          class="form-control"
          :value="value"
          :placeholder="placeholder"
          @input="onEvent"
          @blur="onEvent"
          v-validate="validations"
          :type="type"
          :disabled="disabled"
          :name="name"
          :data-vv-as="alias">
...
</template>

<script>
...
    watch: {
      errors: function (errorsNew) {
        console.log('errors watch',errorsNew)
      },
      fields: function (fieldsNew) {
        console.log('fields watch',fieldsNew)
      },
    },
...
</script>

Steps To Reproduce:
I added a working simplified version for clarification
https://codesandbox.io/s/4q8vonzjp9 #

Use a deep watcher, the errors object do not change, but it's inner items
property does.
On Mon, 18 Jun 2018, 14:39 Vlad Craciun<EMAIL_ADDRESS>wrote:

Versions:

VueJs:"^2.5.16"
Vee-Validate: "^2.1.0-beta.1"

Description:
I am trying to implement a custom input component that can be reused with
a variety of props. The problem arises when i want to emit if the input is
valid or not. The problem is, from what i can understand, that the errors
computed property is refreshed in next tick. For that reason, when the
@input https://github.com/input or @blur https://github.com/blur
event are emitted is still populated with the old validations and if it is
the first event then errors property is not populated at all.
The best solution would be to watch the errors computed property and emit
if the input is valid or not when needed but it does not trigger. The
fields computed property can be watched but it does not update if it is not
actually used somewhere in the component.
Can i get i little help whit this?
This is a snippet of the implementation

Steps To Reproduce:
I added a working simplified version for clarification
https://codesandbox.io/s/4q8vonzjp9 #
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/baianat/vee-validate/issues/1409, or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-KStK9Vt1ggpRqdlR6Ww4mnN0S0ibpks5t95-NgaJpZM4UrrDo
.

I resolved the issue by using a computed property in the custom input component. The computed property is used as a flag for displaying the validation errors and to emit if the errors computed property is populated.
    computed: {
      hasError () {
        if (this.errors.items.length) {
          this.$emit('has-error', true)
          return true
        } else {
          this.$emit('has-error', false)
          return false
        }
      }
    },

I don't recommend using computed property for watching purposes, use a deep
watcher as that is what it's designed for.
But hey, if it works for you then fine.
On Fri, 22 Jun 2018, 11:47 Vlad Craciun<EMAIL_ADDRESS>wrote:

I resolved the issue by using a computed property in the custom input
component. The computed property is used as a flag for displaying the
validation errors and to emit if the errors computed property is populated.
computed: {
  hasError () {
    if (this.errors.items.length) {
      this.$emit('has-error', true)
      return true
    } else {
      this.$emit('has-error', false)
      return false
    }
  }
},

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/baianat/vee-validate/issues/1409#issuecomment-399387583,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-KSnKmWyIHeFKPzVgF7rBp14zPZHExks5t_L0ogaJpZM4UrrDo
.

I updated your example with the solution I proposed, cheers.
https://codesandbox.io/s/k95nq798ro

Thank you. Very useful answer.


Emulated Hue devices not found by new 2nd Gen Amazon Echo

Make sure you are running the latest version of Home Assistant before reporting an issue.
You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:
Home Assistant release (hass --version):
0.56.2
Python release (python3 --version):
3.6.3
Component/platform:
Emulated Hue
Description of problem:
The new 2nd generation Amazon Echo is not detecting devices exposed through the Emulated Hue component.
Expected:
I expect the 2nd generation Amazon Echo to detect the same devices exposed through the Emulated Hue component as are detected by the 1st generation Amazon Echo.
Problem-relevant configuration.yaml entries and steps to reproduce:
emulated_hue:
  host_ip: <IP_ADDRESS>
  listen_port: 8300

Adding New Devices

Add Emulated Hue component to configuration.yaml
Start Home Assistant
Forget/remove any devices that Alexa may already have in the Smart Home list
In the Alexa app (iOS, or Android): Menu -> Smart Home -> Add Device
The Alexa app will say "No new devices found."

Controlling a Device Added by a Gen 1 Echo

Add Emulated Hue component to configuration.yaml
Start Home Assistant
In the Alexa app (iOS, or Android): Menu -> Smart Home -> Select a device from the list
The Alexa app will display a banner at the top of the screen that says "There was a problem.
In the Alexa app, tap on the icon to toggle the device's state
The Alexa app will update the banner to say "Server is unresponsive.

Traceback (if applicable):
No errors displayed in logs

Additional info:
I have tried a number of  Emulated Hue configurations, including just "emulated_hue:"
I've found the following to be true both with my full HA configuration and on a fresh install of HA with only Emulated Hue and Lights in the configuration.
In the logs, I noticed:

HA sends a Gen 1 Echo the description.xml twice.
HA sends a Gen 2 Echo the description.xml six times.

Switching between devices, I found:

Gen 1 Echos find all of my devices exposed through emulated hue.
Gen 2 Echos find none of my devices exposed through emulated hue.
Gen 2 Echos cannot control devices found by a Gen 1 Echo.

Same here.
I just got my new Gen 2 Echo. Its not discovering any devices in HA.
Here is logs related to emulated_hue:

Nov 04 10:16:26 raspberrypi3 hass[16463]: 2017-11-04 10:16:26 INFO (MainThread) [homeassistant.loader] Loaded emulated_hue from homeassistant.components.emulated_hue
Nov 04 10:16:26 raspberrypi3 hass[16463]: 2017-11-04 10:16:26 INFO (MainThread) [homeassistant.loader] Loaded emulated_hue from homeassistant.components.emulated_hue
Nov 04 10:16:38 raspberrypi3 hass[16463]: 2017-11-04 10:16:38 INFO (MainThread) [homeassistant.setup] Setting up emulated_hue
Nov 04 10:16:38 raspberrypi3 hass[16463]: 2017-11-04 10:16:38 WARNING (Thread-20) [homeassistant.components.emulated_hue] Listen IP address not specified, auto-detected address is <IP_ADDRESS>
Nov 04 10:16:38 raspberrypi3 hass[16463]: 2017-11-04 10:16:38 WARNING (Thread-20) [homeassistant.components.emulated_hue] When targeting Google Home, listening port has to be port 80
Nov 04 10:16:38 raspberrypi3 hass[16463]: 2017-11-04 10:16:38 INFO (MainThread) [homeassistant.setup] Setup of domain emulated_hue took 0.0 seconds.
Nov 04 10:16:38 raspberrypi3 hass[16463]: 2017-11-04 10:16:38 INFO (MainThread) [homeassistant.core] Bus:Handling <Event component_loaded[L]: component=emulated_hue>
Nov 04 10:17:19 raspberrypi3 hass[16463]: 2017-11-04 10:17:19 INFO (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=switch.relay_2_1, old_state=None, new_state=<state switch.relay_2_1=off; assumed_state=False, emulated_hue_name=gate light, description=, device=/dev/ttyUSB0, child_id=1, V_LIGHT=off, battery_level=0, node_id=2, friendly_name=Gate Light, emulated_hue_hidden=False @ 2017-11-04T10:17:19.622809+05:30>>
Nov 04 10:17:19 raspberrypi3 hass[16463]: 2017-11-04 10:17:19 INFO (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=switch.relay_2_1, old_state=None, new_state=<state switch.relay_2_1=off; assumed_state=False, emulated_hue_name=gate light, description=, device=/dev/ttyUSB0, child_id=1, V_LIGHT=off, battery_level=0, node_id=2, friendly_name=Gate Light, emulated_hue_hidden=False @ 2017-11-04T10:17:19.622809+05:30>>

Nov 04 10:18:12 raspberrypi3 hass[16463]: 2017-11-04 10:18:12 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:12 raspberrypi3 hass[16463]: 2017-11-04 10:18:12 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:12 raspberrypi3 hass[16463]: 2017-11-04 10:18:12 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:12 raspberrypi3 hass[16463]: 2017-11-04 10:18:12 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:13 raspberrypi3 hass[16463]: 2017-11-04 10:18:13 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:13 raspberrypi3 hass[16463]: 2017-11-04 10:18:13 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:14 raspberrypi3 hass[16463]: 2017-11-04 10:18:14 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)
Nov 04 10:18:14 raspberrypi3 hass[16463]: 2017-11-04 10:18:14 INFO (MainThread) [homeassistant.components.http] Serving /description.xml to <IP_ADDRESS> (auth: False)

http://ip:8300/description.xml
<root xmlns="urn:schemas-upnp-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<URLBase>http://<IP_ADDRESS>:8300/</URLBase>
<device>
<deviceType>urn:schemas-upnp-org:device:Basic:1</deviceType>
<friendlyName>HASS Bridge (<IP_ADDRESS>)</friendlyName>
<manufacturer>Royal Philips Electronics</manufacturer>
<manufacturerURL>http://www.philips.com</manufacturerURL>
<modelDescription>Philips hue Personal Wireless Lighting</modelDescription>
<modelName>Philips hue bridge 2015</modelName>
<modelNumber>BSB002</modelNumber>
<modelURL>http://www.meethue.com</modelURL>
<serialNumber>1234</serialNumber>
<UDN>uuid:2f402f80-da50-11e1-9b23-001788255acc</UDN>
</device>
</root>

Same error here!
description.xml and api/pi/lights are available, but none of my Echos can find any device.

Same issue here. I deleted emulated_hue_ids.json file and restarted HA. But still same issue.
When I browse to http://<IP_ADDRESS>:8300/api/pi/lights it displays all entities. Earlier it used to display 10 to 15 entities for which I added 'emulated_hue_hidden: false'
Configuration file:
emulated_hue a:
  type: alexa
  expose_by_default: false
  listen_port: 8300
  host_ip: <IP_ADDRESS>
  exposed_domains:
    - light
    - switch
    - input_boolean

I browsed to Alexa web interface and did forget all devices (I was getting 'Server is Unresponsive' error for all of them) and tried to discover again but it didn't find emulated hue.
https://alexa.amazon.com/spa/index.html#appliances

I resolved this issue by changing the configuration to like below. I got this tip from @arsaboo
emulated_hue:
  type: alexa
  expose_by_default: false

After that, restarted HA and I got the entities that have 'emulated_hue_hidden: false' tag.
http://<IP_ADDRESS>:8300/api/pi/lights
Log file:
2017-11-05 10:21:19 WARNING (SyncWorker_12) [homeassistant.components.emulated_hue] Alexa type is deprecated and will be removed in a future version
2017-11-05 10:21:19 WARNING (SyncWorker_12) [homeassistant.components.emulated_hue] Listen IP address not specified, auto-detected address is <IP_ADDRESS>

It didn't work for me :(

At last got it working :)
emulated_hue:
expose_by_default: false
host_ip: <IP_ADDRESS>
listen_port: 80
Set the listen port to 80 and gave the permission to python for port access.
https://community.home-assistant.io/t/emulated-hue-instruction/11072/9
sudo setcap ‘cap_net_bind_service=+ep’ /usr/bin/python3.5
Restart HA and perform discover devices from Alexa.

I changed port to 80 but still not happened and I can not enable skill "Philips Hue" on Alexa. So have any way to control my Home-assistant by Alexa

Same error here!
description.xml and api/pi/lights are available, but my Echo cant find any device.
Tried all above ways, but no luck.
I Wonder if there is any way of debugging the issue?

Amazon Echo 2nd gen + listen_port: 80 works for me like a charm. 8300 port was not working, devices were not discovered.

I have the same problem.
Can see the description.xml and api/pi/lights just fine but alexa can't find anything :(

I can't seem to get port 80 working on hassio - no sudo access :( Any ideas how to solve this?
Alternatively, are there any other ports new Echo devices would scan?

It doesn't work to change to 80 port.  Anyone who has successfully found device can post a full configuration.yaml?

hareeshmu, can you please specify how you gave the permission to python for port access?
When I use port 8300 I can see the description.xml and api/pi/lights file. Once I enter listen_port: 80 in the configuration.yaml, I can't see those files anymore.

sudo setcap ‘cap_net_bind_service=+ep’ /usr/bin/python3.5

Same issue and same symptoms, Echo 2nd gen.
After changing to port 80, I did get one (out of many) attempts to work and discovery of devices worked; however, operating those devices was odd at best (I could switch-on but not switch off). This is with HA 0.73.
Also I am using port 80 for other purposes so this WA doesn't really cut it. Still hoping to find some other way to address


[Feature request] Possibility to assign other key combinations (allow to use ctrl as super)

Great extension to Obsidian!
I really like the CSS for Outliner!
I have a request  for the future - I didn't install the addon yet but I saw the Pull request discussion on the Obsidian repository:
You use the combinations:
Cmd-ArrowUp, Cmd-ArrowDown - Expand / collapse.
Cmd-Shift-ArrowUp, Cmd-Shift-ArrowDown, - Move item and subitems.

I am on Linux (PopOS) and those combinations are used by my window manager to move between windows and workspaces
On the other hand, I have a Ctrl key that is available for those combinations.
I am wondering how many users may have similar problems where the windows/cmd key combinations are used by their window manager (this is especially popular for users of tiling managers)
If the keys will not be hardcoded then there will be no problem, but even if not  I wonder how hard would be to implement the possibility of allowing the user to replace the role of the super(cmd) key by ctrl from the level of settings.
EDIT: ok, CodeMirror ignores the ctrl, so this may be problematic :P
https://github.com/manogna4/obsidian-koncham-undefault-hotkeys

By the way, in Windows, Ctrl+Shift+Uparrow is to select one line.

Thank you for your comments! Yes, I forgot about other OS :) Will add ctrl support asap.

@danieltomasz @Quorafind Could you test ctrl support on your OSes? I have only MacOS right not.
https://github.com/vslinko/obsidian-outliner/releases/tag/1.0.3-pre1

@vslinko It works on Win10 now. Thanks for your hard job.

Should be fixed in https://github.com/vslinko/obsidian-outliner/releases/tag/1.0.3
Thank you all for contribution!

Hi @vslinko  thanks for your hard work! The  ctrl works for me!
You may want to document this behaviour in the readme later.

@danieltomasz Added to README :)

@vslinko  I think your plugin will be really popular, you may want to add in the future issues templates for [feature request] and [bug], you may want to look into it as example https://github.com/Braweria/Spectrum/tree/main/.github/ISSUE_TEMPLATE , it may save your time in the long run

@danieltomasz Thank you! Copied those templates :)


Update our HLSPlayer.swf with latest FlasHLS (v<IP_ADDRESS>)

maybe refs #631

closed by b798074734995339cddd99a4f0fe28b6c91f0c23


Suggestion: make it possible to review any bunch of changes without PR

Hello everyone,
I'm investigating if we at my current company can use your gitea for storing repositories. It's really nice software and have a lot of feauters but I want to ask you for another one. Any workaround that can be used without performing any changes will be appreciated!
tldr; My problem is that we want to have possibility to review any bunch of changes (actually we want to review difference between two branches - see below for further explanation).
Currently we are using modified Gitflow Workflow (you can find some explanation here https://www.atlassian.com/git/tutorials/comparing-workflows) with difference that we have no develop branch. Instead at some moment of time we create new branch which is called "release_{date & time}" and merge some (not all and this is important) ready to merge issues into it. So for developer it looks like so: he has master branch -> he create his own branch from it -> he make some code and commit -> he has some review of his code from other member of developers team (prob code is not okay and than ticket goes back to the first developer) -> than he has some testing (prob it is not okay and ticket goes back to development stage) -> than we create release branch and merge ticket branch there -> than release branch is merge into master after deployment to production is completed.
So I'm trying to make code review using your tool and I can't find any corresponding option for this. The only way to comment some code I can find is to create PR but I don't want to do this since in my company we are not merging issues in master branch and I can't find any way to solve this problem by my own.
Thank you in advance!

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

I think you requirement will be resolved by #733. But that PR is not completed and maybe merged at v1.2 .

since in my company we are not merging issues in master branch

Can you not make a release-branch to make PR to?

make code review using your tool

We don't have any code review options yet. We are currently investigating git-appraise 🙂

@lunny thanks. This PR looks promising!
@bkcsoft I thought that there are some code review options in PR view but I didn't check it since we're not using pull requests now. Actually we compare each branch with master but than every issue branch can be merged into different release branches. This branching model allows us to deliver features as fast as they get ready. So theoretically we can create pull request to master for each branch and make some code review/testing in prs view but this scheme seems not so obvious and good for me.
Anyway thanks for your replies. I will wait for gut-appraise integration!


Use CMake-built objects for encoder.

Previously we built encoder objects directly in build.rs with cc,
but now build them with CMake just like the common and decoder
objects. This also removes the duplicate aom_build/*.h files.

@rzumer might still need that for the rdo_ml branch though.

We can always bring libntr.a back. I don't think the ml stuff needs the aom_config.h etc. If it does we can bring those back too.


fix(layout): ensure left <= right

The recent refactor (#405) missed the positive width constraint:
https://github.com/ratatui-org/ratatui/blob/ea48af1c9abac7012e3bf79e78c6179f889a6321/src/layout.rs#L380-L381
Addresses the bug noticed in https://github.com/ratatui-org/ratatui/pull/404#issuecomment-1681891809
ping @hasezoey - I took a quick look and this may change a few tests on #404. It might not yet be perfect and it may change again if https://github.com/ratatui-org/ratatui/pull/408 is merged on top of this.

can confirm that this change gives the behavior of before #405 in #404 again (behavior mentioned in https://github.com/ratatui-org/ratatui/pull/404#issuecomment-1681891809)


Getting "ReferenceError: document is not defined" error when imported in nuxt app.ts

I am using below code in nuxt app.ts file and when compiling i am getting "ReferenceError: document is not defined" error
const Vue = require('Vue');
const ShortKey = require('vue-shortkey');
Vue.use(ShortKey);
Can any one help me in loading this component without errors.

It most likely mean that the script is being run serverside. Make sure you have mode: "client" added in your nuxt.config.ts
plugins: [
    { src<EMAIL_ADDRESS>mode: "client" },
  ],


opt: log instrument & into_grpc_server_addr

Codecov Report
Patch and project coverage have no change.

Comparison is base (bdf13ab) 10.16% compared to head (3d14632) 10.17%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #136   +/-   ##
=======================================
  Coverage   10.16%   10.17%
=======================================
  Files          53       53
  Lines        2341     2340    -1
=======================================
  Hits          238      238
+ Misses       2103     2102    -1

Impacted Files
Coverage Δ

src/common/remote/grpc/grpc_client.rs
0.00% <0.00%> (ø)

src/common/remote/grpc/mod.rs
0.00% <0.00%> (ø)

src/config/mod.rs
0.00% <0.00%> (ø)

src/config/worker.rs
0.00% <0.00%> (ø)

src/naming/mod.rs
0.00% <0.00%> (ø)

src/naming/updater/mod.rs
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Notification is not shown when using plugin as CDN

When using a plugin as CDN or simply built as one file in HTML (manually), notifications are not shown. Due to the webpack bundle event 'add' is thrown but no one is listening, seems to be either a configuration or build issue. Adding a simple example below.
To Reproduce
Steps to reproduce the behavior:

Perform a build
Add a simple HTML  with any element (example below)
Add some logic to show a notification (example below)
Observe that nothing happens

Code

	<meta charset="UTF-8">
	<meta name="viewport" content="width=1024, initial-scale=1.0">
	<title>Test</title>

Click me

Expected behavior
Notification should be shown
ENV

OS: Mac/Windows
Browser: ALL
Version: 1.3.16

Additional context
Again, this might be a configuration issue. Any comments appreciated.

You need to put  in your template. please take a look into the documentation..

I did, it's automatically used when creating a bug, tho there is no section for code examples, I've changed template a bit

Oh sorry, Github didn't render "<notifications/>" word because it thought it is a part of markdown:DDD.


'executor://mstestadapter/v2': Could not load file or assembly Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions

Describe the bug
We have a Unit Test project targeting net7.0 and net48 TFMs.
Updating packages from 2.2.10 to 3.0.0 works for net7.0 and throws an exception for net48 TFM.
Steps To Reproduce
Provide the steps to reproduce the behavior:

Clone https://github.com/SonarSource/sonar-dotnet
Open https://github.com/SonarSource/sonar-dotnet/blob/master/analyzers/SonarAnalyzer.sln
Update https://github.com/SonarSource/sonar-dotnet/blob/master/analyzers/tests/SonarAnalyzer.UnitTest/SonarAnalyzer.UnitTest.csproj to bump versions like this

    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
    <PackageReference Include="MSTest.TestAdapter" Version="3.0.0" />
    <PackageReference Include="MSTest.TestFramework" Version="3.0.0" />

Rebuild to discover UTs
Pick any test class via Test Explorer, for example AnalysisConfigReaderTest and run all UTs

Expected behavior
Tests should run and succeed for net7.0 and net48 (except 3 UTs from EnumerableExtensionsTest - not relevant, easy to fix on our side).
Actual behavior
Tests run for net7.0 and succeed.
Tests are not executed for net48 TFM. Error is present in output window
An exception occurred while invoking executor 'executor://mstestadapter/v2': Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Stack trace:
   at Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.TestDeployment.GetDeploymentInformation(String source)
   at Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.Execution.TestExecutionManager.ExecuteTestsInSource(IEnumerable`1 tests, IRunContext runContext, IFrameworkHandle frameworkHandle, String source, Boolean isDeploymentDone)
   at Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.Execution.TestExecutionManager.ExecuteTests(IEnumerable`1 tests, IRunContext runContext, IFrameworkHandle frameworkHandle, Boolean isDeploymentDone)
   at Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.Execution.TestExecutionManager.RunTests(IEnumerable`1 tests, IRunContext runContext, IFrameworkHandle frameworkHandle, TestRunCancellationToken runCancellationToken)
   at Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.MSTestExecutor.RunTests(IEnumerable`1 tests, IRunContext runContext, IFrameworkHandle frameworkHandle)
   at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Execution.RunTestsWithTests.InvokeExecutor(LazyExtension`2 executor, Tuple`2 executorUri, RunContext runContext, IFrameworkHandle frameworkHandle)
   at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Execution.BaseRunTests.<>c__DisplayClass46_0.<RunTestInternalWithExecutors>b__0()
   at Microsoft.VisualStudio.TestPlatform.PlatformAbstractions.PlatformThread.<>c__DisplayClass0_0.<Run>b__0()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.VisualStudio.TestPlatform.PlatformAbstractions.PlatformThread.Run(Action action, PlatformApartmentState apartmentState, Boolean waitForCompletion)
   at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Execution.BaseRunTests.TryToRunInStaThread(Action action, Boolean waitForCompletion)
   at Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.Execution.BaseRunTests.RunTestInternalWithExecutors(IEnumerable`1 executorUriExtensionMap, Int64 totalTests)

Hi @pavel-mikula-sonarsource,
Thanks for raising this issue. It seems likely that the error is a duplicate of #1437.
Something changed in the order of resolution, leading to some errors with appdomain. As suggested in the linked ticket, you can either disable app domains as a workaround or rollback to previous version waiting for the 3.0.1 fix (should be there soon).

Perfect! Thank you for your quick response.
We'll wait for the next release.

If I recall correctly there is no strong need for the app domains in sonar analyzers. Disabling appdomains would also speed up the test discovery and execution (you may want to test it :)).


[feat] Add drift correction area selection to ui

Hello @patrickcleeve2! Thanks for opening this PR.


Wrong media query order

Hey! First of all, thank you again for this amazing library! :smile:
I have a weird problem. Take a look at this example:
<Button m={[1, null, 3]} p={[1, 2, 3]}>
  Test1
</Button>

This results in:
@media screen and (min-width: 40em) {
    .gtxxcJ {
        padding: 8px;
    }
}

@media screen and (min-width: 52em) {
    .gtxxcJ {
        margin: 16px;
        padding: 16px;
    }
}

.gtxxcJ {
    margin: 4px;
    padding: 4px;
}

Which is wrong, as the lower media query is overriding the higher one (due to order in css).
Reproduction: https://codesandbox.io/embed/styled-system-media-query-problem-qbhnd
Version<EMAIL_ADDRESS>This also happens in 5.x, but behaves a little bit differently (you can check it by changing the version in codesandbox).

Thanks! This appears to be working in Chrome (at least on my end) and inspecting the injected CSS looks like styled-components is sorting the values differently than you have above. Where did you pull that CSS block from, and could you list out relevant versions of styled-components, Emotion, etc.?

I can also confirm this issue, which more precisely seems to happen when a prop using a larger breakpoint is listed before another prop using a smaller breakpoint. For instance, my similar usage:
Similar usage
<Box
  paddingTop={{ zero: 3, medium: 120 }}
  paddingBottom={{ zero: 220, tiny: 400, medium: 230 }}

  etc...

CSS Output
(from copy/pasting CSS code directly from the injected style tag in the <head>:)
.jYZJIX {
  ...a lot of other styles
  padding-top: 20px;
  padding-bottom: 220px;
}

@media screen and (min-width:48em) {
  .jYZJIX {
    padding-top: 120px;
    padding-bottom: 230px;
  }
}

@media screen and (min-width:20em) {
  .jYZJIX {
    padding-bottom: 400px;
  }
}

My testing environment
Mac - Chrome - version 75.0.3770.142
styled-system - version 5.0.5
styled-components - version 4.3.2
Theory
The merge function in the @styled-system/core/src/index.js file does not re-order media queries based on smallest to largest, but rather maintains the order in which they are applied via props. I was able to log out Object.keys(styles) inside the createParser function, which shows that the media queries are ordered based on the order of the original component props.
Example:
[
  "paddingTop",
  "@media screen and (min-width: 48em)",
  "paddingRight",
  "paddingBottom",
  "@media screen and (min-width: 20em)"
]

So, in my example, since paddingTop is listed first, both it's raw paddingTop value and the corresponding @media screen and (min-width: 48em) media query value are added to the styles Object. Then, later on, paddingBottom is added with its raw value and corresponding media query, which happens to be smaller. This smaller media query value being added after the larger value carries on through into styled-components and renders the css in an unexpected order, thus causing the issue.
I am starting to work through an ordering function that ties into the merge function, but am wary since I have yet to account for all use-cases. My initial plan was to simply sort the resultant styles object by key name, forcing smaller media query values to alphabetize above larger. I have yet to test the various scenarios, but wanted to mention the idea to see if it helped.

I'm also experiencing a similar issue
<Box
display={['flex', 'flex', 'none']}
width={[0.2, null, 1]}
/>

returns something else than
<Box
width={[0.2, null, 1]}
display={['flex', 'flex', 'none']}
/>

in the latter the display is still flex, even on the latest breakpoint
styled-components : 4.3.2
styled-system: 5.0.16

I'm still experiencing this on 5.0.21.


Question with hooks

if i wanted to hook something using a sig instead of VTable Index how would I do so?

just pass a pointer into .Create() function in first argument


Add upgrade steps for linking pre-existing users to web console users

Adds an additional step to the upgrade process.

@beckettsean, here's what I put together. The new user structure can be a little confusing. Let me know if anything doesn't make sense.

@rkuchan looks good to me, thanks!

@rkuchan I assume this will merge today and go live tonight?

Thanks, @beckettsean! Found WIFI again :).


Import Site Extraction code

As a PWS customer I want some prototype site extraction code in IMPROVER so that I can evaluate site Level 3 data.
Acceptance criteria:

Port site-specific extraction code by Ben Ayliffe
Unit tests
CLI Acceptance tests (Ben F will help)

I am uploading the spotdata routines as they stand. Not complete in any way, but independently functional. Better integration with the rest of improver will come when there are common means for loading diagnostic data, ancillary data etc.
Unit tests exist for the priniple routines of neighbour finding and data extractions. There will be more to follow, but again, there is probably enough code in these two routines to look at for now.
I've included a command line interface for the whole spotdata process in the framework.py. This can be factored out into a standalone CLI.
Run command:
python framework.py <config_name>--start_date 20170327 --start_time 0 --length 10
PYTHONPATH
If using the pickle file, this needs to point to a component of the existing bestdata suite (see me for details).
Command line options:
<config_name> = short_test or pws_default (the latter produces many more diagnostics).
--start_date = date available within diagnostic data at which to start the forecast (unset defaults to today).
--start_time = 24hr clock time at which to start the forecast. (unset defaults to the most recent 6 hour increment),
--length = length in hours of forecast period (unset defaults to 144).
--latitudes = list of latitudes for spotdata sites if not using the pickle file
--longitudes = list of longitudes for spotdata sites if not using the pickle file
--altitudes = list of altitudes for spotdata sites if not using the pickle file (defaults to 0 if unset).
--site_ids = list of site_ids for spotdata sites if not using the pickle file (defaults to order index if unset)
Needed environment variables:
export ANCILLARY_PATH=<path to ancillary files, orography, land mask>
export SITE_PATH= if this is in use.
export DIAGNOSTIC_FILE_PATH= (above chunk designated directories).

Ooops. Pressed the wrong button. Sorry

Can we add a list of how this has been split down into separate parts and tick off which ones have been done? And make sure any pull requests are linked on this issue?

@bayliffe If you could document the follow-on issues that will be required that would be great.

Done, with a follow up ticket #217 created to cover future work to integrate with suite.


Use explicitly deleted functions to make types non-copyable

Note (FMT_GCC_VERSION >= 404 && __cplusplus >= 201103L) means (FMT_GCC_VERSION >= 407 && __cplusplus >= 201103L) actually because of the gcc bug. CMake checks are suggested.
I'll create another PR after this gets merged. As for nullptr, I think it's acceptable as a monkey patch. Such things have been done by libc++.

Thanks for another great PR. I wouldn't worry too much about older versions of GCC as it is covered b
by the fallback definition of FMT_DISALLOW_COPY_AND_ASSIGN:
# define FMT_DISALLOW_COPY_AND_ASSIGN(TypeName) \
    TypeName(const TypeName&); \
    TypeName& operator=(const TypeName&)

As for the monkey patch, if I understand correctly this would mean adding another required header to the library which I'd rather avoid.


[#1501] Fix SubselectFetchTest

fixes #1502

Follows ORM's SubselectFetchTest.testSubselectFetchHql(...)
initialization on a collection is forced via a call to a collections size()

ReactiveEntityResultInitializer was extending ReactiveAbstractEntityInitializer but ReactiveAbstractEntityInitializer was not extending EntityResultInitializer (was extending AbstractEntityInitiailzer)
Replaced the extended class of  ReactiveAbstractEntityInitializer with  EntityResultInitializer so the proper methods were called during the loading of associated collection

Note that this change/fix did not fix #1501.  BatchFetchTest testQuery() and testBatchLoad() are failing

ORM's 6.2 version of SubselectFetch contains a check on EntityResultInitializer which explains why my fix works.
In ORM 6.3, they've cleaned up SubselectFetch and that check is gone.
So I can merge my commit if we need to release another HR version off of 6.2, or push this issue to our 6.3 version?

We cannot merge this commit.
We could avoid extending ReactiveAbstractEntityInitializer and convert it to a delegator similar to what we do in ReactiveSingleTableEntityPersister

k... I'll check that out. thx

Note that this issue was solved by a change in Hibernate ORM.
From this PR we only need the commit that re-enable the test after the next Hibernate ORM upgrade.

@blafond I've just tested this with 6.3 and it doesn't seem to work. Could you double check?
I've updated the 2.1 branch to include 6.3.0.Final already

sure

Superseded by https://github.com/hibernate/hibernate-reactive/pull/1746


Ansible script

Hi Alexander,
for my installation I created an ansible script. Are you interested in this? Then I commit to my branch and send a PR.
Let me know.
LG, Dieter

Hi Dieter,
yeah, why not :). It might help people. Please feel free to commit it.
Best,
Alex

Ready for a PR. Please handle the already existing PR first.

I rededicated PR #7 for the Ansible script.