[Run][Plugin Manager] Plugin management section (enable / disable, ...)

We have different plugins for PowerToys Run and there are several issue where people asking for new plugins. Also we have no concept of integrating the settings for some plugins.
Here are my ideas with some additional descriptions. Please note that the mock ups are no real xaml windows. The are made with Word and Paint.
The back arrow on the sub pages is for navigating back to the parent page.
While giving the user the ability to disable plugins, they can define which types of results they wan't to see in the result list.
CRUTKAS addition from #6770
For PT Run, we need a way to manage plugins

enable / disable
add additional weight multiplier
set action keyword
Key shortcut to autolaunch directly like an action keyword

This should be dynamically loaded as well so when new plugins are added in, or a 3rd party plugin is there, it continues to work.
HTCFREEK added 2020-09-30

Maybe it is possible to define the order of results by sorting the plugins. This means if I order the WindowWalker plugin above the Program plugin, the open Windows will be shown first in the results.

Images (from HTCFREEK)
Plugin section on main page
Maybe we can use a sub item in navigation view fo access the plugin management page.

If no plugins are enabled the section looks like this.
Sub page with plugin list

The default plugins which are installed with PT Run are non-removable!

If all plugins are disabled you will see this message.
Sub page where the user can manage a plugin

If you'd like to see this feature implemented, add a 👍 reaction to this post.

If we have many plugins it would be interesting to have a search field between page title and plugin list.

@htcfreek. I really like the concepts and how it reflects how Windows 10 Settings does these things!
It does introduce some complexity with multiple views etc. with a lot of functionality that might not be there in a first version. I wonder if something like this would suffice for a quick v1:

Basically listing all plug-ins that come with PT Run out-of-the-box with the possibility to turn them on or off with a switch?

@crutkas  is Plug-in management on the roadmap for V1? Or a V2 activity?

I think for the first step (v1) it's okay if only enable/disable works.
The other things need more work in fronted and backend. So I think we won't get it in for v1.

I think it is something we'd like to do but not on roadmap.  I feel like more and more we need it

namely around the web search stuff

How about just a UI scaler? It seems pretty big for me. I'd like to be able to 50% size it to get more search results on-screen

How about just a UI scaler? It seems pretty big for me. I'd like to be able to 50% size it to get more search results on-screen

These are design and functionality ideas. They are realized as images with word and image software. - So the proportions not final and maybe a bit incorrect.

This would (eventually) provide a UI for adjusting the keyboard filter shortcuts - which is one big thing my pr #6129 is missing.

This would (eventually) provide a UI for adjusting the keyboard filter shortcuts - which is one big thing my pr #6129 is missing.

Yes. I have missed this setting in my concept images.

This will not be done in 0.29.

Is this planned for 0.31?
Since is a big work, would be nice to be able to enable/disable the plugins from settings as a first version.

@davidegiacometti
the core team doesn't have bandwidth for this in 0.31 or 0.33.
We also need some specification for this work item.
Community contributions are welcomed.

Is this planned for 0.31?
Since is a big work, would be nice to be able to enable/disable the plugins from settings as a first version.

First we need a complete spec. I think this os the first and most important work item.
If you are interested in creating one feel free to work on this and create a PR.

Of course we need better specification for this and priorities.
This is from a small working POC I made this afternoon.
I have some concerns:

What do we want to save in PT Settings for the plugins? In the POC I am saving plugin names
Save button for restart Launcher or reload plugins at runtime? The POC require manual restart (disable/re-enable)

@davidegiacometti Awesome :)! If we can do without a save button (amd save + update Run at runtime) that would be nice.. but not a bid deal :).

Of course we need better specification for this and priorities.
This is from a small working POC I made this afternoon.
I have some concerns:

What do we want to save in PT Settings for the plugins? In the POC I am saving plugin names but there will be also settings
Save button for restart Launcher or reload plugins at runtime? The POC require manual restart (disable/re-enable)

Great work.

(as a current Wox user), I feel strongly that there should be a visual delineation between first party (pre-installed and official add-on) and third-party (community) plugins especially as it applies to support.
The Extensions manager in Edge does this well, maybe some design can be pulled from that? (edge://extensions/)

Also some plugins have individual settings so that would need to be accounted for in the design. I was unable to find another example in the settings app that adds this level, but i would think a gear icon would do it.

Of course we need better specification for this and priorities.
This is from a small working POC I made this afternoon.
I have some concerns:

What do we want to save in PT Settings for the plugins? In the POC I am saving plugin names but there will be also settings
Save button for restart Launcher or reload plugins at runtime? The POC require manual restart (disable/re-enable)

@davidegiacometti
Here are some thoughts:

We should remove the example in calculator's description.
Can we show the action key in the description line of each plugin?

If plugins requre a restart of the app in order to load, and there isn't anything being kept in memory in a state of unsavedness (which i'm not actually positive about) is there a reason not to just restart the app every time a new plugin is installed (with appropriate messaging)?  Is there a use case for installing a new plugin and not wanting it to be activated right away that couldn't be addressed within the settings on/off toggle?

Spec in progress: https://github.com/microsoft/PowerToys/blob/dev/crutkas/spec/ptRunPlugin/doc/specs/PtRunPlugin.md

Spec in progress: https://github.com/microsoft/PowerToys/blob/dev/crutkas/spec/ptRunPlugin/doc/specs/PtRunPlugin.md

Spec in progress: https://github.com/microsoft/PowerToys/blob/dev/crutkas/spec/ptRunPlugin/doc/specs/PtRunPlugin.md

Should we provide feedback on the spec in this issue? If so:

Would be nice to have the plug-in description under the title as well, so users know what each plug-in does (and it's already in the plug-in config file.

Spec in progress: https://github.com/microsoft/PowerToys/blob/dev/crutkas/spec/ptRunPlugin/doc/specs/PtRunPlugin.md

Should we provide feedback on the spec in this issue? If so:

Would be nice to have the plug-in description under the title as well, so users know what each plug-in does (and it's already in the plug-in config file.

Good catch @niels9001

Good catch @niels9001

I’ll whip up a PR and let’s do comments there

I’ll whip up a PR and let’s do comments there

Spec in progress: https://github.com/microsoft/PowerToys/blob/dev/crutkas/spec/ptRunPlugin/doc/specs/PtRunPlugin.md

My feedback so far for the spec:

We should mention the developer of each plugin.(Info exists in the plugin json.)
We should have a place for plugin specific settings like "disable indexer warning". (Maybe it's not clear enough mentioned at the moment.)
 (Or we prevent this.)

Other thoughts:

We should add a hint somewhere (issue, spec or other place) that we need a second spec for third party plugins in the feature.

Spec in progress: https://github.com/microsoft/PowerToys/blob/dev/crutkas/spec/ptRunPlugin/doc/specs/PtRunPlugin.md

My feedback so far for the spec:

We should mention the developer of each plugin.(Info exists in the plugin json.)
We should have a place for plugin specific settings like "disable indexer warning". (Maybe it's not clear enough mentioned at the moment.)
 (Or we prevent this.)

Other thoughts:

We should add a hint somewhere (issue, spec or other place) that we need a second spec for third party plugins in the feature.

I’ll whip up a PR and let’s do comments there

Sory I saw this comment to late.

I’ll whip up a PR and let’s do comments there

Sory I saw this comment to late.

https://github.com/microsoft/PowerToys/pull/9121 is PR

https://github.com/microsoft/PowerToys/pull/9121 is PR

@htcfreek all is addressed in spec, FYI

@htcfreek all is addressed in spec, FYI

@enricogior @crutkas
In spec we have two options to configure action keys: 'include results in default list' and 'action key'. From plugin.json we can specify an array of action keys. Do we still need to keep an array of action keys for a plugin? At least at code? Deleting them would simplify code.

@mykhailopylyp
currently each plugin setting is in Program Files and looks like this:
{
    "ID":"CEA0FDFC6D3B4085823D60DC76F28855",
    "ActionKeywords": [ "*", "=" ],
    "Name":"Calculator",
    "Description":"Provide mathematical calculations.(Try 5*3-2 in PowerToys)",
    "Author":"cxfksword",
    "Version":"1.0.0",
    "Language":"csharp",
    "Website":"https://aka.ms/powertoys",
    "ExecuteFileName":"Microsoft.PowerToys.Run.Plugin.Calculator.dll",
    "IcoPath":"Images\\calculator.dark.png"
}

Are we going to leave this config file in Program Files and override the ActionKeywords from the values saved in appdata by the plugin manager?
We still need to save two values if the plugin is included in the default results and it also has its own action key, so it would seems consistent to have the same (or similar) representation.

@enricogior

Are we going to leave this config file in Program Files and override the ActionKeywords from the values saved in appdata by the plugin manager?

yes

We still need to save two values if the plugin is included in the default results and it also has its own action key, so it would seem consistent to have the same (or similar) representation.

Right now it is confusing because we have both ActionKeywords and ActionKeywoad settings. I want to get rid of one of them. The question is which one. If we do not plan to have more than one action key except global search it will be better to have ActionKeyword and IsGlobal settings as it is consistent with UI at this stage.

@mykhailopylyp

it will be better to have ActionKeyword and IsGlobal settings as it is consistent with UI at this stage.

It sounds good, better binding with the UI.

Notice: assigning the same action key to two plugins actually does not work. The last plugin that is registered with the same action key wins.

@mykhailopylyp
can you investigate how much work is needed to support it?

can you investigate how much work is needed to support it?

So far it seems easy to achieve.

@mykhailopylyp
OK, let's do it since there are scenarios where it makes sense to support it.

Notice: Do not have warning appear if Disable file drive warning is enabled and the Search plugin is disabled is achieved as the warning is added inside of the plugin' query method and it is not called when the plugin is disabled.

@crutkas, @enricogior
If plugin manager is basically implemented we should not directly close this issue and (#9655). These issues include ideas for future enhancements like import third-party plugins, search in plugin list and define settings for third-party plugins (https://github.com/microsoft/PowerToys/issues/9655#issuecomment-780533534).
Before we close the issues it makes imo sense to open a new "thrid-party plugin" issue that track the ideas.

@htcfreek
we should open individual issues for future enhancement, and close this one and #9655.

@htcfreek
we should open individual issues for future enhancement, and close this one and #9655.

I agree. Let's do this when 0.33 is released.

@enricogior
All the new issues for each of the remaining remaining enhancement ideas in this issue are created. (I didn't create any issue for ideas which regarding 3rd-Party-Plugin features.)

@htcfreek
great work! Thanks.

Great news!  This was resolved in the newly released 0.33 version of PowerToys!  Head to https://aka.ms/installpowertoys to grab latest.

Awesome, great work! Where is the weighting/ordering feature now being tracked? This issue and #3271 and #3371 are all closed.

We were waiting on feedback for weight to see if this was enough. It adds a lot of complexity for debugging with community

@crutkas @garrulinae
the weighting algorithm was not working because of a bug, the initial request to allow manual weighting was assuming that the algorithm was working but not good enough.
For ordering, I think we should open a new issue since now that the plugin manager has been implemented, we can propose a specific UI for this feature.


TAA doesn't work for the sky

Tested versions
v4.2.1.stable.official [b09f793f5]
System information
Windows 10 - Godot Engine v4.2.1.stable - Vulkan API 1.3.260 - Forward+ -  NVIDIA GeForce GTX 1050 Ti
Issue description
Motion vectors are not calculated when the camera is rotated, which is why the sky is blurred when rotated. At the same time, for FSR2 the sky is calculated correctly.
Steps to reproduce

Create Camera3D
Add any script to control the rotation of the camera
Create WorldEnvironment
Add new Environment in WorldEnvironment
Set Sky in Background mode in Environment
Add new Sky in Environment
Add new ShaderMaterial in Sky
Add any contrast Sky Shader in ShaderMaterial
Enable the "Use TAA" option in Anti Alising settings
Disable "FSR2.2" option in Scaling 3D settings
Enjoy

Minimal reproduction project (MRP)
Uploading TAA BUG.zip…

Possibly a duplicate of:

https://github.com/godotengine/godot/issues/67332

Yes, that's her, thank you


fix(Pipelines): enable nulls value check on Pipeline model constraint

It was possible to have duplicate entry for pipeline with the same code. The constraint, composed of code, workspace and deleted_at (which is null by default) was not correctly implemented and due to django considering Null value to be distinct by default.
This PR intends to fix that by enforcing null values check on Pipeline model constraint. (See https://docs.djangoproject.com/en/5.0/ref/models/constraints/#nulls-distinct)
Changes
Please list / describe the changes in the codebase for the reviewer(s).

Set nulls_distinct to False on Pipeline model (default None)

The problem is that we are only in Postgres 12 :/

The problem is that we are only in Postgres 12 :/

Ouch 🫤. All right, let me look for another solution (maybe model clean method)


Assassin's Creed II hangs with DXVK state cache enabled

Game menu works and the Desmond loading screen works but as soon as the screen turns white to load in it crashes.
Software information
Also tried all low settings. No difference.

System information

GPU: GTX 960
Driver: 418.56
Wine version: Wine Staging 4.6
DXVK version: ca3c81c1

Apitrace file(s)

https://drive.google.com/open?id=1qavOf6brbxieRQQl747rK08cuU63XSiA

Log files

AssassinsCreedIIGame_d3d9.log

It does not crash with latest RADV, but I doubt this is what the game is supposed to look like:

With current master (c8fb2d569675cd7ef37712b0b2d4efe53db752c6):

Using 2a0c153b for D9VK, the game was frozen 6-7 times at the launch (No errors in the log).
On the last launch, the game worked but:

Some textures were missing (A few people textures)
After 2 minutes, the game crashed...

BUT! It worked faster than WineD3D! Very impressive!

Looks like it's a problem with my game save. I was able to reach in-game with a new game but it looks like this. Used d9vk 0.11
AssassinsCreedIIGame_d3d9.log

I bisected but 1e088094978965bed69f1acc37d1ac02159be98c failed to build so I tried the next commit da392277550446f2d037a3dcfd6fb15e59654daf and it has the same issue as above.

Are you using the Uplay version or the Steam+Uplay version ? (Like me)
For now, I can't get past the intro video (Need to kill the process)

Game looks to rendering right but yeah it hangs on launch with the state cache enabled.

Scratch that, the parking lot and enemies at the beginning don't render.
Invisible guards:

Invisible Lucy:

Elevator not rendering:

Parking lot not rendering:

Game crashed while fighting those dudes.

The issues in my last comment are now fixed. However, there's an issue with blood. It gets suspended in air.

AssassinsCreedIIGame_d3d9.log

Closing since the original issue is fixed.


Auto deploy is broken

The scheduled deployment is broken:
https://github.com/DPGAlliance/publicgoods-candidates/actions/runs/3424322890/jobs/5703867864
It seems to be due to this commit that moved a file:
https://github.com/DPGAlliance/publicgoods-candidates/blob/a708a8894b89cafb14c2a5ec053eac012b7bdd47/archive/yallakhedmeh.json

@jeremi nice catch! This has now been resolved by bumping up the versions of some pipeline dependencies. Thanks.


Local development and debugging support for azure-mobile-apps-net-client

In an older version of azure-mobile-apps-net-client I managed to get the local development and debugging working, similar to the wiki that explains how to set this up for the azure-mobile-apps-net-server -- that wiki can be found here: https://github.com/Azure/azure-mobile-apps-net-server/wiki/Local-development-and-debugging-the-Mobile-App-.NET-server-backend
The steps do set it up for azure-mobile-apps-net-client should be the same as the steps required for azure-mobile-apps-net-server (I know because I managed to get it to work before for an older version of azure-mobile-apps-net-client, as already mentioned). But with this current version of azure-mobile-apps-net-client it is not working.
The call to LoginAsync(MobileServiceAuthenticationProvider provider, JObject token) completes successfully and I get a valid MobileServiceUser back (the UserId and the MobileServiceAuthenticationToken within the MobileServiceUser are both properly filled). However when I then call an API on the backend using InvokeApiAsync, where the API on the backend has the [Aurhorize] attribute set, it returns a "Not authorized" error. I have loaded the relevant symbol sources and found that the place where it goes wrong is here:
`  protected virtual bool IsAuthorized(HttpActionContext actionContext)
{
if (actionContext == null)
{
throw Error.ArgumentNull("actionContext");
}
        IPrincipal user = actionContext.ControllerContext.RequestContext.Principal;
        if (user == null || user.Identity == null || !user.Identity.IsAuthenticated)
        {
            return false;
        }

`
That is from here: >	Microsoft.Owin.Security.dll!Microsoft.Owin.Security.Infrastructure.AuthenticationMiddleware<Microsoft.Azure.Mobile.Server.Authentication.AppServiceAuthenticationOptions>.Invoke(Microsoft.Owin.IOwinContext context) Line 30
The problem is that user.Identity is null at this point (despite the fact that the LoginAsync() went through without any errors) and then it returns false, meaning "not authorized".
This is really holding us back and taking up a lot of my time. We need to be able to run azure-mobile-apps-net-client locally while we are developing our app.

Sorry it has been a while since I worked with this, I see now I should log this issue under azure-mobile-apps-net-server. Will close this issue.


the bot platform connector submission

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)
If this is your first time submitting to GitHub and you need some help, please sign up for this session.

[Y] I attest that the connector doesn't exist on the Power Platform today. I've verified by checking the pull requests in GitHub and by searching for the connector on the platform or in the documentation.
[Y] I attest that the connector works and I verified by deploying and testing all the operations.
[Y] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[Y] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[Y] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[Y] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

@microsoft-github-policy-service agree [company="The Bot Platform"]

@microsoft-github-policy-service agree company="The Bot Platform"


Can you add an easter egg that changes the version on the title screen from 1.19.1 to 1.19.84?

Most certainly.

Do note that F3 still says 1.19.1

I don't understand the easter egg

I don't understand the easter egg

People have been pointing out the similarities between Microsoft's chat reporting and the book 1984, a dystopian book about government control. It's a good read, albeit it's got very dated... values.


Link ID need for link object

For API methods to retrieve and update individual links with new attributes etc the links need to be consistently referred to by the same ID. Presently, because link objects do not have IDs in the schema, internal link IDs get generated each time the piplelineFlow is loaded. The link object should have an optional id to allow any generated link IDs to be written into output pipelineFlows and also to be able to handle any IDs that a host application might want to provide.

Implemented.


Create README for System Management Executor Implementation

From https://github.com/edgexfoundry/edgex-go/issues/1851:

Additionally, we have no docs for what all is required for an executor to integrate with the agent, so if someone does implement their own custom executor and deploy it, we shouldn't be requiring them to read through all the code

Create a README.md in internal/system/executor geared towards a developer interested in creating their own executor.  Include information on:

How agent passes service name, action, and optional parameters on the command line.
Current proxy-like behavior for stop/start/restart operations -- agent passes parameters received to executor as-is.
Metrics result contract (and its support for embedding executor-specific results).
Expected format of operation result (based upon the existing Docker executor implementation).

@michaelestrin that sounds good, I will get started on this shortly 👍


No se pueden recuperar los recursos secundarios

No se pueden recuperar los recursos secundarios.
Detalles:
This request is not authorized to perform this operation.
RequestId:e7d33a18-4002-0022-69b2-c190e2000000
Time:2020-11-23T16:07:54.1515751Z

@lfrz74 what type of resources are you trying to load?

Closing due to lack of responses. If you are still having problems, please open a new issue. Thanks!

Closing due to lack of responses. If you are still having problems, please open a new issue. Thanks!


Unable to load Private dll from bin folder during execution

Function app:
https://functionsb28e57ff.scm.azurewebsites.net/DebugConsole
I created a bin folder , and uploaded the dll files here
D:\home\site\wwwroot\TimerTriggerCSharp1\bin>
and am referencing some dlls there using
#r "Microsoft.Data.Tools.Schema.Sql.dll"
The function compiles, but during execution, gives this error. The dll is present in the bin folder.
What am I missing ?
2016-03-30T23:02:00.990 Exception while executing function: Functions.TimerTriggerCSharp1. mscorlib: Exception has been thrown by the target of an invocation. ƒ-TimerTriggerCSharp1#ℛ*5ed3b47c-9016-494f-9e8b-b2478647f62e#3-0: Could not load file or assembly 'Microsoft.Data.Tools.Schema.Sql, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
.

It looks like it might be missing some dependencies? Are all the dependencies in the bin folder as well?

I believe so. Its a standard set. Will turn on Fusion log on the VM to see what is missing.

Sorry, I deleted my comment because I saw you mentioned all the dlls were present :)

I think you're on the right track though and we may have missed a dependency. Curious to see what binding failures we'll see once Fusion log is enabled.


docs(install): Enfoced correct node version for docs_app

Description:
To prevent confusion I fixed the required node version in package.json to the required version 10 and enforced it in npmrc to prevent an errornous install

For travis build you have to remove the strict thingy in the npmrc

Hmmm but the docs don't build with <10. So Travis shouldn't build it with lower version as well?

@JWO719 where does this PR stand?


Dead patient info details are not being displayed in Visualization

Actual Results
After declaring a patient dead, when I visualize the death info the system does not show the date of death either the reason of death and shows the field Died with value 'NO'
Expected results
The system should show the field Died with the value 'YES' and the death date and death reason
Steps to reproduce
Login > Registration module > search patient > click button visualize > select Tab Death Info
Screenshot/Attachment (Optional)

 Dead patient info details are not being displayed in Visualization

Fixed in #692.


[Addition]:

Hotspot b58 Addresses
112efqra3BqHHaKscu8UUNHsK8bUXVtVEPixpzNao9kpBo8NpHC7
Discord Handle
Fleasus
Reason(s)
This hotspot location is incorrect by well over 100km.

Muscular Vanilla Scallop Is the hotspot in question


Camera icon not shown on barcode pop-up

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
The camera icon is missing on the Barcode pop-up menu, which means I am unable to use the webcam to scan.
Steps to Reproduce

My webcam works on the browsers - tested
I have created a part just in case this was a pre-requisite
Barcode Support and Barcode Webcam Support are both enabled under Settings>Barcode Support

Open the Barcode pop-up from the top bar
The camera icon is missing on the far right (see picture below)

Expected behaviour
I'd expect the camera icon to be present and to give me access to the webcam to scan Barcodes as shown on the documentation page.

Deployment Method

[X] Docker
[ ] Bare metal

Version Information
Version Information:
InvenTree-Version: 0.13.4
Django Version: 3.2.23
Commit Hash: 6a66be3
Commit Date: 2024-01-24
Database: postgresql
Debug-Mode: False
Deployed using Docker: True
Platform: Linux-6.1.0-17-amd64-x86_64-with
Installer: DOC
Active plugins: False
Please verify if you can reproduce this bug on the demo site.

[ ] I can't reproduce this bug on the demo site. After having the pop-up open for several seconds the browser requests permission to access the webcam, after granting it, the icon appears. Perhaps a docker-specific problem?

Relevant log output
No response

Maybe related but it seems different:
https://github.com/inventree/InvenTree/issues/4105

Can you test this with a private (incognito) tab? Maybe you have already set the camera permissions to deny for that site. And also this shouldn't be related to docker, that's just the browser.

Thanks for your prompt reply, @wolflu05 . I have tested in incognito mode, with the same result - the icon is still missing. This was mostly expected as I normally use Firefox for everything and the same result was observed on Chrome as well.

@wolflu05 , OK I have just found the culprit:
Uncaught (in promise) Camera access is only supported in secure context like https or localhost.
I am running Inventree on a home server, local network.

Oh right, that could also be the case. That means you have to setup https certificates on your server so that the browser know the environment is safe.

@wolflu05 yes, I think that's what I would have to do. I purchased the App anyway so I will be using that as it's much more convenient and works great on the local network.

@coratron do you consider this solved or can we assist in getting this corrected in your setup?

While not the best security practices, if you are on a trusted network you can add the URL to the list of trusted URLs via Chrome's flags: Chrome

@matmair I think we can close this issue. Thanks @Con30 , I am aware of the different approaches to solve this problem now that I know what the issue was. We can close this, it will hopefully help some other users.


Running model for inference

Hi,
I was able to successfully train the model using my dataset.
Now, I would like to run it for inference on production datasets produced by my application.
How do I do that? Should I simply run
    python preprocessing/geolife.py 20
and
python main.py config/geolife/transformer.yml
on production datasets?
Thanks

Validation and Test results should be given as an output by running main.py, e.g., see line 26

@hongyeehh Thanks. I am sorry. My question was not clear.
If I understand correctly your statement above, in production to continue training and runf the model for inference I continue doing what is stated in
https://github.com/mie-lab/location-prediction#3-preprocess-the-dataset
and
https://github.com/mie-lab/location-prediction#4-run-the-proposed-transformer-model
Is my understanding correct?
FYI, I am using executorch to lower the model to Android devices.
If my understanding is correct, you can consider this issue closed.
Thanks for our help,
Alex Donnini

Your inference dataset shall be in the same format as the training dataset, so you are right: executing python preprocessing/geolife.py 20 (with an adjustment on your dataset) will ensure both have the same format.
Instead of running python main.py config/geolife/transformer.yml, which will train the prediction network from scratch on the inference dataset, you should load the already trained network and freeze its parameters. For this, you can use the code within get_test_result() for reference.


Test issue edited

Test issue comment edited

test issue comment created

close issue comment

Reopen issue comment

Add issue comment

test issue comment

test issue comment

test issue comment added

test comment

test comment

Test comment!

Another comment!

comment

bloop

blorp

/invite @ampprojectbot

Trigger /invite @ampprojectbot

trigger /invite @ampprojectbot

test

comment

beep boop

blorp

oau

bop

mlem

rabble rabble

meep

berble

floop

fwap

bibble

test /trigger @ampprojectbot

test /invite @ampprojectbot

test /invite @ampprojectbot

test /invite @ampprojectbot

An invitation to join amp-rcebulko-test-org has been sent to @ampprojectbot. I will update this thread when the invitation is accepted.

test /tryassign @ampprojectbot

You asked me to invite @ampprojectbot to amp-rcebulko-test-org, but they already have an invitation pending! I will update this thread when the invitation is accepted.

The invitation to @ampprojectbot was accepted!

The invitation to @ampprojectbot was accepted! I've assigned them to this issue.

test /invite @ampprojectbot

You asked me to invite @ampprojectbot, but they are already a member of amp-rcebulko-test-org!

Test /tryassign @ampprojectbot

I've assigned this issue to @ampprojectbot.

test /invite @ampprojectbot

/tryassign @ampprojectbot

/tryassign @ampprojectbot

/tryassign @ampprojectbot

/tryassign @ampprojectbot

@amp-rcebulko-test-org/wg-test

/tagme

/tagme

/tagme

Test comment @amp-rcebulko-test-org/wg-test

test


can't running the bot

yt_bot exited with code 1
yt_bot       | [RabbitMQ] Waiting to be reachable on port 5672
yt_bot       | [PostgreSQL] Waiting to be reachable on port 5432
yt_bot       | [RabbitMQ] Connection on port 5672 verified
yt_bot       | [PostgreSQL] Connection on port 5432 verified
yt_bot       | Traceback (most recent call last):
yt_bot       |   File "/app/main.py", line 3, in
yt_bot       |     from api.core.app import app  # noqa: F401
yt_bot       |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
yt_bot       |   File "/app/api/core/app.py", line 10, in
yt_bot       |     from api.core.config import settings
yt_bot       |   File "/app/api/core/config.py", line 10, in
yt_bot       |     settings = ApiSettings()
yt_bot       |                ^^^^^^^^^^^^^
yt_bot       |   File "/usr/local/lib/python3.11/site-packages/pydantic_settings/main.py", line 71, in init
yt_bot       |     super().init(
yt_bot       |   File "/usr/local/lib/python3.11/site-packages/pydantic/main.py", line 171, in init
yt_bot       |     self.pydantic_validator.validate_python(data, self_instance=self)
yt_bot       | pydantic_core.pydantic_core.ValidationError: 3 validation errors for ApiSettings
yt_bot       | API_HOST
yt_bot       |   Field required [type=missing, input_value={'APPLICATION_NAME': 'yt...ADED_DIR': 'downloaded'}, input_type=dict]
yt_bot       |     For further information visit https://errors.pydantic.dev/2.6/v/missing
yt_bot       | API_PORT
yt_bot       |   Field required [type=missing, input_value={'APPLICATION_NAME': 'yt_...ADED_DIR': 'downloaded'}, input_type=dict]
yt_bot       |     For further information visit https://errors.pydantic.dev/2.6/v/missing
yt_bot       | API_WORKERS
yt_bot       |   Field required [type=missing, input_value={'APPLICATION_NAME': 'yt_...ADED_DIR': 'downloaded'}, input_type=dict]
yt_bot       |     For further information visit https://errors.pydantic.dev/2.6/v/missing

Did you delete the envs/.env_api file or edit docker-compose.yaml file?
Your error says it can't found API_HOST, API_PORT and API_WORKERS variables which are stored envs/.env_api file.

i can't delete the envs/.env_api file and keep defaut。
i can't edit docker-compose.yaml file


update collectors

Please describe the changes this PR makes and why it should be merged:

better collector method names
supports uncollecting

Semantic versioning classification:

[x] This PR changes the library's interface (methods or parameters added)

[x] This PR includes breaking changes (methods removed or renamed, parameters moved or removed)

[ ] This PR only includes non-code changes, like changes to documentation, README, etc.

these names are worse imo

but they actually represent what the method does now

I have tested this and both existing types of collector appear to work.  However, I would definitely appreciate some extra testing from anyone who is willing.

Not liking the names either.

I'm open to suggestions. I renamed them because I needed consistent naming for removing collected elements, and those are the names that, to me, represent what those methods do. Since clearly more people disagree, please advise.


System Scheduler Design Discussion

Systems are functions. They each represent a unit of work responsible for processing resources or entity data. Each system may declare access to generic resources and/or a single Query for access to entity data. Each system also has an EntityCommandBuffer, into which it can queue structural changes to a world, such as entity insertions or deletions. These commands are deferred until later in the frame.
Systems are scheduled for execution with the scheduler. It is up to the scheduler to decide how and when to submit systems to a thread pool for execution. I propose a two phase scheduler:
Phase 1: Stage Scheduling
A single frame is defined as a sequence of Stages, for example: pre-update, update, post-update, physics, pre-render, render.
The scheduler maintains a queue of stages. The stage at the top of this queue is the active stage. A stage transition occurs when we pop a stage off the queue (exiting that stage), and enter the next stage.
Every system must specify a start: Stage and complete: Stage. These may or may not be the same stage, but complete must not be queued before start. A system is considered eligible for scheduling once its start stage has been entered (and any time thereafter). The recorded EntityCommandBuffer of a system will be comitted as the complete stage is exited.
A stage transition can occur once all systems that complete on the current stage have finished executing. During the transition, all command buffers for the stage are comitted. However, which archetypes are to be modified during command buffer execution cannot be known ahead of time (due to entity deletion and mutation). Command buffer execution, therefore, involves determining which archetypes are to be mutated before executing each command (and it cannot be computed any earlier as even earlier commands in the buffer can modify the result), and then determining if any other systems that have been marked eligible for scheduling access those archetypes. If so, the scheduler must yield and await the completion of those systems before continuing with the transition.
If the above conditions are met, we can safely execute command buffer actions even while other systems are still running (assuming all systems clone the archetype pointers for all archetypes they are to access ahead of time - during their start stage transition). As we determine which systems may be scheduled (and calculate which archetypes they shall access) as we enter a stage, and then apply change as we exit a stage, whether or not a system will see structural changes should be deterministic regardless of exactly when the system is submitted to a thread pool or when it actually executes.
Stages also form "soft" sync points, waiting for only the minimum set of systems to complete before a stage transition, while letting other systems that access data not modified by the transition to continue to execute through into the next stage (unless the system declares that it shall complete within the current stage).
Phase 2: System Scheduling
As the frame progresses through the sequence of stages, systems are "unlocked" by being marked eligible for scheduling. However, systems may have additional scheduling requirements which means we cannot immediately hand them over to the thread pool for execution. These requirements include explicit ordering via runs-before and runs-after constraints with other systems, and safety constraints that determine which pairings of systems can be executed concurrently based upon resource access (read/write of both generic resources and legion component accesses).
The second phase of the scheduler is responsible for determining which systems are dependant upon other systems. It submits all systems with no outstanding dependencies to the thread pool. When a system completes execution, the scheduler checks if this completed system was the last outstanding dependency of any other system and, if so, submits those.
A single system may sub-divide itself into multiple jobs when it is submitted to the thread pool. For example, a query system may be able to process all chunks independently and therefore submit one job per chunk. This decision is made by the system at the time it is submitted. The scheduler considers a system complete once all jobs have completed.

The scheduler here is very "reactive", with almost everything it does happening in response to a system completing its execution on the thread pool.
It may be worth investigating implementing all of this on top of futures. The yielding behaviour of stage transitions in particular.

Have you assessed a general runtime cost for this dispatching method? From what I understand, there is a lot happening during the frame (in comparison to for example specs), do you think it could have a significant impact?

From what I can tell, I have implemented an equivalent scheduling logic, just haven't implemented dispatching jobs to a thread pool yet: https://github.com/kabergstrom/legion/blob/master/src/schedule.rs


Adding how to contribute for Github Desktop users

Describe the project you want to add with tech stack
Want to Add how to contribute for GitHub desktop users
Expected behavior
I faced this problem when I started contributing. Being a GitHub desktop user how to contribute using GitHub desktop was not given in the majority of the projects. So I feel that the upcoming new folks should not face this problem
Screenshots (optional)

Please assign me this under Gssoc'23

Not required

Ok @pranjay-poddar no problem, could you help me find more issues to contribute


Rocm solvers codereability

Split hip/rocSolver and rocblas in rocm_solvers.cc with description (used to mixed together).
This will benefit for adding new functions in the future.

@i-chaochen please merge this PR with https://github.com/ROCmSoftwarePlatform/tensorflow-upstream/pull/1777 and squash the combined PR commits into a single commit.
thanks!

@i-chaochen please combine this PR with #1777 and squash the combined PR commits into a single commit.
thanks!

Done!


Consider set fsType = 0

https://github.com/fontello/fontello/issues/436#issuecomment-167916066

@puzrin
Setting fsType = 0, is it setting BitMask = 0x0001?
In order to get BitMask = 0x0000, should fsType be unset?
https://www.microsoft.com/typography/otspec/os2.htm#fst

Setting fsType = 0, is it setting BitMask = 0x0001?

Yes.

Ups, no :)
fsType = 0 means BitMask = 0x0000


JAX IMPALA agent does not allow hk.dynamic_unroll.

When changing the unroll function of the example agent to use dynamic_unroll, this will result in the following error:

TypeError: scan carry output and input must have same type structure, got PyTreeDef(tuple, [PyTreeDef(namedtuple[<class 'haiku._src.recurrent.LSTMState'>], [,]),PyTreeDef(namedtuple[<class 'haiku._src.stateful.InternalState'>], [PyTreeDef(None, []),PyTreeDef(<class 'collections.defaultdict'>[(<class 'dict'>, ())], []),PyTreeDef(None, [])])]) and PyTreeDef(tuple, [PyTreeDef(namedtuple[<class 'tensorflow.python.saved_model.nested_structure_coder.LSTMState'>], [,]),PyTreeDef(namedtuple[<class 'haiku._src.stateful.InternalState'>], [PyTreeDef(None, []),PyTreeDef(<class 'collections.defaultdict'>[(<class 'dict'>, ())], []),PyTreeDef(None, [])])]).

I think the reason that this occurs is that when using the dataset iterator, the hk.LSTMState in the extra_spec is not preserved. This causes jax.scan to error since it requires the type of the initial_state to match the type of the carry. In this case, the initial_state has type tensorflow.python.saved_model.nested_structure_coder.LSTMState while the carry will have type hk.LSTMState
Notes

the signature returned from the replay client is not respecting the type

client = reverb_client.Client(address)
info = client.server_info(-1)
print(info[replay_table_name].signature) # will give tf.python.saved_model.LSTMState

In https://github.com/deepmind/reverb/blob/master/reverb/server.py#L148, the signature gets encoded  into signature_proto_str which is what gives the type above. The client gets information about the table which returns the encoded signature, but this is not mapped back to the original type specified in the extra_spec. It seems that when deserializing the proro string in https://github.com/deepmind/reverb/blob/master/reverb/client.py#L463 does not actually restore the original type.
A simple repro for this. Looks like an incompatibility of hk.LSTM with the nested_structure_coder

from tensorflow.python.saved_model import nested_structure_coder
import tensorflow as tf
import haiku as hk

tf.__version__ # 2.4.1

spec = {
    'core': hk.LSTMState(tf.TensorSpec(shape=tf.TensorShape((1,2))), tf.TensorSpec(shape=tf.TensorShape((1,2))))}

# Encode into proto
proto = nested_structure_coder.StructureCoder().encode_structure(spec)
# Decode
type(nested_structure_coder.StructureCoder().decode_proto(proto)['core'])
# Gives tensorflow.python.saved_model.nested_structure_coder.LSTMState

The error seems to be that hk.LSTM is a NamedTuple and the decoder is not reconstructing that. Usual tuples work fine however. Apparently, this is documented
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/saved_model/nested_structure_coder.py#L226
I guess solutions to this problem would be

JAX not erroring when the initial carry has a type mismatch during scan. One possibility is for JAX to be more graceful in checking the types for NamedTuple by allowing equality between two different NamedTuples with the same typename and fields.
Perform additional step to map back to the original signature, this can be a little bit tricky since the client does not require a signature at construction so it may be difficult to propagate that information forward. I am not really in favour of this idea since there may be performance implications.
Handle this special case in haiku.dynamic_unroll. I am not sure if this is in general possible but just my third opinion.

Depending on what the solution is, maybe I can cross-post this to the respective repo. Do the Acme maintainers have some ideas about this in mind?
Thanks!

@ethanluoyc sorry for the silence on this. I wonder if you managed to find a solution?
TBH, I didn't fully understand the problem, but it sounds like it's not specific to Acme, rather to how you are building the networks passed to Acme? I.e. it seems to me that it's rather related to Haiku and not Acme.

I think in the end I just did a manual cast of my state back to LSTMState. It's a hacky workaround but it works :D
https://github.com/ethanluoyc/magi/blob/2ef2ba60989a55ccf8c90ba74c8e712fe301e2fa/magi/agents/impala/agent_test.py#L76
IIRC, I think the problem is that when reverb unpacks structs from the server, it will only preserve structural identity. Imagine a named tuple A(a:int, b:float). Then reverb samples will return B(a:int, b:float) where A and B are structurally the same but they are not the same type, i.e. type(A) != type(B). This would cause hk.static_unroll to fail some internal checks, but you are right it's not a problem specific to Acme but rather an issue that I found when modifying the IMPALA agent to use dynamic_unroll instead of static_unroll. static_unroll takes too long to compile in my case as I am compiling sequences of >100 in steps..


SPWebBuildRig.js workaround line-numbers have changed for 1.8.2

Hi @waldekmastykarz,
In the readme you mention the workaround for which you need to change a few lines in the SPWebBuildRig.js file.
I blindly copy pasted your code to lines 83-85 (never wise :grimacing:), only to discover later that the linenumbers have changed. It's no longer 83-85, but 88-90 (using SPFx 1.8.2) that we have to change. Otherwise we're overruling the mergeConfig of the deployCdnPath.
I agree in advance, the problem here is primarily between the chair and the screen. But maybe you could, for completeness sake, update your readme accordingly? Maybe it would help for suckers like me who end up staring at a white screen and take unnecessary time retracing their steps.
Thanks in advance :pensive:

Good catch and sorry for the trouble 👍

Is there anything you would recommend to do now regarding the issue or should we close it?

I think we need to verify that the guidance is correct for v1.8.2.

Valid point, I have done some research of the line numbers depending on the version:

https://unpkg.com/<EMAIL_ADDRESS>lines 83-85
https://unpkg.com/<EMAIL_ADDRESS>lines 83-85
https://unpkg.com/<EMAIL_ADDRESS>lines 83-85
https://unpkg.com/<EMAIL_ADDRESS>lines 88-90
https://unpkg.com/<EMAIL_ADDRESS>lines 88-90
https://unpkg.com/<EMAIL_ADDRESS>lines 88-90
https://unpkg.com/<EMAIL_ADDRESS>lines 92-94
https://unpkg.com/<EMAIL_ADDRESS>lines 96-98
https://unpkg.com/<EMAIL_ADDRESS>lines 96-98

Should we specify the lines for each version in our guidance or should we just suggest searching the specific pattern?

Wow, that's solid ❤

Awesome @shurick81 👏 Yes, offering guidance per version would be the best. Would you like to submit a PR based on your work?

https://github.com/waldekmastykarz/docker-spfx/pull/62

PR merged


feat: add docker-compose setup

Work in Progress

@tedmarov @timoguin
I went thru the compose config and updated/fixed config issues + issues with the wrangler dockerfile

I organized everything into a nice docker-compose folder instead of being spread out across the other project features.

HOWEVER, it still does not work. There is a configuration issue with the wrangler/minio set up.
The wrangler js code needs to be modified to be compatible with the local minio setup (uses https and shares the bucket name with the host url currently)

@tedmarov @timoguin
I went thru the compose config and updated/fixed config issues + issues with the wrangler dockerfile

I organized everything into a nice docker-compose folder instead of being spread out across the other project features.

HOWEVER, it still does not work. There is a configuration issue with the wrangler/minio set up.
The wrangler js code needs to be modified to be compatible with the local minio setup (uses https and shares the bucket name with the host url currently)

Thanks!
Let's make it just a docker/ directory and place the docker-compose.yml in the repo root.

@tedmarov @timoguin
I went thru the compose config and updated/fixed config issues + issues with the wrangler dockerfile

I organized everything into a nice docker-compose folder instead of being spread out across the other project features.

HOWEVER, it still does not work. There is a configuration issue with the wrangler/minio set up.
The wrangler js code needs to be modified to be compatible with the local minio setup (uses https and shares the bucket name with the host url currently)

Thanks!
Let's make it just a docker/ directory and place the docker-compose.yml in the repo root.

Is that something I need to do in addition to getting it working?

The wrangler js code needs to be modified to be compatible with the local minio setup (uses https and shares the bucket name with the host url currently)

Can you expound on this part a bit?
The worker code wants to use HTTPS (but HTTPS is not setup in MinIO)? And what do you mean about it sharing the bucket name with the host URL?

@tedmarov @timoguin
I went thru the compose config and updated/fixed config issues + issues with the wrangler dockerfile

I organized everything into a nice docker-compose folder instead of being spread out across the other project features.

HOWEVER, it still does not work. There is a configuration issue with the wrangler/minio set up.
The wrangler js code needs to be modified to be compatible with the local minio setup (uses https and shares the bucket name with the host url currently)

Thanks!
Let's make it just a docker/ directory and place the docker-compose.yml in the repo root.

Is that something I need to do in addition to getting it working?

We can do it either before or after. I was thinking @mike-audi could, but either way is fine.

Also, if we're going to add unique names to Dockerfiles then let's do Dockerfile.<name> instead of using a prefix. But I would prefer to use directories for that, so we can do things like docker/auth/Dockerfile or docker/storage/Dockerfile. Then we can use the contexts docker/auth/ and docker/storage/ in the docker-compose.yml.
Does that make sense?

@tedmarov
I suggest we merge this in as-is, and then I'll open a new GH Issue for the wrangler updates, as that has nothing to do with docker-compose.
@timoguin
I actually have a whole slew of naming conventions I want to adjust (outside the scope of this PR). I suggest we discuss this separately & asap.


Add developer getting started guide

Description

Added developer getting started guide *

Processing this pull request

Merged into branches master in 95285d4f05b12ddd7318711a950b8dc80136301d

Processing #2858.

Processing #2859.


Is angular [(ngModel)] bind support by flatdatepicker in agnular 4 or not

https://jsfiddle.net/tj2Lo4z7/
Your Environment

flatpickr version used:
I downloaded flatpicker from here : https://github.com/mezoistvan/ng2-flatpickr
Browser name and version:
chromium : Version 65.0.3325.181
OS and version:
Ubantu : 16.04 (32-bit)

@ParthWeb I'm not sure - not too familiar with angular. I believe your issue belongs in the  https://github.com/mezoistvan/ng2-flatpickr project instead.

@chmln thank you so much, yes it is belong to another issue


Capitalize Glossary entries

We want to capitalize all glossary entries in the first column
https://docs.google.com/document/d/1Rm7tN5zTErZq0E4qqAZoNVzClS94Kb_rQOLaViu2p6c/edit

Done. I have swapped around the terms in the first and second columns to remove acronyms from the first column.


Added Edge Computing Technology and Applications

Hi,
Stjepan from Manning here. I thought this title might be a good match for your list. Thankyou for considering it.
Best,

Thanks !

Thank you.
Best,
On Fri, Jan 20, 2023 at 12:22 PM Halim Qarroum @.***>
wrote:

Thanks !
—
Reply to this email directly, view it on GitHub
https://github.com/HQarroum/awesome-iot/pull/93#issuecomment-1398246608,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANDIEMJRAOFONYQXI5H6CP3WTJYOJANCNFSM6AAAAAATX3NUPA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Stjepan Jureković
Manning Publications - Marketing
@.***


--conf doesn't error when file doesn't exist

When passing a custom settings file to lbrynet-daemon it should fail if the settings file doesn't exist, instead lbrynet-daemon starts anyways without any messages telling you that your config file isn't being used. On the other hand if the file (whether it exists or doesn't) does not end in .yaml then lbrynet-daemon does crash fast:
In the below examples the files monkey or monkey.yml don't exist.
No .yml fails:
[lbry]$ lbrynet-daemon --conf monkey
Traceback (most recent call last):
  File "/home/lex/.virtualenvs/lbry/bin/lbrynet-daemon", line 11, in <module>
    load_entry_point('lbrynet', 'console_scripts', 'lbrynet-daemon')()
  File "/home/lex/projects/lbry/lbrynet/daemon/DaemonControl.py", line 64, in start
    conf.settings.load_conf_file_settings()
  File "/home/lex/projects/lbry/lbrynet/conf.py", line 547, in load_conf_file_settings
    assert decoder is not False, 'Unknown settings format %s' % ext
AssertionError: Unknown settings format

With .yml but still non-existent file works:
[lbry]$ lbrynet-daemon --conf monkey.yml
2018-07-13 11:10:33,184 INFO     lbrynet.daemon.DaemonControl:84: Starting lbrynet-daemon from command line
2018-07-13 11:10:39,249 INFO     lbrynet.daemon.DaemonServer:65: Using non-authenticated API
2018-07-13 11:10:39,251 INFO     lbrynet.daemon.DaemonServer:42: lbrynet API listening on TCP localhost:5279
2018-07-13 11:10:39,252 INFO     lbrynet.daemon.Daemon:208: Starting lbrynet-daemon

Expected behavior:

If it's easy, allow settings files with any extension (including no extension).
If you pass --conf to lbrynet-daemon and the settings file referenced doesn't exist, lbrynet-daemon should fail fast with useful error about file not being found.
Bonus: If user did something like: lbrynet-daemon --conf ../../blahblah.yml and this file doesn't exist (perhaps because they were wrong about their relative location to file) then in the error message expand the relative path to absolute path which will make it easier for the user to see their mistake (all paths can be expanded, no need to check if it's relative, there are Python built-in libs to expand paths to absolute).

Hello, I have a potential fix for this, but am having issues making a pull request. If you have a minute can you lend a hand?

hey @whatbatman, thanks for taking a look at this! See https://gist.github.com/Chaser324/ce0505fbed06b947d962 on how to make a PR from a forked repo. Let us know if you have any questions.

@whatbatman any updates? Looking forward to see a contribution from you :)
Let us know if we can help any further.

PR related to this was merged.


add completed exercises to history

1 = ok
-1 = time skip
2 = retry

post poned, build dashboard-view first

ok, i need it for the dashboard

done


Add method descriptions to EditorPlugin

This pull request adds two missing descriptions in EditorPlugin to the class docs.

Superseded by #50203.


Pre-release version breaks Source Control auto-refresh

Type: Bug

Behaviour
Bizarrely, I have narrowed down this seemingly unrelated behavior regarding Source Control to the latest pre-release version of the Python extension. Source Control does not refresh any data, including current branch and pending changes in files, when on the latest version.
Steps to reproduce:

Ensure you're on the latest version of VSCode as well as the pre-release version of the Python Extension
Check out a branch in Git
Switch branches using the command line
The "current branch" in the status bar does not update

Diagnostic data

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

Extension version: 2024.23.2024121601
VS Code version: Code 1.96.0 (138f619c86f1199955d53b4166bef66ef252935c, 2024-12-11T02:29:09.626Z)
OS version: Darwin arm64 24.1.0
Modes:

Python version (& distribution if applicable, e.g. Anaconda): 3.12.7
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Venv
Value of the python.languageServer setting: Default

User Settings

languageServer: "Pylance"

testing
• cwd: "<placeholder>"
• pytestArgs: "<placeholder>"
• pytestEnabled: true
• pytestPath: "<placeholder>"
• unittestArgs: "<placeholder>"

Installed Extensions

Extension Name
Extension Id
Version

abracadabra
nic
9.4.8

advanced-new-file
pat
1.2.2

bash-debug
rog
0.3.9

better-comments-next
edw
3.3.15

biome
bio
2024.12.22126

code-spell-checker
str
4.0.21

codewhisperer-for-command-line-companion
ama
1.5.0

cpptools-themes
ms-
2.0.0

crates-completer
jed
1.2.1

crates-io
Bar
0.7.3

dance
gre
0.5.15

debugpy
ms-
2024.14.0

dekirisu-rust-themes
dek
0.0.1

dependi
fil
0.7.13

discord-vscode
icr
5.8.0

dotenv
mik
1.0.1

errorlens
use
3.21.0

es7-react-js-snippets
dsz
4.4.3

even-better-toml
tam
0.19.2

figma-vscode-extension
fig
0.4.0

fix-all-json
zar
0.1.6

folder-source-actions
bie
0.2.1

gc-excelviewer
Gra
4.2.62

github-vscode-theme
Git
6.3.5

gitlens
eam
16.0.5

gti-vscode
Gra
0.6.1

iceworks-style-helper
ice
1.1.2

indent-rainbow
ode
8.3.1

indenticator
Sir
0.7.0

inline-fold
moa
0.2.6

js-debug
ms-
1.96.0

js-debug-companion
ms-
1.1.3

jsdoc-highlight-code
gal
0.0.1

jsonresume
ref
0.0.3

line-link
Kev
0.0.1

markdown-preview-enhanced
shd
0.8.15

mathpadpp
cln
1.0.3

multi-cursor-case-preserve
Car
1.0.5

nord-visual-studio-code
arc
0.19.0

oxc-vscode
oxc
0.15.2

package-json-upgrade
cod
3.1.0

postman-for-vscode
Pos
1.5.1

pretty-ts-errors
Yoa
0.6.1

pylint
ms-
2024.0.0

pypi-assistant
twi
2.1.9

python
ms-
2024.23.2024121601

quokka-vscode
Wal
1.0.677

rainbow-csv
mec
3.13.0

ruff
cha
2024.56.0

rust-analyzer
rus
0.3.2220

shell-format
fox
7.2.5

shellcheck
tim
0.37.1

sourcery
sou
1.27.0

supermaven
Sup
1.1.12

TabOut
alb
0.2.2

template-string-converter
meg
0.6.1

test-adapter-converter
ms-
0.2.1

Theme-Monokai
ger
0.0.5

trailing-spaces
sha
0.4.1

ts-essential-plugins
zar
0.0.81

tsimporter
pmn
2.0.1

turbo-console-log
Cha
2.10.5

vsc-python-indent
Kev
1.18.0

vscode-docker
ms-
1.29.3

vscode-edit-csv
jan
0.10.0

vscode-eslint
dba
3.0.10

vscode-fileutils
sle
3.10.3

vscode-github-actions
git
0.27.0

vscode-icons
vsc
12.10.0

vscode-jest-runner
fir
0.4.74

vscode-js-profile-table
ms-
1.0.10

vscode-language-babel
mgm
0.0.40

vscode-markdownlint
Dav
0.57.0

vscode-pull-request-github
Git
0.102.0

vscode-pylance
ms-
2024.12.1

vscode-react-refactor
pla
1.1.3

vscode-requirements
jan
0.1.0

vscode-speech
ms-
0.12.1

vscode-sql-formatter
lea
2.1.6

vscode-stylelint
sty
1.4.0

vscode-test-explorer
hbe
2.22.1

vscode-typescript-next
ms-
5.8.20241215

vscode-yaml
red
1.15.0

vsliveshare
ms-
1.0.5941

System Info

Item
Value

CPUs
Apple M1 Pro (10 x 2400)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabledwebgpu: enabledwebnn: disabled_off

Load (avg)
12, 9, 8

Memory (System)
16.00GB (0.19GB free)

Process Argv

Screen Reader
yes

VM
0%

Hi! Do you have testing enabled? What about refresh tests on save? Might be related to a problem I just fixed: https://github.com/microsoft/vscode-python/pull/24611 where testing (like discovery) was blocking the main node thread

@eleanorjboyd , I don't think I do. What are the relevant settings to check?

In your settings (either workspace or user) you would see these:
    "python.testing.unittestEnabled": false,
    "python.testing.pytestEnabled": true,

I see, thanks @eleanorjboyd! I do in fact have pytestEnabled set to true.

Did your fix go live in the pre-release version in the past hour? I'm no longer experiencing the issue even while on pre-release.

hm im not entirely sure- a build failed and then got published so I will have to check if this change got in with it

The fix should be in this version v2024.23.2024121701

Let me know if this is not the case and I will reopen- thanks


setRequestInterception causes 304 to be returned when cache is disabled

Steps to reproduce
When requestInterception is turned on and cache is disabled(setCacheEnabled(false)),
then cached request is called, status of response is 304.
When requestInterception is turned off - everything works fine.
There is repository with this bug.
What is the expected result?
When requestInterception is turned on and cache is disabled, status of response should be 200.
What happens instead?
Status of response is 304
Also it seems that documentation in this place is wrong:

NOTE Enabling request interception disables page caching.

Tell us about your environment:

Puppeteer version: 1.8.0
Platform / OS version: Windows 10
URLs (if applicable): https://github.com/bondom/setCacheEnabled
Node.js version: 8.9.3

I am not sure, but more likely issue is related to devtools-protocol

You can try use this snippet to cache manually
// cache globally to improve 304 and load speed
const cache = {};
const withCacheReq = async (request) => {
  const url = request.url();
  if (cache[url] && cache[url].expires > Date.now()) {
    // mocking the respond with URL
    await request.respond(cache[url]);
    return true;
  }
  return false;
};

const withCacheResp = async (response) => {
  const url = response.url();
  const headers = response.headers();
  const cacheControl = headers['cache-control'] || '';
  const maxAgeMatch = cacheControl.match(/max-age=(\d+)/);
  const maxAge =
    maxAgeMatch && maxAgeMatch.length > 1 ? parseInt(maxAgeMatch[1], 10) : 0;
  if (maxAge) {
    if (cache[url] && cache[url].expires < Date.now()) return;
    let buffer;
    try {
      buffer = await response.buffer();
    } catch (error) {
      // some responses do not contain buffer and do not need to be catched
      return;
    }
    cache[url] = {
      status: response.status(),
      headers: response.headers(),
      body: buffer,
      expires: Date.now() + maxAge * 1000,
    };
  }
};


ingress: Set max stream duration as 0

Description
This commit is to set maxStreamOption for both http and http2 in route
level, mainly for gRPC API.
Signed-off-by: Tam Mach<EMAIL_ADDRESS>Testing
Testing was done locally with hubble-ui ingress, connection drop was no longer
happening.

[x] Conformance test was also done locally.

Just for those curious, what does it mean for this value to be 0 and why is it useful to configure this? Does Envoy otherwise terminate connections that live longer than some period?

Just for those curious, what does it mean for this value to be 0 and why is it useful to configure this? Does Envoy otherwise terminate connections that live longer than some period?

The max stream duration is the maximum time that a stream’s lifetime will span. If the value is 0, the stream duration managed by http connection manager can last indefinitely, kindly note that it's still bound by stream idle timeout (i.e. the idle stream will get closed eventually). Without this value configured, the stream connection will get closed every 15~ based on default value from envoy.
This was identified during internal testing, however similar symptom can be found in this screen shot https://cilium.slack.com/archives/C02QKQDTVDX/p1650469843731669.

/test

hit flake for test-1.23-net-next, marking ready for review


Is Apache spark integration available?

On maven repository I saw Apache-spark integration for Deeplearning4j.
http://search.maven.org/#search|ga|1|deeplearning4j
Does this means we can use apache spark together with deeplearning4j?
Thanks!

Yes we have an early technology preview. Here's an example: https://github.com/SkymindIO/deeplearning4j/blob/master/deeplearning4j-scaleout/spark/spark-cdh5/src/test/java/org/deeplearning4j/spark/impl/multilayer/TestMaster.java
Because of the way we have built deep learning4j, this also allows you to say: switch in a cuda backend for running GPUs on spark.

Look at spark-cdh5.


Cancelable tasks and object pools

[ ] cancellable tasks
[ ] object pools (dependent of cancellable task)

Fix #241
Fix #242

Current status: need some work to make it compile...

👀

@sagudev You are welcomed to make a PR to make this work :)

👀

I did this just to prevent stale.

👀

@lattice0 Feel free to implement :) https://github.com/fzyzcjy/flutter_rust_bridge/pull/333#issuecomment-1037079219

I'm very much interested in this feature. IMHO this is a must-have feature to have proper MVVM architecture with large data viewmodels. In https://github.com/fzyzcjy/flutter_rust_bridge/issues/241#issue-1075183148, you mentioned that this is already possible. If you choose to make it open-source, I will help making the docs and things that I can.

@fzyzcjy If you are okay with it, could you describe the design you came up with? I assume it would be somewhat like this:
// api.rs in Rust
use flutter_rust_bridge::object_pool;
use flutter_rust_bridge::ObjectPool;
object_pool.get_subpool(1).set("key", "value");
pub fn get_pool() -> ObjectPool {
    ObjectPool()
}

// main.dart in Dart
var objectPool = api.getPool();
objectPool.getSubpool(1).get("key"); // 'value'

Is there any chance, that cancelable tasks will be implemented in the near future?

@LowLevelSubmarine You can copy-and-paste it into your api.rs currently!


Only space owner should be able to create Work Item Type

Related https://github.com/fabric8-services/fabric8-wit/issues/1299

@alexeykazakov snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1510-1

Codecov Report

Merging #1510 into master will decrease coverage by 0.01%.
The diff coverage is 62.5%.

@@            Coverage Diff             @@
##           master    #1510      +/-   ##
==========================================
- Coverage   58.78%   58.76%   -0.02%
==========================================
  Files         121      121
  Lines       14282    14298      +16
==========================================
+ Hits         8395     8402       +7
- Misses       5230     5235       +5
- Partials      657      661       +4

Impacted Files
Coverage Δ

controller/workitemtype.go
78.3% <62.5%> (-1.47%)
:arrow_down:

controller/workitem.go
80.53% <0%> (-0.51%)
:arrow_down:

Continue to review full report at Codecov.

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

@alexeykazakov snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1510-3

@alexeykazakov snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1510-4


allow easier template customization

Hi @twinssbc and thanks for this great widget.
I'm using it in a project and obviously ran into the need of customizing the templates.
I think this is quite common, for a various set of use cases:

showing the calendar with other complex widgets on a view
adding custom data to events

Some options could be provided in order to load different templates without modifying/forking the source code.
Another possible enhancement would be having smaller/specialized templates that could allow customization without touching the main templates, that tends to be quite complex due to the richness of the widget. For example, there could be a separate template for the events-container div, or even for the single cell of a month view. (Just an idea, probably not a good one ;) )
Best regards
Mauro

@bianchimro Yes, there are more and more users asking for similar customisation capability.
I will work on that.

@twinssbc perfect, I will stay tuned for updates.
And thanks for your quick response, good work on the project!

@bianchimro I have added view customisation support in version 0.3.0.
It now supports customisation the event cell in month/week/day view and the event detail section in month view.

great @twinssbc, thanks a lot for your work, I'm going to test it this week in a couple of use cases and let you know how it goes.
I'm going to close this issue now, thanks again!
regards
Mauro


Create fx_training.py

Good.
I have a suggestion: this PR only adds fx_training, pls do no change other files. That is, only one file (fx_training) should be changed.

In https://github.com/AI4Finance-Foundation/FinRL-Meta/pull/218/files, I can see that you changed totally 3 files.

It may cost reviewers to read and check if you changed them.  could you pls not change other files, even deleting and entering few lines of space?

Sure! But it was just for organizing and improving the readability of codes!

It is understandable.   No worry.
It is just more professional that "keep each commit to minimum change, with a self-contained functionality".
Also, you are welcome to submit a PR to organize the codes, if you see fit.

Who's supposed to merge these pull requests into master?

Currently, the team is using this rule "Each change of should be a PR, and each PR should have someone to test before merging."
I just add the available members to "Assignees", you can interact with any one of them.
When you become more familiar with the projects, I can grant you higher access to review PRs.  Thanks.


Adding support for testing with appengine classic

This adds support to use the goapp binary instead of the go binary to run the tests.  This can't be implemented with #26  although I support that initiative too.
More flags are frowned upon sometimes I know for sacrificing simplicity, but many of my projects use appengine classic which still requires the goapp tool to pull in appengine classic code (modified $GOROOT)

What do you think of using some sort of detection rather than a flag? Maybe something based on app.yaml in the working directory?

app.yaml is just the default -- especially when you start using modules, the yaml file will be named something else.  Also detecting on app.yaml would then include other directories that have that file but aren't actually using appengine.
I guess what I'm saying is, I think a flag is the easiest explicit method.  Feel free not to accept the PR though; it's not a big deal.

That makes sense. I don't know if flags will be the long-term solution, but it works for now.
I should give this a quick test before merging. Thanks.


Package maintenance

Landed in https://github.com/metarhia/metaconfiguration/commit/e310f21d07bce7feddbf791674b8582962e5d6dc, https://github.com/metarhia/metaconfiguration/commit/331c45c967dd76530906d38d894ca094cdfd8551, https://github.com/metarhia/metaconfiguration/commit/d6d87a50de9f21584ec1a476af4539c326b7f914, and https://github.com/metarhia/metaconfiguration/commit/0811121c4fb4cc37d1dee192d2245abb464f9b85