fix: filter parent condition

Signed-off-by: Gaius<EMAIL_ADDRESS>
Description

Fix filter parent condition.

Related Issue

Motivation and Context

Screenshots (if appropriate)
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.

Codecov Report

Merging #1277 (6b54855) into main (d318041) will decrease coverage by 0.03%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##             main    #1277      +/-   ##
==========================================
- Coverage   46.07%   46.04%   -0.04%
==========================================
  Files         135      135
  Lines       11353    11355       +2
==========================================
- Hits         5231     5228       -3
- Misses       5551     5556       +5
  Partials      571      571

Flag
Coverage Δ

Object-compatibility-e2etests
?

e2etests
?

unittests
46.04% <66.66%> (-0.04%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

scheduler/resource/peer.go
77.55% <50.00%> (-0.29%)
:arrow_down:

scheduler/scheduler/scheduler.go
85.35% <100.00%> (ø)

cdn/supervisor/progress/progress.go
90.62% <0.00%> (-6.25%)
:arrow_down:

client/daemon/peer/peertask_conductor.go
58.26% <0.00%> (ø)


Remove unused constructors (SEAB-4055)

Description
Located and removed unused constructors using Intellij's code inspections. Quiet a few "problems" caught by the code inspections were false positives and left in place.
Additionally it was requested to refactor constructors that were marked with @SuppressWarnings("checkstyle:ParameterNumber") to use Builders, classes that are used as parameters to @NamedQuery had syntax issues, these were not updated.
Issue
SEAB-4055
Please make sure that you've checked the following before submitting your pull request. Thanks!

[x] Check that you pass the basic style checks and unit tests by running mvn clean install
[x] Follow the existing JPA patterns for queries, using named parameters, to avoid SQL injection
[x] If you are changing dependencies, check the Snyk status check or the dashboard to ensure you are not introducing new high/critical vulnerabilities
[x] Assume that inputs to the API can be malicious, and sanitize and/or check for Denial of Service type values, e.g., massive sizes
[x] Do not serve user-uploaded binary images through the Dockstore API
[x] Ensure that endpoints that only allow privileged access enforce that with the @RolesAllowed annotation
[x] Do not create cookies, although this may change in the future

@denis-yuen I need a little guidance on this issue/pr, I'm having trouble locating constructors that can be modified to builders. It does not appear that I can use a builder in most of the locations where the constructors are being used.

@denis-yuen I need a little guidance on this issue/pr, I'm having trouble locating constructors that can be modified to builders. It does not appear that I can use a builder in most of the locations where the constructors are being used.

If all the constructors that suppress warnings on number of parameters are simply blocked due to being used in queries, I think you can wrap this up with the changes that you currently have and note this in the ticket.  I think this was meant to be a quick refactoring improvement, no real need to dwell on this one


Added GLFW license

Just saw in the ToDo list of the lwjgl3-wiki, that the GLFW license is still missing.

Thanks!


Adds SSH keyfile via command line

This adds the SSH keyfile via command line, since the env.key_filename doesn't seem to work correctly.
It's a special case of the special cases (no -- or =).

Looks good, thanks!


Use our patch of prettier v3 to improve formatting support for style tags

Currently, prettier will add an extra line before the </style> tag, which is undesirable. Here is a screenshot from one of our PRs that demonstrates the problem:

Updating prettier-plugin-ember-template-tag (which recently added support for Prettier 3) and overriding Prettier with our fork solves this issue.
We are using the fork because our PR to Prettier is still pending.
After installing, you'll probably need to restart vscode for the change to take effect.

Ugh, new linting errors. Fixing...


[Docs][Geo Replication] Copy PR 9857 to older versioned docs

Copying recently committed documentation from #9857 to older versions of the docs. Please let me know if we need to include older versions of the documentation or if I included invalid versions. Thanks!

@codelipenghui Do you have any guidance on which versions should get this addition? Thanks
@michaeljmarshall Could you please add this for 2.7.2 docs as well? Thanks

@Anonymitaet it s very general documentation. It applies to most of the documentation.

@sijie OK, thanks for your guidance.


⚠ BCR Bot has degraded performance

In 9f6e187, BCR Bot (https://bcr.alternativasinteligentes.com/BCRApi/web/chatbot) experienced degraded performance:

HTTP code: 200
Response time: 1454 ms

Resolved: BCR Bot performance has improved in 8b50521.


MAISTRA-984 Additional MemberRoll controller tests

I've already written the networkStrategy tests. I'll submit them in a different PR (I need to submit a different PR in between these and the networkStrategy tests).

Thanks. We need somehow to run make test for every PR now.

Ideally we'll soon have a CI system doing that for us ;) As soon as the Brno machine thing is resolved I'll setup a prow instance for us

@mergify refresh

Meh, mergify seems to be broken again. It shouldn't be merging things into this branch

@Mergifyio refresh

@mergify refresh


Past 24 hours feeds and use lost size in sell function

As @adteague proposed - added only current (past 24 hours) feeds to be analyzed by bot.
Also some fixes with getting lot_size to calculate amount in sell function
With previous pulled branches and with this one, bot is working very well right now - no obvious bugs

Awesome, thanks for the contribution. Happy to merge this into main


When using history.replace() to a different URL parameter on the same page, the function component's outer method is not re-executed.

Version
Please replace this sentence with the React Router version that you are using.
Test Case
https://codesandbox.io/s/react-router-gh6n7
Steps to reproduce
https://codesandbox.io/s/crazy-wildflower-ci1re?file=/src/Foo.js
Click the button, and looking at console.log, the method bar was not retriggered. Why?
Expected Behavior
The Bar function should be executed again.
Actual Behavior
When I clicked the button to navigate to the same page but with different URL parameters using history.replace(), the function bar on the outer layer of the function component wasn't re-executed. I don't want to trigger the Bar function in the function component. How can I avoid this problem?

This is just how ES Modules work. Modules are only ever imported and executed once. This has nothing to do with React Router or even React itself.


Add browserify, etc. versions to error messages

nt

actually it might make sense to have that information in http response header as well, especially for determining actual version with using @latest or semver.


Safari on macos

Hi.
I installed "Noto Sans CJK KR" but Safari does not recognize it. (Other browsers do.)
It's silly but I had to use @import or @font-face for Safari.
diff.txt
Now I am totally confused...

Cool - apologies for late response, I'll make a commit with your changes shortly


Automate an release process for the tool to generate its binary

What should be done here?

Via GitHub actions we can automate an release process to provide the tool binary when we push a tag
Update the README to allow users get the binary and no longer requires to have go installed locally

It is done


New UI issues - left menu is "jumping"

Problem description
When user opens sub-menu (f.e. "Tokens"), menu in jumping
Step to reproduce
Steps to reproduce the behaviour:

Open left menu
Open all sub-menu. - "Policies", "Tokens", "Administration"
Scroll menu to the bottom
Click several times on "Tokens"

Expected behaviour
Everything higher"Tokens" sub-menu should stay, everything below should move
Actual behaviour
Everything higher "Tokens" moves, everything below stays.
Private Zenhub Video

We also need to use smooth scroll animation


Android ANR reports

I'm submitting a ...  (check one with "x")

[ ] question
[x ] any problem or bug report

OS:  (check one with "x")

[x ] Android
[ ] iOS
[ ] Browser

cordova information:  (run $> cordova plugin list)
cordova plugin list
com.rsginc.exceptionthrower 1.0.0 "com.rsginc.exceptionthrower"
com.rsginc.heartbeat 1.0.0 "Heartbeat"
com.rsginc.mobilesurvey 1.0.0 "Trip Recorder guts"
com.rsginc.proguard 2.0.0 "Cordova plugin ProGuard"
cordova-android-play-services-gradle-release 1.4.6 "cordova-android-play-services-gradle-release"
cordova-android-support-gradle-release 1.4.7 "cordova-android-support-gradle-release"
cordova-custom-config 5.1.0 "cordova-custom-config"
cordova-plugin-app-version 0.1.9 "AppVersion"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-geolocation 4.0.2 "Geolocation"
cordova-plugin-globalization 1.11.0 "Globalization"
cordova-plugin-googlemaps 2.6.2 "cordova-plugin-googlemaps"
cordova-plugin-inappbrowser 2.0.2 "InAppBrowser"
cordova-plugin-ionic-keyboard 2.1.3 "cordova-plugin-ionic-keyboard"
cordova-plugin-localization-strings 2.0.0 "Localization"
cordova-plugin-network-information 2.0.1 "Network Information"
cordova-plugin-screen-orientation 3.0.1 "Screen Orientation"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusbar 2.4.2 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-sqlite-storage 2.6.0 "Cordova sqlite storage plugin"
cordova-support-google-services 1.3.1 "cordova-support-google-services"
cordova-support-kotlin 1.1.0 "undefined"
es6-promise-plugin 4.2.2 "Promise"

If you use @ionic-native/google-maps, please tell the package.json (only @ionic-native/core and @ionic-native/google-maps are fine mostly)
    "@ionic-native/core": "4.7.0"
    "@ionic-native/google-maps": "4.8.2"

Current behavior:

I'm getting 'application not responsive' reports in the Play Store which have a similar signature, implicating this plugin's code.
Expected behavior:

No ANRs.
Screen capture or video record:
"main" prio=5 tid=1 TimedWaiting
  | group="main" sCount=1 dsCount=0 flags=1 obj=0x767de168 self=0x7da3014c00
  | sysTid=19778 nice=0 cgrp=default sched=0/0 handle=0x7e295e7560
  | state=S schedstat=(<PHONE_NUMBER>95<PHONE_NUMBER>39 1302077 ) utm=23312 stm=19312 core=1 HZ=100
  | stack=0x7fc7d68000-0x7fc7d6a000 stackSize=8MB
  | held mutexes=
  at java.lang.Object.wait (Native method)
- waiting on <0x0e2ac476> (a java.util.HashMap)
  at java.lang.Object.wait (Object.java:422)
  at plugin.google.maps.PluginMarker.clear (SourceFile:184)
- locked <0x0e2ac476> (a java.util.HashMap)
  at plugin.google.maps.PluginMarker.onDestroy (SourceFile:65)
  at org.apache.cordova.PluginManager.onDestroy (SourceFile:297)
  at org.apache.cordova.CordovaWebViewImpl.handleDestroy (SourceFile:482)
  at org.apache.cordova.CordovaActivity.onDestroy (SourceFile:315)
  at android.app.Activity.performDestroy (Activity.java:7683)
  at android.app.Instrumentation.callActivityOnDestroy (Instrumentation.java:1306)
  at android.app.ActivityThread.performDestroyActivity (ActivityThread.java:4672)
  at android.app.ActivityThread.handleDestroyActivity (ActivityThread.java:4705)
  at android.app.servertransaction.DestroyActivityItem.execute (DestroyActivityItem.java:39)
  at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:145)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:70)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1926)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:214)
  at android.app.ActivityThread.main (ActivityThread.java:6986)
  at java.lang.reflect.Method.invoke (Native method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:493)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)

[Android]
$> adb shell screenrecord /sdcard/capture.mp4
$> adb pull /sdcard/capture.mp4 ./
[iOS]
Use QuickTimer player on Mac
--->
Related code, data or error log (please format your code or data):
Please share your project files on Github or others(Bitbucket, Gitlabs...etc).
If you don't want to share your project files, please create a demo project, then share it.

Screen captures, and/or native logs(such as Logcat, xcode logs) are appreciate.

Giving much information, you are waiting time is less.
Thank you for your cooperation.

Support this plugin activity
I appreicate if you give me a beer :beer: from here

Please share your project files on GitHub repository.

Doesn't that stack trace stand on its own? org.apache.cordova.CordovaActivity.onDestroy leads to plugin.google.maps.PluginMarker.clear (SourceFile:184) which isn't getting cleaned up in time...

I think the problem is related with your code. I can't reproduce it. If you don't want to help me, please debug by yourself.

Ping


Plugin depending on System.Drawing.Common cannot be used properly

Describe the bug
When using the PluginLoader to load a library that references System.Drawing.Common, anytime any code executes from your plugin that uses a component from that library (PrintDocument in our case), the code blows up with an error claiming System.Drawing is not supported on this platform..  Obviously that is cross platform now (and I'm running this on Windows to boot).
To Reproduce
Steps to reproduce the behavior:

Add a reference to System.Drawing.Common to your plugin project.
Write some basic functionality that uses that library (instantiating a PrintDocument is sufficient).
Use McMaster.NETCore.Plugins 0.2.0 in you main project
Load primary DLL of your plugin using PluginLoader
Use reflection (or whatever is easiest) to call the offending System.Drawing code
See the exception generated

Expected behavior
I would expect this code to work properly as if it weren't being loaded by a plugin
Additional context
As a temporary workaround, if I use the PluginLoaderOptions.PreferSharedTypes flag and reference System.Drawing.Common directly in my host project, things work properly if that helps at all.

Dang, my fix only works on macOS. I’ll have to find a Windows machine to figure out why this failed on AppVeypr.

@natemcmaster thanks for looking into this so quickly!
Unfortunately it hasn't seemed to resolve the issue on my end.  I upgraded to 0.2.1, uninstalled System.Drawing.Common from my kernel project and turned off "PreferSharedTypes" and I still see the System.Drawing is not supported on this platform. error.  Maybe I'm doing something else wrong? Or have an even edgier case?

Can you share the .deps.json file from your plugin?

Here you go:
Phoenix.Service.Printing.deps.txt

Huh. Your deps.json file looks fine. What is happening is that the "lib/netstandard2.0/System.Drawing.Common.dll" file is being loaded, not the "runtimes/*/lib/netcoreapp2.0/System.Drawing.Common.dll" file. This is what changes in 0.2.1 were supposed to fix.
The loader will still get lib/netstandard2.0/System.Drawing.Common.dll depending on how you prepared your plugin. If you are zipping up bin/Release/netcoreapp2.1/, you won't have the right files. dotnet publish should be used. Can you share which files are in your plugin?
 "System.Drawing.Common/4.5.1": {
        "dependencies": {
          "Microsoft.NETCore.Platforms": "2.1.0",
          "Microsoft.Win32.SystemEvents": "4.5.0"
        },
        "runtime": {
          "lib/netstandard2.0/System.Drawing.Common.dll": {  // This is being loaded.
            "assemblyVersion": "<IP_ADDRESS>",
            "fileVersion": "4.6.26919.2"
          }
        },
        "runtimeTargets": {
          "runtimes/unix/lib/netcoreapp2.0/System.Drawing.Common.dll": { // This (or runtimes/win/) should be loaded.
            "rid": "unix",
            "assetType": "runtime",
            "assemblyVersion": "<IP_ADDRESS>",
            "fileVersion": "4.6.26919.2"
          },
          "runtimes/win/lib/netcoreapp2.0/System.Drawing.Common.dll": {
            "rid": "win",
            "assetType": "runtime",
            "assemblyVersion": "<IP_ADDRESS>",
            "fileVersion": "4.6.26919.2"
          }
        },
        "compile": {
          "ref/netstandard2.0/System.Drawing.Common.dll": {}
        }
      },

Yep, I am using dotnet publish for this, not just the bin directory.
Are you asking which libraries are directly referenced by the plugin? If so:
<PackageReference Include="AutoMapper" Version="7.0.1" />
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="5.0.1" />
    <PackageReference Include="CenterEdge.Common.Correlation.Middleware" Version="0.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.3" />
    <PackageReference Include="Phoenix.Microservice.HealthCheck" Version="0.1.1" />
    <PackageReference Include="Phoenix.Microservice.ModelBinding" Version="1.4.5" />
    <PackageReference Include="Phoenix.Microservice.Results" Version="1.4.5" />
    <PackageReference Include="Phoenix.Microservice.Swagger" Version="1.4.5" />
    <PackageReference Include="Phoenix.Microservice.UrlRewrite" Version="0.1.1" />
    <PackageReference Include="Phoenix.Microservice.Validation" Version="1.4.5" />
    <PackageReference Include="Serilog.AspNetCore" Version="2.1.1" />
    <PackageReference Include="Serilog.Formatting.Compact" Version="1.0.0" />
    <PackageReference Include="Serilog.Settings.Configuration" Version="2.6.1" />
    <PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" />
    <PackageReference Include="System.Globalization.Extensions" Version="4.3.0" />
    <PackageReference Include="System.Net.Http" Version="4.3.3" />
    <PackageReference Include="System.Net.NameResolution" Version="4.3.0" />
    <PackageReference Include="System.Net.Primitives" Version="4.3.0" />
    <PackageReference Include="System.Net.Security" Version="4.3.2" />
    <PackageReference Include="System.Net.Sockets" Version="4.3.0" />
    <PackageReference Include="System.Reflection.TypeExtensions" Version="4.5.1" />
    <PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
    <PackageReference Include="System.Threading.Tasks.Parallel" Version="4.3.0" />
    <PackageReference Include="System.Threading.Thread" Version="4.3.0" />

    <ProjectReference Include="..\CenterEdge.Printing\CenterEdge.Printing.csproj" />

One maybe possible issue here is the referenced project CenterEdge.Printing references CenterEdge.Barcodes which is where the System.Drawing.Common reference comes into play (the plugin project itself doesn't reference System.Drawing.Common)

I tried adding a reference to System.Drawing.Common directly to my plugin project with no improvement.

I meant which files are in the plugin folder? When you are calling PluginLoader.CreateFromAssembly(path), what exactly is in path? I'm expecting to see a "runtimes/" folder next to your "Phoenix.Service.Printing.deps.json" file with two versions of System.Drawing.Common.dll in it.

I'll re-open this. I thought I had it fixed because I was able to write this test to reproduce the error. Any chance you can help be create a minimal repro?
See https://github.com/natemcmaster/DotNetCorePlugins/blob/master/test/TestProjects/DrawingApp/DrawingApp.csproj and https://github.com/natemcmaster/DotNetCorePlugins/blob/8f5c28fa70f0869a1af2e2904536268f184e71de/test/Plugins.Tests/BasicAssemblyLoaderTests.cs#L52-L67 for my repro.

Sure. I'll see what I can come up with.  The main difference i see from the get go is that your project is .NET Core 2.0, where mine is 2.1.  I'll mess with your repro app and see where I get.

I ruled out the 2.1 stuff being an issue.  But I do see a significant difference in the test that you have and the real world scenario I'm using.  The test directory is not the result of a publish. It only has these files:

No runtime directories, etc.
When it goes to resolve PrintDocument it is getting the type from "file:///C:/Users/gbrown/.nuget/packages/system.drawing.common/4.5.1/runtimes/win/lib/netcoreapp2.0/System.Drawing.Common.dll" which passes your check of it containing "runtimes", but maybe isn't entirely accurate.
I'm a little stuck in that I can't get this project to publish in the same way my Printing project publishes for some reason. The configuration window looks a little different and it never outputs the runtime folder, etc

Oh, I see why the config window was different.  One is Microsoft.NET.Sdk.Web the other is Microsoft.NET.Sdk

Oh... so here is a big difference.
Your unit test project references DrawingApp via TestProjectRefs.targets  I feel like that probably is having an impact on things.

Strike that.  I nixed it from the project and just referenced the published folder and it worked still.  I'm not sure if the test isn't good enough or maybe there is just some other variable.  I'll keep digging at it and let you know.

Thanks for digging more. This one is a mystery to me.
The piece I'm interested in is what happens when this method is called and library.Name == "System.Drawing.Common". You will probably have to pull in my source into your project and replace PackageRef with ProjectRef to McMaster.NETCore.Plugins so you can drop a debug point here.
https://github.com/natemcmaster/DotNetCorePlugins/blob/8f5c28fa70f0869a1af2e2904536268f184e71de/src/Plugins/Loader/ManagedLoadContext.cs#L127-L161

Okay, so I stepped through that code and it loads System.Drawing.Common.dll from the main folder (peer to the plugin assembly by default.
I tried forcing it to skip that, and it then grabs it from C:\\Users\\gbrown\\.nuget\\packages\\system.drawing.common\\4.5.1\\lib/netstandard2.0/System.Drawing.Common.dll
That doesn't work either.
If I force it to skip that, it tries to from the peer library again in the PlatformInformation.ManagedAssemblyExtensions loop.  I don't see anywhere that it tries to load from the runtimes directory.
If I manually change the path in the debugger to runtimes\win\lib\netcoreapp2.0\System.Drawing.Common.dll it works.

Wait... scratch all that.  I don't think I was updated 🤦♂

Nm, I was updated, just not to your last unrelated commit.  Anyway.  Stuck at the same point.

Hmmm, another wall I just hit when trying to get it to work in the context of the test project:
Could not load file or assembly 'Microsoft.AspNetCore.Mvc.ViewFeatures, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
Could not load file or assembly 'Microsoft.AspNetCore.Mvc.Abstractions, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.'```

I'm pointing your unit test directly to the plugin directory that I'm using in my application.  It bombs out like this, whereas in my application does not using the same calls (mine bombs out later when I get to drawing).  It has to to with my base probject references `Microsoft.AspNetCore.All` so it is able to cope.  If I add that to the test project, I can't get it to run the test for some reason (like it won't run at all, it doesn't fail).

All of those DLLs show up in a "refs" folder when I publish the plugin.  Maybe also of note: System.Drawing.Common _and_ System.Drawing DLLs are also in there.  So there are actually **3** copies of the Common library.  But also System.Drawing which is where I'm guessing its falling down since its complaining about System.Drawing and not System.Drawing.Common.

How can I help? I’m not sure how to reproduce the errors you’re seeing. I’d love to get to the bottom of this.

I'm going to try to put together a plugin that mimics the problem but with less code. Then I can ship it over to you if that works.  Please stand by.

Phoenix.Client.ServiceTest.zip
I threw together the barebones needed for our host application.  appsettings.json tells it where to look to load the plugin.  So just change that into the parent directory of the unzipped plugin. The Client.Service copies everything in that directory into a subfolder under itself calls Plugins and then loads it.
One the service is running you can check out to make sure it is loaded properly by hitting http://localhost:{port}/swagger/ui in the browser.  You should see a single endpoint there called /test/print.  If you POST to that endpoint, it generates the PlatformNotSupportedException

Thanks for the repro. This helped me identify the problem.
Your host application has this property in it:
<RuntimeIdentifier>win-x64</RuntimeIdentifier>

This makes your host application a self-contained app. I've added more details here for why this doesn't work for plugins with RID assets: https://github.com/natemcmaster/DotNetCorePlugins/issues/14
Until we can fix #14, there are basically 2 solutions:

make System.Drawing.Common a dependency of Phoenix.Client.ServiceTest, and add any type from System.Drawing.Common to the "shared types" parameter on PluginLoader.CreateFromAssemblyFile(string assembly, Type[] sharedTypes)
remove <RuntimeIdentifier>. This will make your app framework-dependent instead of self-contained. In framework-dependent mode, the resolution of the windows-specific version of System.Drawing.Common.dll should work dynamically.

Ahhh.  That makes more sense why we couldn't see this happening in the test app.  Thanks for figuring that out. Unfortunately we're running our actual host app as as windows service, so to the best of my knowledge, having a RID is required.  So this sound like potentially a bug in .net core itself? Or do you think there is a way you can address it just in the plugin?

I don’t believe self-contained is required to run a Windows service. Framework-dependent apps should run just fine in that environment.
Regardless, we can still find a way to make the RID graph work for self-contained. It will probably mean putting a copy of the rid graph in this library. It’s not exactly a bug in .net core, just an annoying limitation.

According to this, it is required:
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/windows-service?view=aspnetcore-2.1

I'm pretty sure you can run windows services framework dependent. We're doing it.
The syntax is tricky because you have to specify the path to dotnet.exe, but you can install them with SC.exe if you use the format:
sc create "MyServiceName" binPath= "C:\Program Files\dotnet\dotnet.exe C:\path\to\my\service\foo.dll --win-service"
(The space after the "=" is intentional.)

=> https://github.com/aspnet/Docs/issues/9214
I'm going to close this particular issue as I believe the original issue was addressed, at least for framework-dependent apps. Let's use #14 to follow up on the self-contained story. Solving this one isn't a simple hot fix -- it may involve adding new API.

@natemcmaster Unfortunately if I use that UseAppHost bit and leave out the RID, I get this error:
NETSDK1066	A RuntimeIdentifier must be specified to publish a framework-dependent application with an application host.
And that is using the lastest SDK.  So I think maybe I'm still stuck on that, unless I misunderstood. Its fine for the moment as the workaround works just fine.  But thought I'd let you know.

@natemcmaster it looks like currently you need to specify a RID still when using <UseAppHost>.

@nathanaw thanks for the tip! That got us over this hump.


Fix altair dependency

Ensures altair version 4 is installed rather than version 5 so that charts continue to render correctly.
Closes #1307
See discussion here for report of problem

There appears to be an issue with the autolinter. I'll check that later.


[doc] Get Started/Download and Install/Docker: lack of docker login step before pull the kusion image

Enhancement
following that tutorial, before pulling the kusion docker image，users need to login to docker hub, or they will get Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: TLS handshake timeout
re #160

and in this tutorial, to use the specified version of kusion image, there's no need to first pull the defaulting latest version or kusion: https://kusionstack.io/docs/user_docs/getting-started/install/docker#2-custom-version


TestServer.java doesn't work

Software caused connection abort: socket write error
Exception in thread "main" java.net.SocketException: Software caused connection abort: socket write error
	at java.net.SocketOutputStream.socketWrite0(Native Method)
	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
	at java.net.SocketOutputStream.write(SocketOutputStream.java:134)
	at java.io.DataOutputStream.writeInt(DataOutputStream.java:199)
	at jocket.net.ServerJocket.accept(ServerJocket.java:76)

Sorry, missed the notification. What did you do to get this error? Is it reproducible?
A real socket is used for the handshake between client from server.
Probably your network setup is not compatible with the way the socket is initialized, i.e.
ServerJocket:
srv.bind(new InetSocketAddress(InetAddress.getByName(null), port));
JocketSocket:
Socket s = new Socket(InetAddress.getByName(null), port);
I admit I don't precisely remember why it is initialized this way :)

Closing after 7 years inactivity :)


Try run_sorters rather than run_sorter

run_sorters has the nice feature that you can parallelise backend across CPU's or dask for free. This can be hidden from user and either sorter_name or [sorter_1, sorter_2, ...] is passed at high level.
The only questions are 1) check the difference in signature between run_sorter and run_sorters, check how different kwargs are passed. 2) How best to expose the API options (loop, cpu, dask).

Looking at the code it would be very nice to use run_sorters to avoid duplication, it even provides keep raise overwrite methods similar to spikewrap. Currently you loose a little control on the output folders because on the working directory is passed rather than specific output folder. Also, it may require a little more overhead in spikewrap because all sorter / sorter paths need to be contactenated into list prior to use. It may also make more sense to have a loop in spikewrap above both the sorter and postprocessing level so these can be run together. Nonetheless definately worth looking at the source code for run_sorters, considering the extension to multiprocessing / dask, and discussing with SI team if implementing this in spikewrap is going to be anything more than very straightforward, as there is no point reinventing the wheel.
However, for now am going to close and link to another PR as tthe main considerations here are really multiprocessing.


Improper parsing of composite data structure

JSON:
"param"  : 1,
"params" : [
              2,
              {"A" : 3,
               "B" : [
                        {
                           "C" : 4,
                           "D" : 5
                        },
                        6
                     ]
              },
              7
           ]

Result:
[DOTDICT] (2/1) > {param} [INT]  :  1
[DOTDICT] (2/2) > {params} [LIST] (3/1) > [INT]  :  2
[DOTDICT] (2/2) > {params} [LIST] (3/2) > [DOTDICT] (2/1) > {A} [INT]  :  3
[DOTDICT] (2/2) > {params} [LIST] (3/2) > [DOTDICT] (2/2) > {B} [LIST] (2/1) > [DOTDICT] (2/1) > {C} [INT]  :  4
[DOTDICT] (2/2) > {params} [LIST] (3/2) > [DOTDICT] (2/2) > {B} [LIST] (2/1) > [DOTDICT] (2/2) > {D} [INT]  :  5
[DOTDICT] (2/2) > {params} [LIST] (3/2) > [DOTDICT] (2/2) > {B} [LIST] (2/2) > [INT]  :  6
[DOTDICT] (2/2) > {params} [LIST] (3/3) > [INT]  :  7

This result is like expected.
Now, between key "C" and "D", I add a line to change the initial value of key "C".
"param"  : 1,
"params" : [
              2,
              {"A" : 3,
               "B" : [
                        {
                           "C" : 4,
                           ${params}[1]['B'][0]['C'] : 10,
                           "D" : 5
                        },
                        6
                     ]
              },
              7
           ]

Result
[DOTDICT] (2/1) > {param} [INT]  :  1
[DOTDICT] (2/2) > {params} [LIST] (3/1) > [INT]  :  2
[DOTDICT] (2/2) > {params} [LIST] (3/2) > [DOTDICT] (2/1) > {A} [INT]  :  3
[DOTDICT] (2/2) > {params} [LIST] (3/2) > [DOTDICT] (2/2) > {B} [INT]  :  6
[DOTDICT] (2/2) > {params} [LIST] (3/3) > [INT]  :  7

I am confused about this result. Key "B" has value 6 now and the entire dictionary with key "C" and "D" has disappeared.
Expected is the same data structure like in the first example, but with key "C" has value 10 instead of 4.

Same result if I omit the scope of "C" while changing the initial value:
"params" : [
              2,
              {"A" : 3,
               "B" : [
                        {
                           "C" : 4,
                           ${C} : 10,
                           "D" : 5
                        },
                        6
                     ]
              },
              7
           ]

Result:
[DOTDICT] (1/1) > {params} [LIST] (3/1) > [INT]  :  2
[DOTDICT] (1/1) > {params} [LIST] (3/2) > [DOTDICT] (2/1) > {A} [INT]  :  3
[DOTDICT] (1/1) > {params} [LIST] (3/2) > [DOTDICT] (2/2) > {B} [INT]  :  6
[DOTDICT] (1/1) > {params} [LIST] (3/3) > [INT]  :  7

Expected: Error message about a parameter (${C}) that does not exist at this position.

hm... this we had already. Should give an error message...

The same in dot notation:
"C"  : 1,
"params" : [
              2,
              {"A" : 3,
               "B" : [
                        {
                           "C" : 4,
                           ${params.1.B.0.C} : 10,
                           "D" : 5
                        },
                        6
                     ]
              },
              7
           ]

Result:
Error: 'A key with name '${params.1.B.0.C}' does not exist at this position. Use the '<name> : <value>' syntax to create a new key.'!
But should work.
No problem with this syntax if value is overwritten outside the initial definition of data structure:
    "C"  : 1,
    "params" : [
                  2,
                  {"A" : 3,
                   "B" : [
                            {
                               "C" : 4,
                               "D" : 5
                            },
                            6
                         ]
                  },
                  7
               ],
    ${params.1.B.0.C} : 10

JPP_2004, JPP_2005, JPP_2006

The fix was pushed to stabi branch
Ready for ROBFW-AIO 0.13.2


New feature: a bit more than "timers" ...

All my previous requests come from the need to have an addon for building a kind of "television schedule", i.e. plan the playout of several video files during the day for the whole week. So, it could be a kind of idea for a new addon.
Practically it means to be able to schedule the play of a specific content (it could be a video, a movie, a picture, ...) at a specific time during the day and then another one at the end of the first and so on, filling all the day and possibly all the week with some video contents. And maybe some music during the night!
This need comes from the non-profit organization I'm working for, where we are trying to set up a kind of TV channel (inserted into the IPTV system) to be streamed inside an hospital, up to the rooms or even the beds of the patients, watching TV and feeling better!
What do you think? could it be feasible?
I'd like to know your opinion on this and, maybe, a possible plan and availability date, should you agree.
Thank you very much for your attention! Ciao
Fabio

@bttfba
Actually I can take a look at your previous feature requests but I can't promise if and when I am going to implement these. I am very busy and there isn't too much spare time left.
I am going to comment your feature requests but I won't program a more specialized or totally new addon.

Thank you, Heckie75, i understand.
I'll try to suggest this activity as a new addon on the general Kodi forum, maybe there is someone willing to try
Thanks again, i'm going to close this issue


README does not explain how to trigger the first fetch

From the README, it is unclear that we need to explicitly trigger the first fetch. The readme says "This setup will immediatly call fetch twice (for records 0-4 [page 0] and records 5-9 [page 1])"... but actually it won't.
I think the solution is to add
on-init=(action 'initializeReadOffset')

to the template, and an implementation of initializeReadOffset that just does this:
dataset.setReadOffset(0);
Sound right? If so, I'll make a PR.

100% agree, this is outdated documentation from the era before 1.0 and  "only explicit actions can change the state"

@benshine The README says the "setup will immediatly call fetch twice", but that is no longer the case since the 1.0 era. The README should says the "setup will immediatly trigger the on-init action".
Once the readOffset is defined, it will trigger the fetch action

I was thinking we should at least get a branch going that guys everything that is wrong in the readme.

I don't know the library well enough to fix everything wrong in the readme, but I can at least fix this particular bit!


Board filling game

Added a board filling game with the following rules:

Enter coordinates to put the pieces on the board.
Enter (0, 0) to pass the turn.
Try to fill the board with as few turns as possible

Thank you


chore: create a README file that describes what each crosswalk function does

This does not mean redundant documentation of each function in details. Those details would be in roxygen2 format within each .R file. The purpose of this README file is to help us quickly figure out "which function" to source.

we'll include args now in both docstrings and tutorial for ease of referencing


[Bug]: Unable to set recurring dateTime

What happened?
In your readme, you state:
Banner Scheduling: Schedule your banners to be displayed at specific times or on a recurring basis.
Which is fantastic and exactly what I need.
When I click on the scheduling tab, I see where I can set a start time and end time, however, I fail to see any reoccurrence options. Was I misunderstanding the feature?
My app has a maintenance period every night. I would like to set something like, everyday between this time and this time I want the banner to be displayed. Is that possible, or was I misreading what you were trying to communicate?
How to reproduce the bug
Click on the scheduling tab. I do not see any reoccurrence options.
Package Version
0.0.8
PHP Version
8.2
Laravel Version
11.21
Which operating systems does with happen with?
macOS
Notes
No response

Thank you for reaching out!
This is a mistake on my part. That feature is still on the roadmap to schedule a banner  on a recurring basis. But I forgot to remove it from the readme file. I'll remove it for now to prevent any other misunderstandings.

Thank you, brother! I look forward to that feature.


Pysam012 partdeux

The wheels in #143 were not usable due to a dependency on external htslib.

@galaxybot test this

Oh... can't build sdists if the imageset doesn't contain a docker image. Created #157.

@galaxybot test this

Copied pysam-<IP_ADDRESS>-cp27-cp27m-macosx_10_6_intel.whl to wheels.galaxyproject.org

Successfully loaded on my Sierra laptop.


Add sendgrid resume autoemail popup form

Adding a sendgrid form to automatically email recipients a copy of my resume

need to configure SendGrid sender email:

[x] - set up DNS
[ ] - verify sender


L515 Depth Image Rotated

Required Info

Camera Model
L515

Firmware Version
<IP_ADDRESS>

Operating System & Version
Ubuntu 18.04

Platform
PC

SDK Version
2.38.1

Issue Description
Hi,
I'm using L515 to acquire both depth image and color image. The color image comes out fine, but the equivalent depth from aligned_depth_to_color comes out rotated 90 degrees clockwise. How can I fix this and have it come out in normal orientation? Also, whenever the cable is agitated during acquisition, the whole screen on my laptop rotates randomly. Could that be related to this issue? Thanks.

I fixed the laptop screen rotating by running "sudo apt-get remove iio-sensor-proxy". It's strange that it only happened to L515 and not Kinect or D435. Anyways, I still need help with getting the depth image right. Thanks.

I also fixed the rotation issue with aligned_depth_to_color. I deleted some lines that relate to enabling IR and apparently that results in the picture being rotated. Weird, isn't it?


No related artwork results

Seems like there are no related artwork results on force or martsy (there are on eigen). Other works from auction works.

Closed by https://github.com/artsy/force/pull/1045

Is this fixed? I am still not seeing any related results any works, with artsy genomes or partner genomes.  Related Artists rail isn't populated either.

@madeleineb this is fixed! Can you link to that artwork page?
It looks fine to me.... https://www.artsy.net/artwork/54527f2f7261694c1d3d0100

Weird... it's working for me now too, I checked a number of artwork pages but also https://www.artsy.net/artwork/the-haas-brothers-meryl-sheep-beast-settee. 🤔 well, glad it's fixed


adding  custom icon from eye-icon(default) for hide-show password in login/signup activity

Currently, the login/sign up activity doesn't have a hide-show password icon
login

signup

sure go for it.


workbench & analysis: assorted fixes

locli:

report schema improvements for data publishing
beginning of sectioning in reports
generalise and increase reliability of report templates
various progress & error reporting enhancements
conditional decoding error tolerance
fixes: slot gap detection, legacy chainsync decoding,
FS & Net IO metrics

workbench:

partial JSON compactification for human readability
make tx-generator.service respect the runScriptFile option
partial fix for the message frequency analyser
RTS mode & verbosity control
fixes: inlne filter expressions, cabal prebuild
ad-hoc sets, local & remote

bors r+

bors r+

bors r+

bors r+

bors r-

bors r+

bors r+


[RFC] Semi-supervised anomaly detection

What problems are you trying to solve?
The anomaly detection (AD) plugin creates machine learning (ML) models that can adapt to changes in data distribution over time without modifying the code. But few machine learning (ML) models are perfect. Misclassifications of anomalies falsely alert customers to non-issues or unnecessarily missing critical events. Also, anomalies are personalized. An anomaly from one person might be normal for another person. It would be nice if a user could mark anomalies as false positives or undetected to equip the AD plugin with fine-grained domain knowledge. With feedback for anomaly detection, this kind of misclassification can be communicated to the anomaly detection system. The system can adjust accordingly so that such misclassifications are less likely to occur. OpenSearch customers cannot provide feedback to the anomaly detection (AD) plugin when a detector is running.
What are you proposing?
Semi-supervised anomaly detection (SSAD) sets up a domain-specific feedback loop. First, a user notices an error and lets AD know what is wrong. AD then triages the problem in multiple ways to improve model performance. Next, the user reviews the results of different changes on hyperparameters or feature weights. Finally, the loop iteration finishes when the user adopts a change, or nothing works. For example, OpenSearch customers will be able to mark past anomaly detector misclassifications as false positives or false negatives.
What is the user experience going to be?
Users may not be sure that a particular detector configuration is what they want. They are trying to make sense of the underlying data space by experimenting with configurations, backtracking based on anomaly results, and rewriting their detector configuration, aiming to discover relevant anomalies. It is fundamentally a multi-step process with the user's interests specified in feedback, including

The model produces too many spurious warnings.
The model misses too many anomalies.
The data point is not an anomaly (false positive).
One anomaly is undetected (false negative).

The workflow of our feedback loop is as follows.
After running a detector through preview or real-time/historical analysis, AD presents a user anomaly results, and the user can review the results' relevance. For example, we can ask the user to quantify the number of false and undetected anomalies.
Q.1: How many false anomalies do you see?
A: 0
B: 1~3
C: 3 above
If the user selects Q1.A, we then ask
Q.2: How many anomalies are undetected?
A: 0
B: 1~3
C: 3 above
If the user selects Q1.B, we direct them to flag the errors and show revised result graphs. The user can modify her feedback on previously seen samples.
If the user selects Q1.C, it is not easy for the user to label each result they disagree with. The situation also indicates something fundamental about the whole detector is wrong. Therefore, we direct them to multiple result graphs derived from different retrained models. For instance, graph one is derived by increasing the detector interval, while graph two is derived by changing each feature's weight. We ask users which chart looks best and change detector configuration accordingly. If done right, a user can see more actionable anomaly detection results using improved models. Unfortunately, sometimes there is no good fix (e.g., noisy input data), and users need to reconfigure the detector.
Why should it be built? Any reason not to?
The quality of an AD model depends on the data the model is trained on, and model hyperparameters. As a general anomaly detection pipeline, we don't make assumptions about the domain of data inputs and use parameter defaults applicable to everyday scenarios. Users can improve the quality of the AD model by exploring features or tuning parameters. But there are a lot of manual efforts and ML knowledge involved. SSAD is a more economical (or necessary for users without ML knowledge) way for users to partake in the model improvement.
What will it take to execute?
We need to set up a feedback loop process that assimilates customer feedback in the above user experience section. This project entails a new infrastructure to collect user inputs, quality check, and retrain models.
Addressing the too many/few anomalies feedback would entail the following changes.

We allow users to filter anomalies by anomaly grade and confidence within a range when viewing the anomaly result page.
On detector creation

We suggest different intervals. Larger intervals may smooth out random noises and thus reduce the number of anomalies. On the other hand, smaller intervals can recover smoothed anomalies and thus increase the number of anomalies.
We suggest different shingle sizes. Larger shingle size reacts more slowly to changes and thus less anomalies. Smaller shingle size reacts to changes faster and thus more anomalies.
We suggest enabling serial differencing to remove linear trends and seasonal behavior to reduce anomalies.
We suggest feature weights to reduce/increase anomalies or remove certain false positives or negatives.
We suggest different sample size. Usually, when we want x% labelled as anomalies, we use 1/x% samples. For example, if 0.5% should be anomalies, we want to have 1/0.5% = 200 samples. When there are too many/few anomalies, we can increase/decrease sample size.

We allow dynamic adjustment of anomaly rate and sample time decay rate. It may not be immediately apparent that the sample time decay rate relates to the number of anomalies. However, the higher time decay rate, more recent samples are preserved, the model is reacting more to local than global context, we may thus detect more anomalies.

We also provide customization for a high-cardinality anomaly detection (HCAD) detector that has multiple models.

An HCAD detector will likely emit too many anomalies for human consumption. Instead, we can consolidate related anomalies and show a clustered picture of all anomalies. For example, CPU usage 98% of entity one and CPU usage 96% of entity two can stay in the same cluster and be graphed as one anomaly.
We cluster anomalies based on features and their attributions. When a user flags a false positive or negative, we can relay the feedback to entities with similar feature values or attributions after getting customers' consent. We also post-process the patterns within a cluster. For example, most entities within the cluster have the prefix a.b in their names or have attributes x.

It is equally important to allow customers to label examples the model does poorly on. We then mark the positive or negative example and its nearest-K neighbors. The anomaly score of a query point will consider the scores of labeled neighbors.
What are the remaining open questions?
There are three open questions.

How to implement low-latency and high-volume label propagation for a labeled false positive or negative?
How to design a streamlined UX that prohibits intrusive popups that disturbs a user's activity?
How to relay feedback in an entity to other entities via clustering in HCAD?

Request for comments
We are looking for all forms of feedback! Some questions we would like to get your input on include.

What are your use cases of semi-supervised anomaly detection?
Do you have additional feedback beyond what is listed in this RFC?

The model produces too many spurious warnings.
The model misses too many anomalies.
The data point is not an anomaly (false positive).
One anomaly is undetected (false negative).

Are these hard to spot with high dimensionality?

After running a detector through preview or real-time/historical analysis, AD presents a user anomaly results, and the user can review the results' relevance. For example, we can ask the user to quantify the number of false and undetected anomalies.

Would it make sense to have the user select the false positives? Maybe also have a spot to highlight where a false negative happened?

Next, the user reviews the results of different changes on hyperparameters or feature weights.

will the customer review the parameters or AD results from the updated parameters?

Next, the user reviews the results of different changes on hyperparameters or feature weights.

will the customer review the parameters or AD results from the updated parameters?

They will review AD results from the updated parameters.


Bagit Generation should use ES to sort

The generation of the bagit requires the TSV to be ordered by specimen UUID. We currently sort that in the Python code, and should instead request that Elasticsearch return the data already sorted.

This ticket is closing as it is in the wrong repository,  it can be followed here: #BD2KGenomics/dcc-dashboard-service/issues/67


Authentication middleware example

Do you have an example on how to implement a authentication middleware that only authenticates part of the endpoints and not all of them?
Thanks in advance.
//Tagnard

I'm not sure I understand your question and I don't think it is related to this project.
Let's consider that a middleware is a function which takes an http.HandlerFunc (and maybe some other parameters) and returns an other http.HandlerFunc. The HTTPMiddleware function from this project fits this description.
You can see it used here : https://github.com/sarulabs/di-example/blob/9cccc2792366dfce074c66a82e1563758c07c9f0/main.go#L42
m is a middleware that combines two middlewares. One to recover from a possible panic, and the other one to inject the dependency injection container in the request. If you have an authentication middleware, you can add it here.
For example you can create ma to add the authentication middleware to m:
ma := func(h http.HandlerFunc) http.HandlerFunc {
    return m(AuthenticationMiddleware(h))
}

and then you can decide to apply m or ma depending on the route:
r.HandleFunc("/cars", m(handlers.GetCarListHandler)).Methods("GET") // without authentication
r.HandleFunc("/cars", ma(handlers.PostCarHandler)).Methods("POST") // with authentication

Hope it helps.

Thanks for the example, this will help me greatly!


RUM View name is not shown completely when the obfuscation is enabled (Proguard/R8 enabled)

Describe what happened
The obfuscated views are shown with the shrunk names:
Here is an example of what I see in RUM explorer -> attributes -> view:

But all logs are not like this. Some Fragment and Activity names are shown correctly.
Steps to reproduce the issue:
        Datadog.initialize(
            this, DatadogConfig.Builder(
                DATADOG_CLIENT_TOKEN,
                envName = BuildConfig.BUILD_TYPE,
                applicationId = DATADOG_APPLICATION_ID
            )
                .useViewTrackingStrategy(MixedViewTrackingStrategy(trackExtras = true))
                .trackInteractions()
                .setRumEnabled(true)
                .configureDatadogFlavor()
                .build()
        )
        val monitor = RumMonitor.Builder()
            .build()
        GlobalRum.registerIfAbsent(monitor)

Describe what you expected:
The name of the obfuscated views are shown completely.
Additional context

Android OS version: 10
Device Model: Samsung SM-G985F
Datadog SDK version: 1.5.1
Versions of any other relevant dependencies (OkHttp, …): 'com.squareup.okhttp3:okhttp:4.4.1'
Proguard configuration:

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
-keepclassmembers class fqcn.of.javascript.interface.for.webview {
   public *;
}

# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile

# Fabric
-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
#-printmapping mapping.txt

-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

#Disable logging
-assumenosideeffects class android.util.Log {
    public static *** d(...);
    public static *** v(...);
    public static *** i(...);
}

### https://gist.github.com/jemshit/767ab25a9670eb0083bafa65f8d786bb

### Glide, Glide Okttp Module, Glide Transformations
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public class * extends com.bumptech.glide.module.AppGlideModule
-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
  **[] $VALUES;
  public *;
}
# -keepresourcexmlelements manifest/application/meta-data@value=GlideModule 3 For dexguard

### Viewpager indicator
-dontwarn com.viewpagerindicator.**

### Support v7, Design
# http://stackoverflow.com/questions/29679177/cardview-shadow-not-appearing-in-lollipop-after-obfuscate-with-proguard/29698051
-keep class android.support.v7.widget.RoundRectDrawable { *; }

-keep public class android.support.v7.widget.** { *; }
-keep public class android.support.v7.internal.widget.** { *; }
-keep public class android.support.v7.internal.view.menu.** { *; }

-keep public class * extends android.support.v4.view.ActionProvider {
    public <init>(android.content.Context);
}

-dontwarn android.support.**
-dontwarn android.support.design.**
-keep class android.support.design.** { *; }
-keep interface android.support.design.** { *; }
-keep public class android.support.design.R$* { *; }

# https://github.com/Gericop/Android-Support-Preference-V7-Fix/blob/master/preference-v7/proguard-rules.pro
-keepclassmembers class android.support.v7.preference.PreferenceGroupAdapter {
    private ** mPreferenceLayouts;
}
-keepclassmembers class android.support.v7.preference.PreferenceGroupAdapter$PreferenceLayout {
    private int resId;
    private int widgetResId;
}

# https://github.com/dandar3/android-support-animated-vector-drawable/blob/master/proguard-project.txt
#-keepclassmembers class android.support.graphics.drawable.VectorDrawableCompat$* {
#   void set*(***);
#   *** get*();
#}

# Gson uses generic type information stored in a class file when working with fields. Proguard
# removes such information by default, so configure it to keep all of it.
-keepattributes Signature

# For using GSON @Expose annotation
-keepattributes *Annotation*

# Gson specific classes
-keep class sun.misc.Unsafe { *; }
#-keep class com.google.gson.stream.** { *; }

# Application classes that will be serialized/deserialized over Gson
# -keep class com.google.gson.examples.android.model.** { *; }

# Prevent proguard from stripping interface information from TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer

### Retrofit 2
# Platform calls Class.forName on types which do not exist on Android to determine platform.
-dontnote retrofit2.Platform
# Platform used when running on RoboVM on iOS. Will not be used at runtime.
-dontnote retrofit2.Platform$IOS$MainThreadExecutor
# Platform used when running on Java 8 VMs. Will not be used at runtime.
-dontwarn retrofit2.Platform$Java8
# Retain generic type information for use by reflection by converters and adapters.
-keepattributes Signature
# Retain declared checked exceptions for use by a Proxy instance.
-keepattributes Exceptions

-dontwarn retrofit2.adapter.rxjava.CompletableHelper$** # https://github.com/square/retrofit/issues/2034
#To use Single instead of Observable in Retrofit interface
-keepnames class rx.Single
#Retrofit does reflection on generic parameters. InnerClasses is required to use Signature and
# EnclosingMethod is required to use InnerClasses.
-keepattributes Signature, InnerClasses, EnclosingMethod
# Retain service method parameters when optimizing.
-keepclassmembers,allowshrinking,allowobfuscation interface * {
    @retrofit2.http.* <methods>;
}
# Ignore annotation used for build tooling.
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
# Ignore JSR 305 annotations for embedding nullability information.
-dontwarn javax.annotation.**
# Guarded by a NoClassDefFoundError try/catch and only used when on the classpath.
-dontwarn kotlin.Unit
# Top-level functions that can only be used by Kotlin.
-dontwarn retrofit2.-KotlinExtensions

### OkHttp3
-dontwarn okhttp3.**
-dontwarn okio.**
-dontwarn javax.annotation.**
# A resource is loaded with a relative path so the package of this class must be preserved.
-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase

### Kotlin
#https://stackoverflow.com/questions/33547643/how-to-use-kotlin-with-proguard
#https://medium.com/@AthorNZ/kotlin-metadata-jackson-and-proguard-f64f51e5ed32
-keepclassmembers class **$WhenMappings {
    <fields>;
}
-keep class kotlin.Metadata { *; }
-keepclassmembers class kotlin.Metadata {
    public <methods>;
}

### Other
-dontwarn com.google.errorprone.annotations.*

### Android Architecture Components
# Ref: https://issuetracker.google.com/issues/62113696
# LifecycleObserver's empty constructor is considered to be unused by proguard
#-keepclassmembers class * implements android.arch.lifecycle.LifecycleObserver {
#    <init>(...);
#}
-keep class * implements android.arch.lifecycle.LifecycleObserver {
    <init>(...);
}

# ViewModel's empty constructor is considered to be unused by proguard
-keepclassmembers class * extends android.arch.lifecycle.ViewModel {
    <init>(...);
}

# keep Lifecycle State and Event enums values
-keepclassmembers class android.arch.lifecycle.Lifecycle$State { *; }
-keepclassmembers class android.arch.lifecycle.Lifecycle$Event { *; }
# keep methods annotated with @OnLifecycleEvent even if they seem to be unused
# (Mostly for LiveData.LifecycleBoundObserver.onStateChange(), but who knows)
-keepclassmembers class * {
    @android.arch.lifecycle.OnLifecycleEvent *;
}

## Databinding or library depends on databinding
-dontwarn android.databinding.**
-keep class android.databinding.** { *; }

### Kotlin Coroutine
# https://github.com/Kotlin/kotlinx.coroutines/blob/master/README.md
# ServiceLoader support
-keepnames class kotlinx.coroutines.internal.MainDispatcherFactory {}
-keepnames class kotlinx.coroutines.CoroutineExceptionHandler {}
-keepnames class kotlinx.coroutines.android.AndroidExceptionPreHandler {}
-keepnames class kotlinx.coroutines.android.AndroidDispatcherFactory {}
# Most of volatile fields are updated with AFU and should not be mangled
-keepclassmembernames class kotlinx.** {
    volatile <fields>;
}
# https://github.com/Kotlin/kotlinx.atomicfu/issues/57
-dontwarn kotlinx.atomicfu.**

### Kotlin
#https://stackoverflow.com/questions/33547643/how-to-use-kotlin-with-proguard
#https://medium.com/@AthorNZ/kotlin-metadata-jackson-and-proguard-f64f51e5ed32
-keepclassmembers class **$WhenMappings {
    <fields>;
}
-keep class kotlin.Metadata { *; }
-keepclassmembers class kotlin.Metadata {
    public <methods>;
}

### Google Play Billing
-keep class com.android.vending.billing.**

### Adjust SDK, android.installreferrer
-keep public class com.adjust.sdk.** { *; }
-keep class com.google.android.gms.common.ConnectionResult {
    int SUCCESS;
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient {
    com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context);
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info {
    java.lang.String getId();
    boolean isLimitAdTrackingEnabled();
}
-keep public class com.android.installreferrer.** { *; }

Gradle Plugins:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: "androidx.navigation.safeargs"
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
apply plugin: 'com.google.firebase.firebase-perf'

Hi @mahdi13 and thanks for your feedback.
Indeed for now we don't deobfuscate class names (mostly because we don't know about the Proguard/R8 mapping at runtime). This is something we intend to look into, but in the meantime you can add the following lines to prevent obfuscation on those classes only :
-keepnames class  * extends android.app.Activity
-keepnames class  * extends androidx.fragment.app.Fragment

@xgouchet Thanks for your explanations. As far as I know, part of it should be done on datadog's server-side, using retraceer. Probably, the mapping file should also be uploaded by SDK.
Looking forward to having this feature in the future versions.
P.S: For me, the mentioned temporary workaround fixed the problem.

Hi @mahdi13, since version 1.8.0 of the SDK you can give an actual custom name to your views by implementing the ComponentPredicate class, e.g.:
class SampleNavigationPredicate : ComponentPredicate<Activity> {
    override fun accept(component: Activity): Boolean {
        return true
    }

    override fun getViewName(component: Activity): String? {
        return when(component.javaClass) {
            HomeActivity::class.java -> "Home"
            ProfileActivity::class.java -> "My Profile"
            SettingsActivity::class.java -> "Settings"
            else -> null // use the default view name created automatically
        }
    }
}


New error: Property 'value' does not exist on type 'never'

<EMAIL_ADDRESS>packages/@css-blocks/core/src/BlockTree/Block.ts:443:48 - error TS2339: Property 'value' does not exist on type 'never'.

443           let klass = otherBlock.getClass(next.value);
                                                   ~~~~~

packages/@css-blocks/core/src/BlockTree/Block.ts:445:32 - error TS2339: Property 'next' does not exist on type 'never'.

445             let another = next.next();
                                   ~~~~

To repro:

yarn
tsc -b -f packages

This appears to be a correct error. The relevant code looks like this (highlights for emphasis):
    let next = node.next();
    if (isRootNode(node) && next && isAttributeNode(next) && typeof next.namespace === "string") {
//                                  ^^^^^^^^^^^^^^^^^^^^^
      let otherBlock = this.getReferencedBlock(next.namespace);
      if (otherBlock) {
        if (next && isClassNode(next)) {
//                  ^^^^^^^^^^^^^^^^^
          let klass = otherBlock.getClass(next.value);

isAttributeNode returns arg is Attribute where Attribute is { type: "Attribute" }. isClassNode returns arg is ClassName where ClassName is { type: "Class" }. I don't see any other out-of-band assignments to next; I think this code actually does have a bug in it either from a runtime perspective or from an incorrect typings perspective.

cc file authors @chriseppstein @ramitha @amiller-gh for commentary

@RyanCavanaugh Is there some way we could make it easier to work backwards from the error to the problem?  Maybe the if block could report that its condition is unsatisfiable?

I'll look into this right now.

Looks like the error was introduced in https://github.com/linkedin/css-blocks/commit/b9c493866f0cf6916e0ce03a3c9988830e3b2c44
This is what the isAttributeNode() type check was previously<EMAIL_ADDRESS>

I agree with @RyanCavanaugh that this code block isn't reachable and I think the error is very helpful... I wish I would have had it earlier! I agree with @amcasey that an error telling me that one of the branches of the if statement isn't reachable would be a slightly nicer error, but I think I would have been able to sort out my mistake based on the error as-is.


Add files for test time extraction

These files provide functions and a demo notebook that enable extraction of the total test time until a provided threshold or overall test time.
There are included methods for gathering the test time for all cells with the same cycling protocols.
These methods are intended to aid in experiment planning.

Hi @pasinger just to check if you still would like to merge this PR/if this will be come part of the new PR you are writing? Thank you

No need to merge that one anymore. I will write a new one for my current updates!
On Mar 16, 2022, at 12:39 PM, shijingsun-TRI @.***> wrote:

Hi @pasingerhttps://github.com/pasinger just to check if you still would like to merge this PR/if this will be come part of the new PR you are writing? Thank you
—
Reply to this email directly, view it on GitHubhttps://github.com/TRI-AMDD/beep/pull/301#issuecomment-1069333996, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJ5X7KMORMOIIZIYTP3AWLTVAIFCVANCNFSM46X7JZYQ.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>


clarify ambiguities in azure authentication/authorisation

These change are primarily geared at making the intention of articles around AAD authentication clearer.
I had quite a bit of confusion around which articles were relevant to enabling Azure authentication on AKS, compared to enabling Azure-defined authorisation. The problem stems from three layers of configuration available on the cluster:

Enabling RBAC at all
Enabling Azure Active Directory
Enabling Azure RBAC
And each one requires the previous one.

The articles are clear to say Kubernetes RBAC, but once I've seen that Azure AD defined RBAC exists, I've been hesitant to alter cluster settings that might enable Azure RBAC, for fear that I can't turn it off again. It's easy to imagine that Kubernetes RBAC was just a misnaming of the deeply integrated offering. As such in my mind, any talk of RBAC was offputting -- I just want authentication.
I also don't really know what the alternatives to AAD authentication are, if any. managed-aad.md talks about the underlying OIDC implementation, and originally managed-aad.md:24 implied there were other non-kubernetes RBAC services available.
Having a place where the config options (both in terms of authn and authz) are clearly enumerated and distinguished as a jumping-off point would go a huge way towards navigating users towards the solution that lets them make the most of AKS.
I still think it's weird to start the managed AAD article talking about the old implementation. But I guess that's just how the article evolved.

Let me know if I should move the comments in my description to an issue. #75299 is perhaps somewhat related.

@michaelruigrok : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@michaelruigrok: I'm sorry - only the author of this article, @mlearned, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


Url Launcher not working with yahoo mail

Couldn't open YahooMail with UrlLauncher in Android (IOS working fine).
working fine with other apps like Gmail, Outlook, Default Mail client

Hi @subins829
Please provide the information indicated below:

If the issue can not reproduce with plugin sample code, please provide a completed and minimal reproducible code sample.
The output of flutter doctor -v
Reproduction steps, Expected results, Actual results

Thank you!

static Future sendEmail(String receiver, {String? subject}) async {
final queryString = subject != null
? encodeQueryParameters(<String, String>{'subject': subject})
: null;
final Uri emailLaunchUri = Uri(
  scheme: 'mailto',
  path: receiver,
  query: queryString,
);

try {
  await launchUrl(emailLaunchUri);
} catch (e) {
  print(e);
}

}


flacon: 2.0.1 -> 2.1.1

Motivation for this change
Update
Things done

[x] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Flacon segfaults on my machine, when trying to open a file (File -> Add File)
$ flacon
** (flacon:32274): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
(flacon:32274): GLib-GIO-ERROR **: No GSettings schemas are installed on the system
Trace/breakpoint trap

@Mic92 weird, i just went to file, add file and it didnt crash on me at all

Probably some environment variable is not set to make Gsettings working correctly while you are using a Desktop environment such as Gnome.

Hmm dunno I use awesome. So I don't have gnome installed at all
Sent from my iphone
On Mar 5, 2017, 4:02 PM -0600, Jörg Thalheim<EMAIL_ADDRESS>wrote:

Probably some environment variable is not set to make Gsettings working correctly while you are using a Desktop environment such as Gnome.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub (https://github.com/NixOS/nixpkgs/pull/23529#issuecomment-284266690), or mute the thread (https://github.com/notifications/unsubscribe-auth/AAHL701mODs6115BLsvZhh6E0Y0m6SJrks5rizDYgaJpZM4MTcqB).

@Mic92 I added gsettings schemes; I got that inital error on startup but adding a file didn't cause a segfault for me, so maybe this will fix it

I had to point XDG_DATA_DIRS to gtk3 to make it working.


the font name setting for the GTK+ 2 GUI.

found this in help:gfn.

For the GTK+ 2 GUI the font name looks like this: >
:set guifont=Andale\ Mono\ 11

Thanks!


OneDrive Business Authentication

My OneDrive for Business Authentication flow what was previously working is no longer working and I am receiving the following error-
Additional technical information:
Correlation ID: 2188fbc2-9af5-4519-8da5-5219d24a2c0a
Timestamp: 2015-07-20 16:42:38Z
AADSTS90011: The 'resource' request parameter is not supported.
If I remove the resource parameter it says my scope is incorrect, my scope is wl.signin wl.offline_access onedrive.readwrite, which also previously worked

Hi @bscharm,
With OneDrive for Business, you shouldn't pass any scope values to the OAuth flow. You define your scopes through the Azure Management portal when you create your app, and then those permissions are given out on each token. Can you try altering the request to not pass scopes, but still pass the resource, and see if that resolves the error?

I removed scope and added resource and got the same error about resource not being supported (though I am realizing I should not need resource as this is for the "authorization" URL portion of the flow), and if I remove both I get the following error-
Correlation ID: 2d3f2cc7-b554-48bd-af86-499f29b04d87
Timestamp: 2015-07-20 17:11:56Z
AADSTS70011: The provided request must include a 'scope' input parameter.```

This is the URL I am using (without both scope and resource parameters) - `https://login.microsoftonline.com/common/oauth2/authorize?api-version=2.0&response_type=code&client_id=3b6d93d5-2bc0-42c6-abfd-4d1e9bb66626&redirect_uri=https://cloud.ngrok.com/elements/jsp/home.jsp`

Can you remove the "api-version=2.0" query parameter? That shouldn't be there.

that worked, thanks for your help


add web share api

https://blog.hospodarets.com/web-share-api?utm_source=frontendfocus&utm_medium=email

have signed up for the limited release version


Mathematica: 11.0.1 -> 11.2.0

Motivation for this change
Upgrade Mathematica to version 11.2.0.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

Applied to master in 2eeb00441d37b644424a94c04ac8d14d5b099763. Thanks!

Should it be backported to release-17.09?

I think it could be; NixOS 18.03 will be a long way to go.

Done: 80f9d39747dc30cb5f055e2b6718caddd89bef71


TBTA updated: more often committed

@todallman
I just wonder whether the source code being updated since Nov 2015.

I occasionally update the code with minor enhancements, and put these enhancements in the TortoiseHG repository.  I don't know how to update the Github repository; Matthew is the one who did that.
  From: Jeremiah Chung<EMAIL_ADDRESS>
To: JChungYS/TBTA<EMAIL_ADDRESS>Cc: Tod Allman<EMAIL_ADDRESS>Sent: Thursday, January 28, 2016 1:18 PM
Subject: [TBTA] TBTA updated: more often committed (#7)
@todallman I just wonder whether the source code being updated since Nov 2015.—
Reply to this email directly or view it on GitHub.

I believe that Jeremiah put TBTA on github. I put the project I did at the
Hackathon on github but I didn't do anything with TBTA.
Matthew
On Jan 31, 2016 7:13 AM, "Tod Allman"<EMAIL_ADDRESS>wrote:

I occasionally update the code with minor enhancements, and put these
enhancements in the TortoiseHG repository.  I don't know how to update the
Github repository; Matthew is the one who did that.
From: Jeremiah Chung<EMAIL_ADDRESS>To: JChungYS/TBTA<EMAIL_ADDRESS>Cc: Tod Allman<EMAIL_ADDRESS>Sent: Thursday, January 28, 2016 1:18 PM
Subject: [TBTA] TBTA updated: more often committed (#7)
@todallman I just wonder whether the source code being updated since Nov
2015.—
Reply to this email directly or view it on GitHub.
—
Reply to this email directly or view it on GitHub
https://github.com/JChungYS/TBTA/issues/7#issuecomment-177484969.

@todallman I think it is good to have our team using github or something we agree with to collaborate. Thus, I just wonder whether we need to decid TortoiseHG repository or Tortoise-HG. Personally, I think github can be a good choice, as it is free with unlimited number of collaborators. I think bitbucket only allow 5 collaborators for free public account.
Once you decided which one to you, we may think about to contribute on the code. We need someone to keep track of the change. Since there are no much change at this moment. I think you and I can do that. Then different people can collaborate together dealing with issues. BTW, I would like to keep track of the project. I would appreciate if @jonathanmak or @csharpener or other suggest what kind of training/reading materials can help me to do a better job on this. It will be even greater if I can find someone(volunteer) helping me with this.

@munik Thank you for posting your Hackathon on github. I saw the code seems be in Ruby. Thus, I thought you are Ruby programmer. Sorry for the misunderstanding. Thank you for the Hackathon already be a way help TBTA's publicity. I just wonder is there anyway to modify or share the Hackathon  code for the benefit of TBTA. For others information: the Hackathon code posted here: https://github.com/TheBibleTranslatorsAssistant/translate-assistant

Hi @JChungYS I just found this on Google, which might be a good starting point to learn about how github works : https://guides.github.com/activities/contributing-to-open-source/
I think basically there are two types of contributors. There are collaborators, which can update the code directly, and then there are contributors (basically everyone else), who can contribute by submitting a pull request. The owner or contributors can then review the pull requests before merging the changes into the repository.
Automated tests will be very useful in ensuring changes to the code won't break existing functionality. We could start with some smoke tests and add more tests as we implement new features or bug fixes.

I'm perfectly fine with us using Github.  I just haven't learned how to update the project there.
  From: Jeremiah Chung<EMAIL_ADDRESS>
To: JChungYS/TBTA<EMAIL_ADDRESS>Cc: Tod Allman<EMAIL_ADDRESS>Sent: Tuesday, February 2, 2016 11:05 AM
Subject: Re: [TBTA] TBTA updated: more often committed (#7)
@todallman I think it is good to have our team using github or something we agree with to collaborate. Thus, I just wonder whether we need to decid TortoiseHG repository or Tortoise-HG. Personally, I think github can be a good choice, as it is free with unlimited number of collaborators. I think bitbucket only allow 5 collaborators for free public account.
Once you decided which one to you, we may think about to contribute on the code. We need someone to keep track of the change. Since there are no much change at this moment. I think you and I can do that. Then different people can collaborate together dealing with issues. BTW, I would like to keep track of the project. I would appreciate if @jonathanmak or @csharpener or other suggest what kind of training/reading materials can help me to do a better job on this. It will be even greater if I can find someone(volunteer) helping me with this.—
Reply to this email directly or view it on GitHub.


Include query params in http2 requests

Ah wow, thanks for noticing this! I am still only using the http1 pool so I haven't come across this yet. Would you mind adding a test case to prove that the query string is sent with the request?

Thanks again @bismark ! Closing in favor of https://github.com/keathley/finch/pull/79


Add rule to block creation/editing of reserved namespaces

This PR adds a kyerno rule to block creation and edit of reserved namespaces such as kube-* or default.
The cluster role cluster-admin is excluded from this restriction.
A cluster role appuio:edit-reserved-namespaces is created which allows to bypass this policy.

Checklist

[x] Update the documentation.
[x] Categorize the PR by setting a good title and adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency
as they show up in the changelog

@corvus-ch I implemented the feedback from our last call. Looks way simpler now 😊

Any blockers for merging this?

None from my view. I wanted to give @corvus-ch a chance for another review. But we can merge, if you're blocked by this and fix possible problems in a new PR.

Should we document all the rules in the Component documentation (AsciiDoc) to make it easily accessible in hub.syn.tools?

Should we document all the rules in the Component documentation (AsciiDoc) to make it easily accessible in hub.syn.tools?

What exactly would you document? English-readable policies in summary sentences? I fear they could go out-of-date over time. Or maybe just link to the "golden" files that are also checked in Git so the users can read the raw resources? Or even integrate those golden files into asciidoc in the example pages (needs some more Make magic I guess)?

What exactly would you document? English-readable policies in summary sentences? I fear they could go out-of-date over time. Or maybe just link to the "golden" files that are also checked in Git so the users can read the raw resources? Or even integrate those golden files into asciidoc in the example pages (needs some more Make magic I guess)?

We have to figure that out. In its current form, the current documentation of the component is more or less useless (except the parameter documentation). I'd expect to read what this component does and what it brings to a cluster when it is used. For example, I'd like to have an easy way to read what Kyverno policies are shipped with this Component and what they do. Best would be when this documentation is automated of course so that it doesn't get outdated with the code.


Driver not handling @rid projection

The driver seems to mishandle the projection of @rid during a query. Since the following is a projection, oRecordData['rid'] should be set to '#11:0'. Instead the RID is stored as the generated document's RID and not part of the projection. Also, if I'm not mistaken, record.rid should be equal to #-1:-1 in this case, since projections result in temporary documents.
>>> record = DB.query("SELECT @rid, @class FROM #11:0")[0]
>>> record.oRecordData
{'class': 'Article'}                     <--- missing `rid' projection
>>> record.rid
<pyorient.types.OrientRecordLink object at 0x7fbad1fc4a20>
>>> str(record.rid)
'#11:0'                                  <--- there it is; shouldn't this be #-1:-1 instead?

Console and Studio produce the following results, properly projecting the record meta data to strings:
orientdb {db=testdb}> SELECT @rid, @class FROM V
----+------+-----+-------
#   |@CLASS|rid  |class
----+------+-----+-------
0   |null  |#11:0|Class1
1   |null  |#12:0|Class2
2   |null  |#13:0|Class3

Temporary workaround
Currently, in cases when I need to retrieve and re-use a RID and want to access it through oRecordData, I have to project it under a different name:
>>> DB.query("SELECT @rid as oid FROM #11:0")[0].oRecordData['oid']
<pyorient.types.OrientRecordLink object at 0x7fbad1fc4b00>

I'm personally not very fond of OrientRecordLink, especially because I often end up encoding record data into JSON strings. This results in me having to force OrientDB to convert it to a string first:
>>> DB.query("SELECT @rid.asString() as oid FROM #11:0")[0].oRecordData['oid']
'#11:0'

Alternatively, its string representation seems to work fine for now.
>>> str(DB.query("SELECT @rid as oid FROM #11:0")[0].oRecordData['oid'])
'#11:0'

Hi sinfex,
this is by design, to avoid interference with reserved words.
https://github.com/mogui/pyorient/blob/master/pyorient/types.py#L27
Example of possible mistakes if value is projected:
https://github.com/mogui/pyorient/blob/master/test/test_reserved_words_batch.py#L78
This is what the console does ( and in my opinion this is a bad behaviour ):
orientdb {db=test_tr}> insert into V ( 'rid', 'version', 'model', 'ciao') values ('test_rid', 'V1', '1123', 1234)
orientdb {db=test_tr}> select rid, @rid, model, ciao from V
----+------+--------+----+-----+----
#   |@CLASS|rid     |rid2|model|ciao
----+------+--------+----+-----+----
0   |null  |test_rid|#9:0|1123 |1234
----+------+--------+----+-----+----

orientdb {db=test_tr}> select @rid, rid, model, ciao from V
----+------+----+--------+-----+----
#   |@CLASS|rid |rid2    |model|ciao
----+------+----+--------+-----+----
0   |null  |#9:0|test_rid|1123 |1234
----+------+----+--------+-----+----

You can obtain the rid as string caling get() method from OrientRecord.rid:
DB.query("SELECT @rid as oid FROM #11:0")[0].rid.get()

I am aware of that scenario and have found this thread with a response by Luca in regards to this problem:
What would happen in this circumstance?:
SELECT @rid,rid FROM MyClass
where the document contains a field called "rid".
Perhaps @rid should be return in a field called "@rid" to avoid this.

This is needed because projections create field inside a temporary empty document. If it's called @rid how could you get the @rid of the temporary document (that in this case will always be -1:-1). The same is for all the document's attributes like @version, @class, @size, etc.

This seems to be a tricky problem with some undesired outcomes with either one of two possible implementations, but I think Luca's advice should be followed because of the following reasons:

This is a problem with the implementation of OrientDB. In my opinion a database driver should mimic the DB and original utility (in this case Console) behavior, even if it is considered incorrect.
It is better to have to work around an implementation limitation than get different results when using different drivers/language bindings.
Since this is a limitation, developers have to be aware that properties should not be named as "rid", "version", "class" or anything else that is a name reserved by the DB, with or without the @ -- perhaps an OrientDB issue should be created with a proposal to prohibit the use of such names.
Again, both implementations can cause problem, but here losing data is the greater evil than having to go through the trouble of renaming a property:

> CREATE VERTEX V SET rid = 'I am bound to cause trouble'
Created vertex 'V#9:0{rid:I am bound to cause trouble} v1' in 0.006000 sec(s).
> SELECT @rid,rid,rid2 FROM (SELECT @rid,rid FROM #9:0)
----+------+-----+----+---------------------------
#   |@CLASS|rid  |rid2|rid22
----+------+-----+----+---------------------------
0   |null  |#-2:1|#9:0|I am bound to cause trouble
----+------+-----+----+---------------------------

We might not agree with how Console represents the values, but they're all there in the result set, including the temporary document RID, which is always lost when projecting using pyorient! Meanwhile, pyorient behaves in the following matter:
>>> DB.query("select from #9:0")[0].oRecordData
{}
>>> DB.query("select from #9:0")[0].rid
'I am bound to cause trouble'

Did I mess something up or did this really just happen? Also, here's another bug I just stumbled upon using the same query used in the Console example:
>>> DB.query("SELECT @rid,rid,rid2 FROM (SELECT @rid,rid FROM #9:3)")
Traceback (most recent call last):
...
ValueError: need more than 1 value to unpack

Hi @sinfex ,
i changed the behaviour of OrientRecord object.
You can access directly the values of the oRecordData by calling them as OrientRecord properties.
You can access the values of the oRecordData by calling tham as dict keys.
OrientRecord now has defined _version, _rid, _class, _in, _out properties.
    def test_new_projection(self):
        rec = {'@Package': {'name': 'foo', 'version': '1.0.0'}}
        x = self.client.record_create(9, rec)
        assert x._rid == '#9:0'
        assert x._version == 1
        assert x._class == 'Package'
        assert x.name == 'foo'
        assert x.version == '1.0.0'
        assert x.oRecordData['name'] == 'foo'
        assert x.oRecordData['version'] == '1.0.0'


A 'modal-open' class is removed from body when switching between multiple modals

Prerequisites

[X] I have searched for duplicate or closed issues
[X] I have validated any HTML to avoid common problems
[X] I have read the contributing guidelines

Describe the issue
When switching between multiple modals, the 'modal-open' class gets removed from the body element. Is that intentional?
It's not causing any issues in the overall functionality of modals, but it just like a small bug, that even though the second modal is open, the class is missing.
Reduced test cases
The functionality can be easily noticed in the Docs:
https://getbootstrap.com/docs/5.2/components/modal/#toggle-between-modals
What operating system(s) are you seeing the problem on?
Windows
What browser(s) are you seeing the problem on?
Chrome, Firefox, Opera
What version of Bootstrap are you using?
v5.2

If you are doing something depending on "modal-open" class, you can use like that :
body[style*="overflow"] {
  `color:` red;
}