docking.py error

I wish to perform a docking simulation involving a single ligand and a single protein. And then use this code in 'https://github.com/deepmodeling/Uni-Mol/tree/main/unimol'
nthreads=20  # Num of threads predict_file="./infer_pose/save_pose_test.out.pkl"  # Your inference file dir reference_file="./protein_ligand_binding_pose_prediction/test.lmdb"  # Your reference file dir output_path="./protein_ligand_binding_pose_prediction"  # Docking results path python ./unimol/utils/docking.py --nthreads $nthreads --predict-file $predict_file --reference-file $reference_file --output-path $output_path
However, I only obtained this error or result.

So, what steps should I take to ensure a successful complementary docking between the ligand and the protein?

Traceback(most recent call last):
File "./unimol/utils/conformer model.py" line 261,in
def kabsch(x:th.Tensor,y: th.Tensor,weight:0ptional[th.Tensor]=None)-> th.Tensor:
NameError:name'Optional'is not defined

To directly solve this, you can change this line to from typing import List, Optional.
We will fix this ASAP.

Thank you for your assistance. Following your guidance, I have completed the task.
However, I have obtained three docking scores related to the ligand and protein. Could you please advise which one of these scores is the most relevant to my description of the docking process?

The issue has been fixed in this pr https://github.com/deepmodeling/Uni-Mol/pull/249.

Could you please advise which one of these scores is the most relevant to my description of the docking process?

These three scores are used as losses during the optimization process to obtain the docking pose.  They are the ligand-pocket distance score, the intra-ligand distance score, and the ligand-pocket clash score, respectively.


refa: add basic tokenizer for booru sites

This is part of #33 changes

Waiting for an Youyuan People to approve this PR.


[scoop] Individual checksum and packagers

Some packagers (at least Scoop) use individual checksum in their script (see autoupdate.hash.url).
There is currently no warning nor error if individual checksum is not enabled (disabled by default).
Task List

[x] Steps to reproduce provided
[x] Stacktrace (if present) provided
[x] Example that reproduces the problem (link to git repository is ideal)
[X] Full description of the issue provided (see below)

Steps to Reproduce

Create any project
Add Scoop packager
Do not enable individual checksum

Expected Behaviour
Warn about the possible problem.
Actual Behaviour
No warning is displayed.
Environment Information

Operating System: Ubuntu
JReleaser Version: 0.5.0
JDK Version: 11

JReleaser will now activate individual checksum upload for every matching artifact that will be packaged with Scoop.

Thanks!


Keyboard management

I implemented a keymapping system in my branch (ab89e569938d59f1cb4984ba62c59c1c36763d1f) inspired by the way Keyboard.cpp/hpp was implemented.
So it's not a class, it just contains namespace functions and I would like to know if it would be better to create a singleton class for both keymapping and keyboard cpp/hpp instead of the actual implementation ?

If it doesn't have a state (i.e. member variables) why should it be a class ?


KBS doesn't support RVPS registration with a built-in image

The RVPS registration is only available when the RVPS is deployed as a separate process (e.g., using the docker-compose orchestrator and grpc).
If you deploy the kbs as a built-in image (AS and RVPS embedded as crates), the registration API is no longer available.
Just for reference, this is the command for generating a KBS built-in image:
docker build -t kbs-all:latest . -f ./kbs/docker/Dockerfile

Hi @lmilleri , thanks for bringing this issue. Could you share some use cases of RVPS now? To me, RVPS is still under development. In https://github.com/confidential-containers/kbs/issues/311#issuecomment-1933350385 I commented

To me, RVPS is still an abstract/developing module to work with software supply chain, which is not mature, so it might not be a great issue. Even if its API is not exposed, we can also use the policy to reach the same goal -- set reference values, by configuring the reference values manually. Before RVPS implements deterministic semantics and functionality, it would be ok to keep as-is

Does it make sense? If there are real use cases, I'd like to add the API exposure to KBS.

Hi @Xynnn007, I'm working on the kbs-operator for deploying the KBS service in a k8s cluster. For me it is not urgent, considering the following:

kbs-operator will deploy the KBS service in microservice mode by default (in progress)
RVPS development is at early stages
Thanks


Proposal for inline preferences

Frankly, I would eliminate preferences from home, and create a proper onboarding.
However, I've made a proposal for inline preferences to improve on the current situation.

I think it's much simpler if the app always show personalized ranking, and says it. When you see a list of product, it is ranked according to your preferences. And there you have a button to change them. Just like one the web site, we make the feature obvious:

Frankly, I would eliminate preferences from home, and create a proper onboarding.

We should have a button on the home page to change preferences, but I don't think it's useful to list the selected preferences on the home page. Most people will set them once and never change them.
I agree it makes a lot of sense to explain the preferences concept in the onboarding, and offer to select them then.


ionic build does not work if app.module.ts does not import some page or component

Description:
"ionic build" does not work if app.module.ts does not import some page or component in the src folder
What behavior are you expecting?
build works OK if the app.module.ts does not even import some page or component contained in the src folder as the i.e the command "ionic serve" does
Steps to reproduce:

install ionic: npm install ionic cordova
create sample project: ionic start MySampleProject --v2
run ionic build. Then it works
remove for example AboutPage and all references to it but not the component itself
run ionic build. Then fails

Running 'build:before' npm script before build

> ionic-hello-world@ build C:\Users\Carlos.Liro\Desktop\IonicReleaseProject
> ionic-app-scripts build

[13:42:08]  ionic-app-scripts 0.0.36
[13:42:08]  build prod started ...
[13:42:08]  clean started ...
[13:42:08]  clean finished in 6 ms
[13:42:08]  copy started ...
[13:42:08]  ngc started ...
[13:42:08]  copy finished in 119 ms
[13:42:09]  lint started ...
[13:42:13]  lint finished in 4.42 s
[13:42:30]  Error: Cannot determine the module for component AboutPage!
[13:42:30]  ngc failed
[13:42:30]  ionic-app-script task: "build"
[13:42:30]  Error: Error

npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js"
 "run" "build"
npm ERR! node v6.4.0
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR! ionic-hello-world@ build: `ionic-app-scripts build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ionic-hello-world@ build script 'ionic-app-scripts build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the ionic-hello-world package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     ionic-app-scripts build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs ionic-hello-world
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls ionic-hello-world
npm ERR! There is likely additional logging output above.

Post the output of ionic info below please
Ionic Framework Version: 2.0.0-rc.1
Ionic CLI Version: 2.1.4
Ionic App Lib Version: 2.1.2
Ionic App Scripts Version: 0.0.36
OS: Windows 10 Pro
Node Version: v6.4.0

This issue was moved to driftyco/ionic-app-scripts#254


SCT-1147 Implement remove mapping

Pull Request Test Coverage Report for Build 81

8 of 10 (80.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.4%) to 93.151%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/jgikbase/idmapping/storage/mongo/id_mapping_mongo_storage.py
8
10
80.0%

Totals

Change from base Build 80:
-0.4%

Covered Lines:
340

Relevant Lines:
365

💛  - Coveralls

Looks okay to me :+1:


[WIP][Enhancement] Reduce refreshing when selecting Iceberg tables with external catalog

What type of PR is this：

[ ] bugfix
[ ] feature
[x] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Still testing in progress.
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

[FE PR Coverage Check]
:disappointed: fail : 0 / 3 (00.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/optimizer/transformer/RelationTransformer.java
0
3
00.00%
[433, 434, 435]


IOS运行正常 android flutter run报错了

为了快速解决问题，在寻求帮助的时候，请提供以下信息，方便我们快速定位问题

本地 Flutter 版本信息
Flutter 1.12.13+hotfix.8 • channel stable •
异常设备是 iOS 还是 Android，列出具体机型和系统
android  红米

IOS运行正常 android flutter run报错了
错误如下
Launching lib/main.dart on Redmi K20 Pro in debug mode...
/usr/local/Cellar/flutter/.pub-cache/hosted/pub.flutter-io.cn/flutter_sound-1.9.0/android/src/main/java/com/dooboolab/fluttersound/FlutterSoundPlugin.java:12: 错误: 找不到符号
import android.support.v4.app.ActivityCompat;
^
符号:   类 ActivityCompat
位置: 程序包 android.support.v4.app
/usr/local/Cellar/flutter/.pub-cache/hosted/pub.flutter-io.cn/flutter_sound-1.9.0/android/src/main/java/com/dooboolab/fluttersound/FlutterSoundPlugin.java:44: 错误: 找不到符号
ActivityCompat.requestPermissions(activity, new String[]{Manifest.permission.RECORD_AUDIO,}, 0);
^
符号:   变量 ActivityCompat
位置: 类 sdkCompat
2 个错误
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':flutter_sound:compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 20s
Running Gradle task 'assembleDebug'...
Running Gradle task 'assembleDebug'... Done                        21.4s
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the
incompatibility.
Building plugin camera...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    1.3s
*********************************************************
WARNING: This version of camera will break your Android build if it or its dependencies aren't compatible with AndroidX.
See https://goo.gl/CP92wY for more information on the problem and how to fix it.
This warning prints for all Android build failures. The real root cause of the error may be unrelated.
*********************************************************
FAILURE: Build failed with an exception.

What went wrong:
A problem occurred configuring root project 'camera'.

SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 1s
The plugin camera could not be built due to the issue above.

这个是 flutter_sound 库的问题，因为我们 example android 端用的是 androidx 环境，可是下载的库中那个类依然依赖的的 support 包，所以导致的问题，如果升级库的版本依然未修复此问题，请您根据提示的路径找到相应类 FlutterSoundPlugin.java
D:\BC\service\flutter_stable\flutter.pub-cache\hosted\pub.flutter-io.cn\flutter_sound-1.9.0\android\src\main\java\com\dooboolab\fluttersound\FlutterSoundPlugin.java:
将 import android.support.v4.app.ActivityCompat; 替换成 androidx 的包路径 androidx.core.app.ActivityCompat; 即可

升级了
flutter_sound: 2.1.1
解决此问题
感谢


Fix first line print logic

0549db2e37f3 ("Filter first bcc tool lines and annotate nodes") introduced a way
to skip printing the first line of the bcc tools as it is printed once per node.
That commit had a bug and was partially reverted by
6a0116f077d3 ("Workaround for the output disappearing"). This commit fixes the
logic in the original commit by using a pointer receiver notation in the Write()
method of postProcess.
Fixes https://github.com/kinvolk/inspektor-gadget/issues/33.

It works for me.


Add support for Android in example code of LayoutAnimation

Add example code for android support of LayoutAnimation

It seems like this pull request has been abandoned so I am going to close it. If you are still interested in working on this please feel free to reopen!


send linux auth log to logstash and elastic

H gurus!
I'm having an issue. I have installed filebeat client to send my linux logs to logstash, but can't make it work.
I have configured my client to point the server at port 5044 of my VM running the containers. At the server side, I have configured to listen the port to receive the logs. Also, when running a tcpdump I see traffic but no log is shown in kibana .
Any idea??
Thanks
MAriano

After editing filebeat.yml could make it work.


[Backend] Add Required Notice Key to Privacy Notices

Closes #3281
❗ Contains migration
Description Of Changes
We need a key for each notice which will be exposed via the Fides consent cookie and the consent object for third parties to use when deciding to load scripts and pixes.
We want a notice key in the database.  Out of the box we will pre-populate this but then we can edit it as needed.  We will likely add some frontend UX to discourage changing this key. An important criteria right now is that the keys are not unique.
Internal context here
Code Changes

[ ]  Add new required PrivacyNotice.notice_key field that needs to be a fides key
[ ] Migrate any existing notices in the db to have this field from a lower cased underscored name
[ ] Now required in the request to create a PrivacyNotice

Steps to Confirm

[ ] In Postman the Post privacy notices now requires a notice_key

Pre-Merge Checklist

[ ] All CI Pipelines Succeeded
Documentation:

[ ] documentation complete, PR opened in fidesdocs
[ ] documentation issue created in fidesdocs

[ ] Issue Requirements are Met
[ ] Relevant Follow-Up Issues Created
[x] Update CHANGELOG.md
[x] For API changes, the Postman collection has been updated

OK @allisonking I'm creating the notice key if not supplied here as a temporary measure to move this forward.


Hide "private" events without using blacklist

Google Calendar allows me to set some events to "private".  Very few calendars for home automation out there seem to filter these out as an option.  I did find one for MagicMirror2 that did, but I'd much prefer to use HA than MagicMirror2 if possible.  Anyway, blacklist is cool, but this would be nice as well.
For reference (if helpful), this is the module for MagicMirror2 that was able to accomplish this: https://github.com/heskja/MMM-CalendarWeek
It has a user configuration option called: hidePrivate: true
I don't know if this helps (not a programmer), but here is part of the code they used to parse out private events:
 for (var e in calendar) { var event = calendar[e]; if(this.config.hidePrivate) { 	if(event.class === "PRIVATE") { 				// do not add the current event, skip it 				continue; 	} }
Expected behavior
An option in configuration to not display "private events"
Current behavior
Only option to filter out events by keywords
Possible solutions
Filter out the private events by checking the object attribute for private on the event object
Context and reason
This allows filtering out private/hidden events using the built in function Google already has.  Otherwise, someone could set an event to private and it'll still show up on the dashboard if no blacklist was setup.  Also, so that you don't have to remember the blacklist keywords you set.
Checklist

[X] I searched the current issues and the feature is not known.
[X] I am mostly sure that the feature will bring more good than bad.

I can add this feature sure, However currently will only work with Google Calendar.

I can add this feature sure, However currently will only work with Google Calendar.

Is this confirmed to still be working? I have "showPrivate = false" set and noticed that my private Google Calendar events are displaying. v9.4.0

This probably doesn't work anymore since home assistant changed the API to standardise it and removed a load of features. It's something I want them to add back but so far no joy

No, I can't do it as home assistant changed their APpI and it no longer shows.


feat: support querying of m_aimPunchAngle & m_aimPunchAngleVel

Currently demoparser doesn't support querying of the weapon aimpunch angle/velocity properties. I suspect because they are vec3's this makes them quite annoying to deal with? I managed to implement this by duplicating the logic for pitch/yaw (i.e. fn find_pitch_or_yaw -> fn find_aim_punch_pitch_or_yaw) and making it a custom property, but I guess this is quite lousy.

quite the opposite, duplicating the logic for pitch/yaw would be the better option. Its faster this way and working with arrays inside dataframes in python is especially painful.
If you want to submit a pr then we can merge it.

Fixed here: https://github.com/LaihoE/demoparser/pull/205


Tensorboard loses connection after a while

If you create a new engine with the Tensorboard option, after a while (30 minutes or so?), Tensorboard will lose its connection and give a 404. Restarting Tensorboard manually from another terminal window solves this issue - in this case, the connection does not get lost. This is perfectly reproducable.

I observed the same behavior...

Hi!
I have just pushed a fix in master branch, can you give it a try please?

Solved and published with ModernMT v4.1. Thanks all for the support!


DefaultTextStyle.inherit doesn't always inherit color

Steps to Reproduce
import 'package:flutter/material.dart';

void main() {
  runApp(
    new MaterialApp(
      title: 'Flutter Demo',
      home: new Demo()
    )
  );
}

class Demo extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(title: new Text('Page 1')),
      body: new Column(
        children: [
          new WrappedWidget(),
          new DefaultTextStyle.inherit(
            context: context,
            style: new TextStyle(fontSize: 20.0),
            child: new Text("Wrapped as child")
          ),
          new Text("Unwrapped as child")
        ]
      )
    );
  }
}

class WrappedWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new DefaultTextStyle.inherit(
      context: context,
      style: new TextStyle(fontSize: 20.0),
      child: new Text("Wrapped in a widget")
    );
  }
}

The "Wrapped as child" text appears white, but should appear black.
Flutter Doctor
[✓] Flutter (on Linux, channel master)
    • Flutter at /usr/local/google/home/drewwarren/flutter
    • Framework revision 06043b0585 (7 hours ago), engine revision a1f4a12baa

[✓] Android toolchain - develop for Android devices (Android SDK 23.0.2)
    • Android SDK at /usr/local/google/users/drewwarren/aswb-sdk
    • Platform android-N, build-tools 23.0.2
    • OpenJDK Runtime Environment (build 1.8.0-google-v7-121669373-121622544)

[✓] Atom - a lightweight development environment for Flutter
    • Atom installed; Flutter plugin version 0.2.2

The issue is that you're inheriting from a build context that's above the body of the scaffold.  Out there, the default color is white.  Try:
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(title: new Text('Page 1')),
      body: new Builder(
        builder: (BuildContext context) {
          return new Column(
            children: [
              new WrappedWidget(),
              new DefaultTextStyle.inherit(
                context: context,
                style: new TextStyle(fontSize: 20.0),
                child: new Text("Wrapped as child")
              ),
              new Text("Unwrapped as child")
            ]
          )
      })
    );
  }

That will capture the build context from inside the body.
We should probably make DefaultTextStyle.inherit pick up the build context from its own location in the tree instead of requiring you to supply it a build context to inherit from.

If we do this we should fix IconTheme in the same way.


feat(input): enhance component with responsive icons and dynamic padding

This is my first contribution to an open-source project, so forgive my beginner's mode. In this PR I tried to put together all the things I would like to have available in the input and I saw that there was already something that other people had done, but for some reason it wasn't followed through, so I tried to merge what was possible without changing "too much" of what I had already defined.
I added the option to choose an icon from the "lucide-react" library, passing in "icon='Mail'" for example.
Inputs of the password type are defined with default icons and with the function of hiding and viewing the password just use "showIconPwd", by default it is "false".
It is possible to reposition the icons, by default it is "end", but it can be set to "start".
And last but not least, I added "iconMaxShowWidth" which sets the maximum width for the icon to continue to appear.
NOTE: I had to add the class "!max-w-none" to the input, because it bugged the icon when it was over the class "max-w-sm", anyone who is more experienced can see if there is another way around this, I couldn't.
codes from which I reused some parts:
here
here
Preview
https://github.com/shadcn-ui/ui/assets/73039131/ed2bad71-47fc-4698-918e-dddc3bcbfdf5

Nice, the functionality of defining the icons according to the input type is something sensational for optimizing lines of code, this idea can be greatly expanded to involve different types of input, allowing the generation of forms in a much more dynamic and agile way

@shadcnai please approve this pull request!!


Extraction Failed.

Hi  David,
Thank you for the great tool.  Unpackerr generally works well for me.  On occasions, i get items in waiting or failed state.  A manual restart unpack will get things moving and extract all there are ready to extract.  Does it have something to do with my configuration ?  how can I troubleshoot this?
Thanks.

The logs should provide all information necessary to determine what's happening, or not happening.

My bad.  found the paths typo in my config.  strange it still worked most of the time.

Sometimes the items in queue have their path in the error message. Unpackerr can find that. Sometimes they do not, and it can't find them. Glad you found the problem!


NTRU Encryption with parameter set ntruhps4096821

BC has a NTRU Encryption method set that lets me encrypt some data using predefined parameter sets. In round 2 of NIST Post-Quantum Cryptography the submitters added some "longeer" parameter sets like ntruhps4096821 (some details in https://github.com/PQClean/PQClean/blob/master/crypto_kem/ntruhps4096821/clean/api.h) or more details on page 9 [1.6 Summary of recommended parameters and derived constants] of the PDF available under http://ntruprime.cr.yp.to/nist/ntruprime-20190330.pdf.
In know that I can setup my own parameter set using
NTRUEncryptionKeyGenerationParameters(int N, int q, int df, int dm0, int db, int c, int minCallsR, int minCallsMask, boolean hashSeed, byte[] oid, boolean sparse, boolean fastFp, Digest hashAlg, SecureRandom random)
but I did not find ALL input parameters used for this method.
When do you expect to include this parameter set into BC (I checked with actual 1.66) or can you provide the params for ntruhps4096821 ?
Kind regards
Michael

This is now available in 172b06 or later.


Change required_providers for the compatibility with terraform 0.14

PR o'clock
Description
Due to recent change in terraform 0.14, all providers need to be declare with this new format witch include the "source" of the provider.
terraform {
  required_version = ">= 0.13"

  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = ">= 3.21.0"
    }
}

Checklist

[ ] CI tests are passing
[ ] README.md has been updated after any changes to variables and outputs. See https://github.com/terraform-aws-modules/terraform-aws-eks/#doc-generation

Why was this closed?

Why was this closed?

@codemug i have perform my terraform upgrade without this, seem to not be necessary

@codemug i have perform my terraform upgrade without this, seem to not be necessary


Support color packages

I've tried to install 'Color-Sampler-Pack' through Vundle, but couldn't use the colorschemes afterwards. Maybe worth a fix?

Works fine here with
VIM - Vi IMproved 7.3
Included patches: 1-353

on Linux and with Vundle at 37e82d1.
To test, I had to move my /usr/share/vim/vim73/colors/, because it seems to already contain all the colorschemes in the sampler pack.

Hey @mikehaertl,
Could you please check if you having same issue as #119?
I just checked myself with:

:BundleInstall 'Color-Sampler-Pack'
:colorscheme pablo

And it worked for me.
Let me know how that goes.
Thanks!

@gmarik:
Indeed it was the same issue. Moved the colorscheme now below the Bundle 'Color-Sampler-Pack' and it's working fine!
Thanks a lot!


Can't launch code installed on network drive

Type: Bug
Take the Windows zip archive from the VS Code Download page, an install it on a Network Drive:
P:\...\Programs\Microsoft VS Code
Edit your User Path variable to find the code.cmd script:
P:\...\Programs\Microsoft VS Code\bin
Launch a CMD Terminal, and verify you're using this script:
where code
The code launch will crash:
7328:0127/052649.784:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052649.830:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052649.893:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052649.895:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052649.895:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052650.049:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052650.054:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052650.268:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052650.275:ERROR:gpu_process_host.cc(974)] GPU process launch failed: error_code=18
[7328:0127/052650.275:FATAL:gpu_data_manager_impl_private.cc(450)] GPU process isn't usable. Goodbye.

If I use the --disable-gpu-sandbox option, the application still crashes:

If I'm using the --no-sandbox option, the problem seems to be resolved.

💡 If I move the Microsoft VS Code directory to a local drive (and update the Path accordingly), the problem goes away (no options needed to launch VS Code).
VS Code version: Code 1.74.3 (97dec172d3256f8ca4bfb2143f3f76b503ca0534, 2023-01-09T16:59:02.252Z)
OS version: Windows_NT x64 10.0.20348
Modes:
Sandboxed: Yes

System Info

Item
Value

CPUs
Intel(R) Xeon(R) CPU E5-2698 v4 @ 2.20GHz (4 x 2197)

GPU Status
2d_canvas: unavailable_softwarecanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: disabled_softwaremultiple_raster_threads: enabled_onopengl: disabled_offrasterization: disabled_softwareraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: unavailable_softwarewebgl2: unavailable_softwarewebgpu: disabled_off

Load (avg)
undefined

Memory (System)
3.65GB (0.62GB free)

Process Argv
--no-sandbox --crash-reporter-id 1c1a2b60-b1a8-4215-9fc2-bc68c9c90187

Screen Reader
yes

VM
0%

Extensions (10)

Extension
Author (truncated)
Version

oneapi-samples
int
0.0.47

isort
ms-
2022.8.0

python
ms-
2022.20.2

vscode-pylance
ms-
2023.1.40

jupyter
ms-
2022.11.1003412109

jupyter-keymap
ms-
1.0.0

jupyter-renderers
ms-
1.0.14

vscode-jupyter-cell-tags
ms-
0.1.6

vscode-jupyter-slideshow
ms-
0.1.5

powershell
ms-
2023.1.0

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscoreces:30445986
pythondataviewer:30285071
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdc:30486549
c4g48928:30535728
dsvsc012cf:30540253
azure-dev_surveyone:30548225
vsccc:30610678
pyindex848cf:30577861
nodejswelcome1cf:30587006
2e4cg342:30602488
89544117:30613380
pythonsymbol12:30652348
2i9eh265:30646982
vscsb:30628654

Same issue here, we were running 1.68.1 fine but 1.75.1 does not start, unsure when the regression was introduced.

This is a limitation in the runtime https://bugs.chromium.org/p/chromium/issues/detail?id=103902
You can disable the chromium sandbox following the steps here https://code.visualstudio.com/updates/v1_80#_disable-chromium-sandbox


DrawCallPanel: Add Buffer

Changing the way DrawCall works. Moving things like Buffers to RenderPass as it's much more similar to how WebGPU works:
const pass = encoder.beginRenderPass(renderPassDescriptor); // RenderPass to CommandEncoder ???
pass.setPipeline(pipeline); // Pipeline to RenderPass
pass.setVertexBuffer(0, vertexBuffer); // Buffer to RenderPass
pass.setIndexBuffer(indexBuffer, "uint32"); // Buffer to RenderPass
pass.setBindGroup(0, bindGroup); // Connect to RenderPass

pass.drawIndexed(3) // DrawCall to RenderPass

Not sure about CommandEncoder, but will figure it out.


Lidar sensor suite selection for 3D SLAM

Hi Guys,
I want to use cartographer to perform 3D mapping and 6-DoF state estimation for drone to fly in unstructured environment (no assumption of flat wall or flat floor). Here I have some ideas of choosing the sensors, which I think theoretically could work. Please advise on whether they can work in practice and how ideal they are for the Cartographer to work with in the current stage:

Use one velodyne vlp-16 with or without IMU: Is this good for 6DoF recovery?
Use one 2D scanning lidar with IMU (the two sensors rigidly fixed together, but together can rotate around): Is this sufficient to recover 6DoF? or Is this sufficient to recover x-y-yaw without flat wall/floor assumption or sensor always horizontal assumption?
Use two 2D scanning lidar (one horizontal, one vertical) with or without IMU: Again, no pre-assumptions, hoping it can work like this video: https://www.youtube.com/watch?v=jlkASUo52eM, although this video was testing in flat corridor.

Many thanks in advance.
Chang

This question is probably better for the news group.
You should definitely include an IMU. Without it you have to use the slower "online" solver. I don't get good performance out of that.

Thanks for the reply. Any link to the news group?
OK. IMU is a must then.

For 3D SLAM with Cartographer an IMU is a requirement.
Using one VLP-16 might work, but you'd have to make sure you're constrained in all 6-DoF, e.g. by making sure the LIDAR is mounted so that it always sees parts of the floor and some walls.

Hi Wohe, thank you for the answer.
Say if the wall is very unstructured (not flat), then the requirement of including the floor can be eliminated?
So in my 3rd option (Use two 2D scanning lidar, one horizontal, one vertical, with IMU), this setup should give the constraints in all 6-DoF, right?

Yes, it might work with the right kind of walls. Very small indentations might not be enough though and it should not look the same at different heights like a curtain would.
I'm not sure you can make option 3 work easily since if you move orthogonal to the plane seen by one of the LIDARs, there might not be any overlap with older data in one of the directions. But it is also an easy option to explore because you do not have to build hardware and can just use the 2D backpack data we provide. Feel free to experiment and let me know if you can make it work with 3D SLAM.

Interesting! Thank you for the suggestions. I will definitely give it a try. I will update in this thread for any success.


[BUG] Error when running build for Android

Describe the bug
When running the Android build, an error generated by Gradle occurs.
Error:
FAILURE: Build failed with an exception.
Build file '\node_modules\react-native-vision-camera-face-detector\android\build.gradle' line: 5
Could not find method safeExtGet() for arguments [kotlinVersion, 1.8.10] on object of type org.gradle.api.internal.initialization.DefaultScriptHandler.
Expected behavior
From what I've been reading, the scope of the "buildscript" is limited to the block itself, so it doesn't recognize the "safeExtGet" function.
To solve the issue, it was necessary to define the "kotlinVersion" variable globally, as this way, it's still possible to use the "safeExtGet" function.
Logs and Screenshots
Modified content:

Smartphone (please complete the following information):

Device: Samsung Galaxy M34
OS: Android 14 (One UI 6)
Vision Camera version: ^3.9.2
Face detector version: ^1.4.1

Thanks man, I really apretiate your help.
I think this is also related to #23

Please test new 1.4.2 version and give me a feedback about it


Options tests.

A few options-parsing tests and some general refactoring with testing in mind (see #31).

Some testing babysteps. More to come!
@jmesserly PTAL.

LGTM :+1:


[#3226] IE11 Adding Contributors

Fixes the following IE11 related issues:
#3226
#3225
#3223
#3222
#3221
#3220
#3218
#3217
These were all caused by a failure in our scripts due to the use of string literals. These are not supported in IE11.
Also fixes the issues below since they were related to IE11:
#3219
#3216

Pull Request Checklist:

[ ] Positive Test Case Written by Dev

[ ] Automated Testing

[ ] Sufficient User and Developer Documentation

[ ] Passing Jenkins Build

[ ] Peer Code review and approval

Positive Test Case

[Enter positive test case here]

This is now ready for review. It fixes a long list of IE11 related issues, so please look at the description on those for details on what was fixed.


Recommended Java version

According to https://github.com/UniconLabs/simple-cas4-overlay-template, Java 1.8 is recommended, but the Maven POM still refers to Java 1.7 as per:
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.3</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>

So what's the final verdict ?

I think 1.7 is the minimum supported version. You can use both.

This plugin is not used to deploy CAS itself, but it simply is able to compile Java classes that are put into the overlay. For CAS itself, you need 1.7+ plus.

Fixed readme


fix: Don't try to resolve methods on unknown types

Fixes #10454, and some type mismatches.

bors r+

bors r+

bors, I was just saying good things about you.
bors ping

My finger is itching to click the merge button :sweat_smile:.

https://app.bors.tech/ has been down since today's GH outage about 4 hours ago

CC @notriddle can you please click that "restart" button again? :smile:

bors ping

Thank you!
bors r+

bors retry


az-devops-service-endpoint-update leaves much to be desired

Describe the bug
I am wondering what exactly can be updated using the update command. I would like to update the password of the service connection here by using the below mentioned azure CLI command but it looks like there is no way to get to it other than deleting the service connection and re-creating it. I would rather not prefer this approach since it invalidates my pipeline. I would expect the command : az devops service-endpoint update to provide a --data or --set argument.
Related command
az devops service-endpoint update --id <service_id> .....
Errors
unrecognized arguments: --set
Issue script & Debug output
az devops service-endpoint update --id <id_number> --set
az devops service-endpoint update --id <id_number> --data
Expected behavior
I would expect that updating the content of the service connection should be supported and not just the metadata. This would be a step in the Azure pipeline definition.
Environment Summary
azure-cli                         2.49.0
core                              2.49.0
telemetry                          1.0.8
Extensions:
azure-devops                      0.26.0
Dependencies:
msal                              1.20.0
azure-mgmt-resource               22.0.0
Additional context
I am working in a big software organisation where this is going to be a blocker for our organisation wide adoption of ADO.

Thank you for opening this issue, we will look into it.

@yonzhan : Could you please get someone to look into this issue? We are waiting for a resolution on this to push forward the token renewal setup and has an impact on our release quality. Many thanks in advance for looking in this.

Hi @yonzhan,We checked the issue and we are not owning the above functionality.

@yonzhan : Has there been some movement on this? This is really blocking for us and we would like to automate the entire key rotation stuff. Saving the rotated password back to the same service connection is an important step in our initiative. Many thanks in advance..

You should now be able to use the Workload Identity Federation features to not have to rely on service connections as much.
The Azure DevOps cli team's repo can be found here:
https://github.com/Azure/azure-devops-cli-extension
Their bug tracker is on the Visual Studio Developer Community:
https://github.com/Azure/azure-devops-cli-extension/issues/new/choose

The REST API for service endpoints is pretty well documented, so you could rely on
Az API

Or
Az DevOps invoke

To call the API directly.

Has anybody gotten this to work with the CLI using the API wrapper as a workaround?
az devops invoke \
        --area serviceendpoint \
        --resource endpoints \
        --route serviceendpoint/endpoints/{endpointId} \
        --route-parameters endpointId=$se_id project=$ado_project \
        --api-version 7.0 \
        --http-method patch \
        --org $ado_org \
        --in-file config.json

I'm constantly get the error that "Value cannot be null. Parameter name: endpointProjectReferences" which isn't even a parameter that the API accepts. I'm providing serviceEndpointProjectReferences, I even tried including endpointProjectReferences instead of and in addition to serviceEndpointProjectReferences and nothing seems to work.
As documented in the API:
azext_devops.devops_sdk.client: Route template: {project}/_apis/{area}/{resource}/{endpointId}
azext_devops.devops_sdk.client: Api version '7.0'
azext_devops.devops_sdk.client: PATCH https://orgnameREDACTED.visualstudio.com/Project1/_apis/serviceendpoint/endpoints/207ffb3f-REDACTED
azext_devops.devops_sdk.client: Request content: {'name': 'webjobs-dev', 'type': 'azurerm', 'url': 'https://management.azure.com/', 'authorization': {'parameters': {'serviceprincipalid': '23dfea61-REDACTED', 'tenantid': '97525e9a-REDACTED', 'workloadIdentityFederationIssuer': 'https://vstoken.dev.azure.com/f30bac30-REDACTED', 'workloadIdentityFederationSubject': 'sc://OrgnameREDACTED/Project1/webjobs-dev'}, 'scheme': 'WorkloadIdentityFederation'}, 'isShared': False, 'isReady': True, 'serviceEndpointProjectReferences': [{'name': 'webjobs-dev', 'projectReference': {'id': '20ef8dda-fd7f-REDACTED', 'name': 'Project1'}}]}
urllib3.connectionpool: https://orgnameREDACTED.visualstudio.com:443 "PATCH /Project1/_apis/serviceendpoint/endpoints/207ffb3f-REDACTED HTTP/1.1" 400 224
azext_devops.devops_sdk.client: Response content: b'{"$id":"1","innerException":null,"message":"Value cannot be null.\\r\\nParameter name: endpointProjectReferences","typeName":"System.ArgumentNullException, mscorlib","typeKey":"ArgumentNullException","errorCode":0,"eventId":0}'
msrest.exceptions: Value cannot be null.
Parameter name: endpointProjectReferences

Adding the parameter as the error is complaining about:
azext_devops.devops_sdk.client: Route template: {project}/_apis/{area}/{resource}/{endpointId}
azext_devops.devops_sdk.client: Api version '7.0'
azext_devops.devops_sdk.client: PATCH https://orgnameREDACTED.visualstudio.com/Project1/_apis/serviceendpoint/endpoints/207ffb3f-REDACTED
azext_devops.devops_sdk.client: Request content: {'name': 'webjobs-dev', 'type': 'azurerm', 'url': 'https://management.azure.com/', 'authorization': {'parameters': {'serviceprincipalid': '23dfea61-REDACTED', 'tenantid': '97525e9a-REDACTED', 'workloadIdentityFederationIssuer': 'https://vstoken.dev.azure.com/f30bac30-REDACTED', 'workloadIdentityFederationSubject': 'sc://OrgNameREDACTED/Project1/webjobs-dev'}, 'scheme': 'WorkloadIdentityFederation'}, 'isShared': False, 'isReady': True, 'endpointProjectReferences': [{'name': 'webjobs-dev', 'projectReference': {'id': '20ef8dda-REDACTED', 'name': 'Project1'}}], 'serviceEndpointProjectReferences': [{'name': 'webjobs-dev', 'projectReference': {'id': '20ef8dda-REDACTED', 'name': 'Project1'}}]}
msrest.universal_http: Evaluate proxies against ENV settings: True
urllib3.connectionpool: https://orgnameREDACTED.visualstudio.com:443 "PATCH /Project1/_apis/serviceendpoint/endpoints/207ffb3f-REDACTED HTTP/1.1" 400 224
azext_devops.devops_sdk.client: Response content: b'{"$id":"1","innerException":null,"message":"Value cannot be null.\\r\\nParameter name: endpointProjectReferences","typeName":"System.ArgumentNullException, mscorlib","typeKey":"ArgumentNullException","errorCode":0,"eventId":0}'
msrest.exceptions: Value cannot be null.
Parameter name: endpointProjectReferences


Planning for separate b2 physics server thread

The biggest change ahead for this project will be moving the b2world (and all b2 objects) onto a separate physics thread. Before work begins on this, I think major design decisions should be well thought out.
Primary goals of this enhancement:

Greatly improve physics processing performance by taking it off the main thread
Similar to Physics2DServer, offer a script-only option for devs by providing a physics server API so that performance may be improved by eliminating the need for the scene tree.

Initial thoughts:
I believe it would be a good idea to implement this in a similar way to the Godot physics 2d server. I.e. creating our own Box2DPhysicsServer and Box2DPhysicsServerWrapMT.  In turn, all Box2D nodes will use this API for handling properties and managing the physics object lifecycle as it relates to the scene tree.
If we follow this preexisting design, it reduces the amount of architecting to do and makes for an easier transition for Godot users switching to this module.
Note:
Because creating an API for everything (I expect) involves a significant amount of repeat work, I do not plan to finish issue #2 before this is done, unless any joints are needed for project-specific use cases.

#1, i think the greatest improvement is just going to have a multi-threaded solver.  Basically what you linked here: https://github.com/jhoffman0x/Box2D-MT.  I haven't looked into the source, but presumably with a multi-threaded solver, when you have physics work to do you can just step the world and it will fill all available cpu cores with work to hopefully near capacity.
Moving physics performance to another thread in and by itself doesn't make anything more efficient if you don't have any any work to do on your main thread.  If say I want to take user input, apply some impulses, update the physics simulation (step the world), and then render the new positions all on the same frame.  Hoping off the main thread just to simulate physics, then waiting for the physics thread to finish so we can submit our updated geometry for rendering doesn't really speed anything up.
Godot gets around this by just lagging out another frame.  A large cpu bottleneck in godot is recording/encoding and submitting work to the gpu for rendering (Rendering/VisualServer draw()).  So godot basically starts rendering geometry while the physics system is simulating, (waiting for physics simulation to finished is synced() at the START of the next frame tick), which means an additional frame of lag.  This is generally a good trade-off for most, and this is all fine but it has really interesting design consequences with regards to interacting with the solver.
Interacting with the solver via hooks (pre-solve, post-solve.  I'm not going to say callbacks, because callbacks are somewhat synonymous with asynchronous exec), just needs to be thought out well, especially in a multi-threaded environment.  Godot syncs physics positions at the start of the next frame iteration.  Which means that while while the physics engine is solving in a separate thread, the CPU is recording command buffers, encoding and submitting current geometry for rendering.  Pre-solve in b2d needs to return immediately, because it needs to be fast due to the internal box2d solver needing an answer immediately during a solve.  i.e. you can't queue these up, and just asynchronously handle them at the start of the next frame.  The solver needs the info immediately to resolve the response.  How to synchronize that is going to be tricky, and there's going to be some tradeoffs when a application programmer wants to push the world step into another thread and execute that step at the same time as say generating render commands.
I have to think a little more on the design of this. I think pre-solve and post-solve integration is an extremely useful feature.  I'm not 100% what the design will be in the context of a separate thread in a physics server.

Actually i just checked the godot source, and godot syncs at the start of the next physics tick, not necessarily the start of the next frame.  Which is the correct behaviour.

You bring up a lot of good points. While just adding a separate thread may be purposeless when we have Box2D-MT (this will need good testing), I still believe there is value in adding a script API, as adding hundreds of bodies via the scene tree is far from efficient.
Though rather than me making a speculative opinion about the API, I might try to actually measure performance before I continue my argument.

As for pre/post solve, I believe signals may be adequate for this. Signals can be called asynchronously if you don't do a deferred emit. We can pass some object, call it ContactState, that has properties that give us access to the b2contact. Developers just have to be careful to use these functions in a thread-safe way.

It may be nice to have a project setting that can configure whether Box2D runs on the main thread or asynchronously so devs can choose whether they want to deal with thread safety in exchange for better performance.

There's a per project thread setting for this, under 2d physics.  I think the Box2D worlds should just by use this by default project based setting, unless overridden on the object itself.

For pre and post solve thread safety, ya I may just punt on this,  But I still want to eliminate as many footguns as possible.

And easy start is a check if the world is locked on b2 calls that don't work if the world is locked (should be there anyways).  We should catch it as a no-op, and print a warning or error msg to godot output.   The alternative is to maintain a proxy state, which I'm not 100% opposed to, but it introduces some additional complexity.

The fail condition error printout should mention to use call_deferred for everything handled in async. This handles holding onto the state for us, as well as keeps the dev's application script clear that it isn't updating values immediately.

call_deferred is going to get pumped at these three places in this screenshot below:

We actually only ever want these to be executed in the first flush().  If the deferred execution happens on the second or third call to flush, we're going to be in sync trouble again ( In a separate thread, the world is already stepping and may be locked again )

for example, line 2484 will start a world tick in a physics thread.  It COULD have already queued up a call_deferred from some collision that would get processed on line 2486, which will break.
Since the queue is pumped as well on line 2501, again, we may just call_deferred into another in-consistent world state

It's kind of like, we want to defer these things, until the next physics_process.  Which is protected from being inside a simultaneous world step().

line 2479, will have all the process_physics() execution.  Which is after the sync(), but before the step().  Which is the thread safe sport for interacting with a separate physics thread.

Anyways, it's all good.  I'll figure out something that will be elegant.

Yup, I see the difficulty. Best of luck.

I think we should really considering pushing this back in priority (a separate physics thread).

there probably needs to be architectural changes in godot upstream to do this properly.  We need to have a callback mechanism into the multi-threaded safe 'zone'.  Which is between a physics->sync(), and a physics->step().  (world has finished stepping, and hasn't started the next step yet).  This is accomplished in PhysicsServer2DWrapMT using a semaphor.  NOTE - there isn't even support for running any 3d physics engine multi-threaded.  Both godot3d, and bullet3d only run single threaded in godot.

most of the benefit is going to come from a multi-threaded solver.  Which is still single threaded step(), but multi-threaded solving with the solver's implementation.

PRO's to this:

pre-solve and post-solve callback simplicity
reduces an extra physics frame of latency.  (step() and updating geometry happen in the same frame )

Yeah, I'm not fighting to implement this anytime too soon.
Though, a possible solution crossed my mind. It's a bit of a compromise. Right now b2World.Step() happens on the main thread in internal_physics_process. What if we wait for the threads running in b2world.step() to finish before we continue processing on the main thread? This makes everything thread-safe (aside from hooks) but still benefits from having multiple threads.
This method should take almost no effort to implement. Doing this, (as opposed to having step() occur concurrently with the main thread), bottlenecks the physics step only to the most complex island. This should enable larger scenes to step much faster, with minimal return on small scenes (which should be fast anyway). Thoughts?

I'm assume that's how https://github.com/jhoffman0x/Box2D-MT works.

(On further inspection, that's indeed how it works :)

Yeah, okay, hah I feel silly. But my idea still stands! Just swap Box2D with Box2D-MT (after maybe forking and pulling some upstream changes from the original repo) and it's an immediate improvement.

With some of the questions I ask, sometimes I wonder how I got this far writing software lol

:D  It looks like we can even pass https://github.com/jhoffman0x/Box2D-MT the godot worker thread pool, which eliminates the spawning of new threads inside https://github.com/jhoffman0x/Box2D-MT, which is a great design.

Switching to Box2D-MT won't be a seamless transition because it uses an older version of Box2D. We're using the latest and there are a number of breaking changes between versions. Also, the file structure and filenames are different (due to changes in 2.4.0).
I want to create a fork of Box2D-MT and merge Box2D upstream changes, which will take a fair amount of effort. However, there's also a dev branch in MT with unfinished changes (last updated May 2019) that would become hard to merge into the fork in the future after updating file structure and filenames.


upgrade software to newer versions

Python2 will end its lifetime soon and we should transition to python3. This is also prompted by the docker image that inherits from this one in the BSM search example. This includes:

OS system (ubuntu:trusty is 14.04, could upgrade to 18.x)
Python3 (may inherit from above)
ROOT: newest version is v6-18-04, compared to root-v6-02-12

See also #1 for discussion.

I have tried to to the plain changes, but they also require small dependencies changes. Since we use this image for multiple examples as it is, maybe it would be a good idea to keep this one, and have another one with newer software?

We can definitely have more reana-env-root6 images with different tags, say 1.0 for current Python2-based image and 2.0 for Python3-based image.

... that said, since we are in the pilot phase, we can simply update the latest image for now.  Depending on whether the demo examples are working?  Here's the list to check that use reana-env-root6:

reana-demo-bsm-search
reana-demo-lhcb-d2pimumu
reana-demo-root6-roofit

If these are OK with the new Python3-based image, we can simply replace the current Dockerfile.  (And if we need to get back to Python2 one day, we can tag an older release using Git history; no problem.)

I have finally built the image, but it took ages. It is available here.


Add a new premises within the Temporary Accommodation service

Context
This PR builds on #236 and allows us to add a new premises.
This should be reviewed from "Add stub Temporary Accommodation manage controllers" onwards
Changes in this PR

A new page at premises/new on the TA service for adding a premises
Client and Service modifications to use the new API endpoint for adding a premises

Screenshots of UI changes

@tahb In the wiremock case - Starting from scratch, with all docker containers deleted, this is the error I get if I run script/sever without running script/bootstrap. As soon as I run script/bootstrap (either before the server or while it's running), it goes away
In the non-wiremock case, I don't think this branch case run against the real API yet? Those changes aren't into the ta-mean branch yet, right? And I'm getting a permission error if I try to rebase it onto latest main


Implemented IServiceProviderIsService so a throwaway instance is not created for transient services during constructor resolution

Description

Added GetServiceDescriptors(type) to retrieve registered ServiceDescriptor
Replace GetService(type) with call to GetServiceDescriptors(type) in GetParameters(Type implementationType)
Bail early in GetParameters(Type implementationType) as soon as we find out that we cannot support the current constructor

Motivation and Context
Improve performance and don't create throwaway instances of transient services

Fixes nanoFramework/Home#1383

How Has This Been Tested?

Unit tests
On device

Screenshots
Types of changes

[X] Improvement (non-breaking change that improves a feature, code or algorithm)
[X] Bug fix (non-breaking change which fixes an issue with code or algorithm)
[ ] New feature (non-breaking change which adds functionality to code)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Config and build (change in the configuration and build system, has no impact on code or features)
[ ] Dependencies (update dependencies and changes associated, has no impact on code or features)
[ ] Unit Tests (add new Unit Test(s) or improved existing one(s), has no impact on code or features)
[ ] Documentation (changes or updates in the documentation, has no impact on code or features)

Checklist:

[X] My code follows the code style of this project (only if there are changes in source code).
[ ] My changes require an update to the documentation (there are changes that require the docs website to be updated).
[ ] I have updated the documentation accordingly (the changes require an update on the docs in this repo).
[X] I have read the CONTRIBUTING document.
[X] I have tested everything locally and all new and existing tests passed (only if there are changes in source code).
[X] I have added new tests to cover my changes.

The test to see if the service is available from the service provider is something that is wrapped up in the IServiceProviderIsService.IsService(Type) method.
It would probably be better to try and get the IServiceProviderIsService type from the IServiceProvider, and, if available, then use that to check if the type required is available. If the interface is not available on the IServiceProvider (which it would be for the built-in instance), then you can fall back to the existing mechanism of trying to instanciate the object.
This would provide the same functionality, as the existing code in this PR, but map more closely with MEDI and maybe other code out there could also use this call if needed.

@CZEMacLeod @josesimoes I added and implemented IServiceProviderIsService. This solution ends up being more efficient than the previous GetServiceDescriptors since we bail as soon as we know a service is registered rather than iterating over the entire collection every time.
I removed my GetServiceDescriptors implementation as it was only being used where IsService is now and I didn't see any immediate benefits on refactoring any of the other code to use it.

Not directly related to this PR but should AggregateException be moved to the core library?

Not directly related to this PR but should AggregateException be moved to the core library?

If we're going to have it, yes. But that one depends heavily on generics which we still don't have.
It would require a specific implementation to overcome that.
This to say what we would be deviating from the full .NET anyways.
Having said that, let me ask you this: is this for a single specific location in the code? Or do you need this at several methods?
The answer to this will point us to the answer. Probably a "dedicated" exception for that case is enough.

While looking at the code for this, I think the ServiceProviderEngine.GetParameters function actually has a mistake in it (at least it doesn't perform the same logic as MEDI) and I think has the potential to misbehave.
I'll raise an issue for it separately, but wanted to flag it here too, as this reorg and potential breaking makes it tricky to do a PR on just now.
I can't easily create and test an equivalent nano project just now, but I'm pretty sure the following Net 7 code would break on nano (notwithstanding the use of generics).
The current code checks if there are duplicates of the longest constructor length - in the example below there are 3x 2 parameter constructors.
In MEDI, it checks if there are multiple resolvable constructors of the same (max) length to throw the ambiguous error. (Comment out the public RegisteredService3(RegisteredService1 service1, RegisteredService2 service2) constructor).
using Microsoft.Extensions.DependencyInjection;

internal class Program
{
    private static void Main(string[] args)
    {
        var services = new ServiceCollection();

        services.AddSingleton<RegisteredService1>();
        services.AddSingleton<RegisteredService2>();

        services.AddSingleton<RegisteredService3>();

        var serviceProvider = services.BuildServiceProvider();

        var test = serviceProvider.GetRequiredService<RegisteredService3>();

        Console.WriteLine($"HasService1: {test.HasService1}");
        Console.WriteLine($"HasService2: {test.HasService2}");
        Console.WriteLine($"HasUnregistered: {test.HasUnregistered}");
    }
}

internal class RegisteredService1
{
    public RegisteredService1()
    {
    }
}

internal class RegisteredService2
{
    public RegisteredService2()
    {
    }
}

internal class RegisteredService3
{
    private readonly RegisteredService1? service1;
    private readonly UnRegisteredService? unRegistered;
    private readonly RegisteredService2? service2;

    public RegisteredService3(RegisteredService1 service1) => this.service1 = service1;

    public RegisteredService3(RegisteredService2 service2) => this.service2 = service2;

    public RegisteredService3(RegisteredService1 service1, UnRegisteredService unRegistered) : this(service1) => this.unRegistered = unRegistered;

    public RegisteredService3(RegisteredService2 service2, UnRegisteredService unRegistered) : this(service2) => this.unRegistered = unRegistered;

    public RegisteredService3(RegisteredService1 service1, RegisteredService2 service2)
    {
        this.service1 = service1;
        this.service2 = service2;
    }

    public bool HasService1 => service1 != null;
    public bool HasService2 => service2 != null;
    public bool HasUnregistered => unRegistered != null;
}

internal class UnRegisteredService
{
    public UnRegisteredService()
    {
    }
}

@CZEMacLeod let's add some unit test to cover this please! 😉

While looking at the code for this, I think the ServiceProviderEngine.GetParameters function actually has a mistake in it (at least it doesn't perform the same logic as MEDI) and I think has the potential to misbehave.

Thanks for bringing this up. I saw this and wondered if this was an issue or intentional. My assumption was that something like this should work:
public class Service1 : IService1
{
    private readonly ILogger _logger;

    public Service1(ILoggerFactory loggerFactory): this(loggerFactory.CreateLogger(nameof(Service1)))
    {

    }

    public Service1(ILogger logger = null)
    {
        _logger = logger;
    }
}

My expectation was that the first resolvable constructor with the highest number of parameters would be used. It sounds like that expectation isn't the case in MEDI either but should it be?
If you open an issue I'll add my two cents there.

@CoryCharlton In your example MEDI would throw an error if both ILogger and ILoggerFactory was registered. In normal dotnet, this wouldn't be the case, as it would be ILogger<Service1> or ILogger<IService1> and a basic ILogger would not be registered but there is an example in the MEDI documentation that covers this scenario and that would throw as it can't work out which to use.
There is an attribute ActivatorUtilitiesConstructorAttribute which can be used to mark which constructor to use in cases like this, although I haven't checked the details of exactly how it is implemented.
Another thing I was confused by when looking at creating a PR for this, was that it seems to resolve all intrinsic/primative types to their default value - something that MEDI does not do at all. I am not sure the reason for this behaviour as it is very counter intuitive. If I wanted this then I would .AddSingleton(string.Empty), or .AddSingleton<string>(null) - although I think that actually throws an error as you cannot register a null object for a service.
Let me get my thoughts on this together and raise an actual issue. I don't know if a discussion on this to decide how close this should work to the MEDI implementation and what deviations and justifications for those differences should be, would be useful, either here or on discord. In any case, I think they need to be documented clearly so that anyone who is looking at the main net documentation and comes here knows the caveats and does not get any surprises.

Wow! I'm delighted to see the level of detail and  how technical this conversation is!
Humbled and thankfully for the time and perfection you're putting into nanoFramework and these tiny details of the implementation.
And the concern on making developers life easier and getting this as close as possible from the full framework.
Really profesional!! On behalf of the project and the community, thank you for helping on taking our code base to a top notch quality level. 🤩💯🙂

Any further developments on this?

Any further developments on this?

I reviewed the thread and there was lots of discussion but I believe all pending action items for this PR have been resolved.

@CoryCharlton @josesimoes Yeah - I think the changes/issues I have don't compete with this PR (and I was assuming that any changes would be based off this work).
I think there are some breaking changes here, and if the changes to check ambiguous constructors and default value intrinsics were added too, that would also potentially be a breaking change.
I do have the code to make those changes, but I need to finish the unit tests, as the activator and DI rules don't match the normal implementation just now.

Speaking of breaking changes I realized I should probably update the major version with this PR so I just did so.

I do have the code to make those changes, but I need to finish the unit tests, as the activator and DI rules don't match the normal implementation just now.

Great! Let's have that PR with more fixes/improvements.
If you're stuck with the Unit Tests just ping me and I'll help you with that.

Speaking of breaking changes I realized I should probably update the major version with this PR so I just did so.

This calls for a bump in version but minor, not major.
I've just changed it.

This looks fine to me. Just a reminder we will need to update the samples to support these changes.

I started this work here https://github.com/nanoframework/Samples/pull/332

Merged. Thank you very much everyone on this so participated PR! 😄
Please let's follow up on all the conversations above and go for PRs on all those bits that can be further improved.


Convert ConstValueElement to a sealed class

Usually I say "if it ain't broke, don't fix it", but in this case the improved type-safety is worth it.  ConstValueElement was effectively a variant type with a bunch of subtype-specific accessors on it.  By making it a sealed type, the compiler helps ensure that we're using the type that we think we have.

Codecov Report

Merging #203 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #203   +/-   ##
=========================================
  Coverage     76.21%   76.21%
  Complexity      374      374
=========================================
  Files            29       29
  Lines          1648     1648
  Branches        147      147
=========================================
  Hits           1256     1256
  Misses          294      294
  Partials         98       98

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 53a07b1...6697735. Read the comment docs.


Add godots cli open command.

Example of usage
Godots.exe --headless -open=4.1.1 -- --path "C:/Users/cli-godot-example" "C:/cli-godot-example/main.tscn" -- -game_arg true

[x] Mac OS support

@JillyMan, can you consider adding Godots cli argument -recent which is a shorthand for the last path project opened
such that something like Godots.exe -recent  will open the last project opened using Godots.
Am not sure this proposal is in the scope of your commit ,however, any response  will be appreciated

@JillyMan, can you consider adding Godots cli argument -recent which is a shorthand for the last path project opened such that something like Godots.exe -recent will open the last project opened using Godots.
Am not sure this proposal is in the scope of your commit ,however, any response will be appreciated

Hi @SeremTitus I'm fine with this cli argument. Will do it in separate PR.


Add new custom types to README

The new custom benchmark types are missing from the README. This simply adds them.

Thank you for fixing that!


Cluster experiencing intermittent degraded state due to etcd-healthz failure

Description
Cluster experiencing intermittent degraded state due to etcd-healthz check failing.
What happened:
etcd-healthz check fails periodically for short periods of time.
What you expected to happen:
Cluster is expected to be in a healthy state and there should not be any disk I/O issues.
How to reproduce it (as minimally and precisely as possible):
Environment

Gravity version [e.g. 7.0.11]: gravity v7
OS [e.g. Redhat 7.4]:
Platform [e.g. Vmware, AWS]:

Relevant Debug Logs If Applicable
# gravity status
[×] etcd-healthz (unexpected HTTP status: Service Unavailable)
Remote access: online

# journalctl
- read-only range request "key:\"/registry/pods/monitoring/\" range_end:\"/registry/pods/monitoring0\" " with result "range_response_count:333 size:2045274" took too long (519.261319ms) to execute
- /health error; QGET failed etcdserver: request timed out (status code 503)

Maybe relevant links

https://github.com/gravitational/gravity/issues/1659
https://serverfault.com/questions/1079002/how-to-fix-etcd-within-a-kuberentes-cluster

From what I can see, the etcd-healthz check simply makes a GET request to each etcd server's /health endpoint. From the logs provided by Customer S, it looks like the cluster that is experiencing these issues is quite large. I'm guessing the etcd-healthz check is timing out before receiving a response from all etcd servers. The checks are giving a decent amount of timeout to complete, but it looks like the checks run in sequence. https://github.com/gravitational/satellite/blob/321d645d9f7113f776c8a64f2e952651e823dd21/monitoring/composite.go#L35-L41.
I'll go ahead and update the checks to run in parallel and optionally allow the etcd-healthz check to be disabled.

@bernardjkim How much work remains before this is wrapped up?
cc: @pierrebeaucamp


AppCafe: for information, an 'i' icon might be better than the tag/label icon

Related: the actual (unexpected) result in #17
An 'i' within a circle. Maybe italicised, reminiscent of the widely recognised symbol for tourist information.

Housecleaning time.  Many changes have occurred so I'm closing old tickets. If the issue still remains we can reopen.


Update version: CrowTranslate.CrowTranslate version 2.10.7

Pull request has been created with WinGet Automation :rocket:
Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/113588&drop=dogfoodAlpha

@wingetbot waivers Add Validation-Executable-Error

@wingetbot run


FIX: allows retrieving patterns from nested pipelines with SlidingEstimators

This allows retrieving the patterns from nested pipelines: e.g.
clf = make_pipeline(
    UnsupervisedSpatialFilter(PCA()),  # preprocessing on n_epochs x n_chans x n_times
    SlidingEstimator(make_pipeline(
       StandardScaler(),   # preprocessing on n_epochs x n_times
       Ridge()))
get_coef(clf)

(this @kingjr writing... @Eric89GXL  or @jona-sassenhagen, could you review it?)

Codecov Report

Merging #4274 into master will decrease coverage by 0.1%.
The diff coverage is 83.33%.

@@            Coverage Diff            @@
##           master   #4274      +/-   ##
=========================================
- Coverage    86.2%   86.1%   -0.11%
=========================================
  Files         346     346
  Lines       64643   64646       +3
  Branches     9907    9908       +1
=========================================
- Hits        55728   55664      -64
- Misses       6198    6269      +71
+ Partials     2717    2713       -4

travis is not happy.
I'll be happy if he is :)

Looks good to me.

Thanks @LauraGwilliams @kingjr


Improve init performance

This PR improves initialisation performance in three ways:

Changes detection of first optgroup option from $this.index() === 0 to !this.previousElementSibling. This makes a huge difference for large optgroups.
Sets necessary selected/disabled attributes during li creation, so the render doesn't have to update them during init/refresh.
Changes use of $elem.data('prop') to $.data(elem).prop throughout createLi and render functions. This is a very small improvement by itself but it's used so often that the savings do add up.

I found this improved speed by a minimum of 2.5x with no optgroups, but over 10x for an optgroup with 2k options.

One thing I wasn't quite sure about: The setDisabled function sets href to '#' if disabled and removes href if enabled. Is this correct or should it be the other way around?

Available in v1.13.0-alpha.


Issue with machine-config on 4.14

I've got a problem with single node installation of 4.14.0-0.okd-2024-01-26-175629
I've tried already few times from scratch.
Machine config operator throws this error:
machine-config                             4.14.0-0.okd-2024-01-26-175629   True        False         True       24h     Failed to resync 4.14.0-0.okd-2024-01-26-175629 because: error during syncRequiredMachineConfigPools: context deadline exceeded
Machine config deamon pod throws this:
I0516 13:17:33.275245 8365 daemon.go:1370] In bootstrap mode
E0516 13:17:33.275335 8365 writer.go:226] Marking Degraded due to: machineconfig.machineconfiguration.openshift.io "render-worker-db56bc37dd86657823ec373bb5904b67" not found
oc get mcp
NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
master                                                      False     True       True       1              0                   0                     1                      11m
worker   rendered-worker-632f2191dd1fb7ed02d61df84649d5a3   True      False      False      0              0                   0                     0                      24h
oc get mc
NAME                                               GENERATEDBYCONTROLLER                      IGNITIONVERSION   AGE
00-master                                          02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
00-worker                                          02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
01-master-container-runtime                        02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
01-master-kubelet                                  02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
01-worker-container-runtime                        02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
01-worker-kubelet                                  02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
97-master-generated-kubelet                        02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
97-worker-generated-kubelet                        02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
98-master-generated-kubelet                        02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
98-worker-generated-kubelet                        02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
99-master-generated-registries                     02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
99-master-ssh                                                                                3.2.0             24h
99-okd-master-disable-mitigations                                                             3.2.0             24h
99-okd-worker-disable-mitigations                                                             3.2.0             24h
99-worker-generated-registries                     02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
99-worker-ssh                                                                                3.2.0             24h
rendered-master-3e8239ad26f6199b575759c8d2d923c0   02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             12m
rendered-worker-5534c0d4d3c29a786da6495d5c67afb6   02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             24h
rendered-worker-632f2191dd1fb7ed02d61df84649d5a3   02a6260d730bae5995e3bde6c6792a75db9ec025   3.4.0             38m

Hi,
We are not working on FCOS builds of OKD any more. Please see these documents...
https://okd.io/blog/2024/06/01/okd-future-statement
https://okd.io/blog/2024/07/30/okd-pre-release-testing
We will be providing documentation on upgrading clusters from 4.15 FCOS to 4.16 SCOS. In terms of clusters that are older, you may be able to get help from community members. I'll convert this to a discussion to facilitate that.
Many thanks,
Jaime


[Issue] CompareExchangeHashes.ps1 does not count Exchange version 15.1.1913.7 that is missing from baseline

CompareExchangeHashes.ps1 doesn't download baseline for Exchange security fix 15.1.1913.7.
https://support.microsoft.com/en-us/topic/description-of-the-security-update-for-microsoft-exchange-server-2019-and-2016-february-11-2020-94ac1ebb-fb8a-b536-9240-a1cab0fd1c9f

This should be fixed now.


Card becomes full height when used in a layout-card grid-view

Describe the bug
I have a grid-view for my smart mirror, and when I add this card to the grid, it occupies the same height as the longest card in the view. If I copy this same card to a regular home assistant view, it works as normal.
Steps to reproduce

Create a grid-view layout with layout-card, that has at least two columns
Add some card to one column using vertical-stack card
Add MeteoalarmCard to another column

Screenshots

Card version
2.4.3
Integration type
Meteoalarm
Installation type
Home Assistant Community Store (HACS)
Card Configuration
type: custom:meteoalarm-card
entities:
  entity: binary_sensor.meteoalarm_2
integration: meteoalarm

Integration Configuration

Found a workaround, which is to add this css with card-mod, not sure if it messes up when there are multiple alerts though, but works fine with one.
style: |
  :host {
    flex: 0 !important;
  }

Hey, sorry for the late reply! Can you provide the YAML for the layout-card config that causes issues and the expected outcome? I've trouble understanding what is really a problem here.

The way I understand it the alert card does not auto scale its height based on the other cards in the gridcard
so either it is too big or too small
I have no coding experience so no solutions from my end

Hey, sorry for the late reply! Can you provide the YAML for the layout-card config that causes issues and the expected outcome? I've trouble understanding what is really a problem here.

I made a simplified version of my setup with a few example cards. It needs the layout card to be installed to work.
views:
  - theme: Backend-selected
    title: Home
    type: custom:grid-layout
    layout:
      gridrows: auto
      grid-template-columns: 25% 12.5% 25% 12.5% 25%
      grid-template-areas: |
        "a b c d e"
    badges: []
    cards:
      - type: vertical-stack
        cards:
          - type: picture
            image: https://demo.home-assistant.io/stub_config/t-shirt-promo.png
            tap_action:
              action: none
            hold_action:
              action: none
          - type: picture
            image: https://demo.home-assistant.io/stub_config/t-shirt-promo.png
            tap_action:
              action: none
            hold_action:
              action: none
        view_layout:
          grid-area: a
      - type: vertical-stack
        cards:
          - type: picture
            image: https://demo.home-assistant.io/stub_config/t-shirt-promo.png
            tap_action:
              action: none
            hold_action:
              action: none
          - type: picture
            image: https://demo.home-assistant.io/stub_config/t-shirt-promo.png
            tap_action:
              action: none
            hold_action:
              action: none
        view_layout:
          grid-area: e
      - type: custom:meteoalarm-card
        entities:
          entity: binary_sensor.meteoalarm
        integration: meteoalarm
        view_layout:
          grid-area: c

I also noticed that adding this custom css to the alert card with card-mod seems to fix it, at least partially. Haven't tested how it behaves with alerts as we currently don't have any, but with this the card only takes the space it needs.
style: |
  :host {
    flex: 0 !important;
  }

Full example of the card with the css:
type: custom:meteoalarm-card
entities:
  entity: binary_sensor.meteoalarm
integration: meteoalarm
view_layout:
  grid-area: c
style: |
  :host {
    flex: 0 !important;
  }

I really don't know how to proceed here. Any other card actually does stretch to full height here, like the current implementation of MeteoalarmCard but the content is sometimes centred sometimes not. While your request is about not stretching it at all with is just not consistent

Hmm, well that's interesting. I quess I never thought to try it like that without adding the card in a vertical stack.
If I replace the center card with a vertical stack and add the alert card + other cards, then the only card whitch becomes full height is the alert card.

This is the vertical stack card I used in that screenshot
type: vertical-stack
cards:
  - type: weather-forecast
    entity: weather.home
  - type: custom:meteoalarm-card
    entities:
      entity: binary_sensor.meteoalarm
    integration: meteoalarm
view_layout:
  grid-area: c

Yeah so as i said, I really don't know how to proceed here. If someone has idea if there is a good way how to proceed here I'll happily re-open this issue. As of now, I'll close it.


Dragonrage: Watch igchamp.co.uk

Dragonrage requests the watch of the watch_keyword igchamp\.co\.uk. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

igchamp\.co\.uk has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


Update and rename stanford.txt to dublinbusinessschool.txt

Dublin Business School
Dublin Ireland

@SaraDBS Your request requires to add lib/domains/edu/dublinbusinessschool.txt and, in the same time, delete a file describing Stanford University.
There is no reason to remove Stanford University from this repository, and dublinbusinessschool.edu domain does not exist:
$ host dublinbusinessschool.edu
Host dublinbusinessschool.edu not found: 3(NXDOMAIN)

This is why I cannot satisfy your request and close it without merging. Please make a new request with correct file path for Dublin Business School. Feel free to read this repository rules and guidelines at the bottom of this page.
Thank you for the understanding.


Please update documentation to explain TFA

Can you explain how to use credentials that include TFA? I get a "awaiting tfa" message in the node, or "awaiting captcha" if I restart nodered too many times, and I'm not sure what to do now. An example flow would be really great.

Have you been able to fix that issue? I still have the same and stuck at "Awaiting Captcha".

See this here: Topic: Client cannot connect: awaiting captcha


Feat/edk2 202408

Must be merged after #332
So I tried to add new edk2-stable202408 container and oh boy, there was a lot to do. Pardon me but I will be a bit verbose here (mostly for sake of future me):

I had some issues during building the containers locally, so I had to debug the Python code that have not been touched in a long time. Thankfully it was just dagger issue, so I added more helpful error messages. And while doing that I also removed some old Python code that seemed to be useless.
Then I ran out of disk space while building the container (yet again) so I had to further slim down the containers.

I have done that by applying the same trick I used for edk2-platforms and edk2-non-osi repositories to edk2, but this required changes in the Dockerfiles and compose.yaml.
I was firmly reminded why I did not do it the first time around - the ancient UDK2017 was a problematic one. There is a tag UDK2017 and branch vUDK2017 and they are completely different. And of course I did accidentally (again) switch from functional UDK2017 branch to broken vUDK2017 tag by using wrong commit hash in compose.yaml. This time I noticed what was the actual problem which allowed me to use this disk-saving approach.

As if this was not enough, I had issues with building the newest edk2 container, while all previous ones worked fine. I was informed that this is caused by recent change that requires -D BUILD_ARCH=X64 to be added to the build command. Thankfully this does not cause problems in old containers.
Because it has been a while since I added new container, I kinda forgot all the steps, so I added notes on this topic into the documentation.

@MDr164 this should work now. Review pls.


$fetch in a server plugin seems to be recusive in Nuxt 3.2.2

Environment

Operating System: Darwin
Node Version:     v18.14.0
Nuxt Version:     3.2.2
Nitro Version:    2.2.2
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      app, runtimeConfig, modules, css, postcss
Runtime Modules<EMAIL_ADDRESS>Build Modules:    -

Reproduction
npx nuxi init testnuxt3.2.2
cd testnuxt3.2.2
pnpm install
pnpm dev

Added this two files
plugins/auth.server.ts
export default defineNuxtPlugin(async () => {
    try {
      const resp = await $fetch('/api/auth/me', {
        headers: useRequestHeaders(['cookie']) as HeadersInit,
      })
      console.log(resp)
    } catch (error) {
      console.log(error)
    }
})

server/api/auth/me.get.ts
export default defineEventHandler(async (event) => {
  console.log('event.context', event.context)

  return createError({
    statusCode: 403,
    message: 'FORBIDDEN',
  })
})

Describe the bug
To begin, Thanks for the great work with Nuxt.
Symptom
The index page never show in browser and load indefinetly
until this json response
{
  "statusCode": 404,
  "statusMessage": "Cannot find any route matching /login.",
  "stack": []
}

Code works perfectly until vers 3.2.2 and Nitro 2.2
If I downgrade to 3.0.0 and Nitro 1.0 same code work.
Additional context
No response
Logs
On nuxt start I can see this output in console

Nuxi 3.2.2                                                                                16:31:50
Nuxt 3.2.2 with Nitro 2.2.2                                                                                16:31:50
                                                                                16:31:50
  > Local:    http://localhost:3000/
  > Network:  http://<IP_ADDRESS>:3000/
  > Network:  http://[fd44:d9ce:68c4:4531:87a:76e2:ba27:b693]:3000/

ℹ Vite client warmed up in 426ms                                                                                16:31:51
✔ Nitro built in 180 ms
  > Local:    http://localhost:3000/
  > Network:  http://<IP_ADDRESS>:3000/
  > Network:  http://[fd44:d9ce:68c4:4531:87a:76e2:ba27:b693]:3000/                                             16:26:39

ℹ Vite client warmed up in 421ms                                                                                16:26:41
✔ Nitro built in 171 ms                                                                                nitro 16:26:41
✔ Vite server hmr 13 files in 294.88ms                                                                          16:26:46
event.context { _nitro: { routeRules: {} }, params: {} }                                                        16:26:46
event.context { _nitro: { routeRules: {} }, params: {} }                                                        16:26:46
event.context { _nitro: { routeRules: {} }, params: {} }                                                        16:26:46
event.context { _nitro: { routeRules: {} }, params: {} }                                                        16:26:46
event.context { _nitro: { routeRules: {} }, params: {} }                                                        16:26:46
event.context { _nitro: { routeRules: {} }, params: {} }

If you don't have a pages folder, then your app.vue file will serve all routes, so it is easy to end up making a recursive fetch.
Does it make a difference if you move that into ~/pages/index.vue

@danielroe
In the reproduction with a starter project, only App.vue exists.
In my main project, I have a pages folder, but the router is configured with app/router.options.ts that completly override the normal behaviour.
In both cases a $fetch in a server plugin to the local server is recursive.

@ElYaiko

I had the same problem yesterday, 4+ hours trying to find what it was and the only solution was downgrading to 3.2.1 but then upgraded to 3.2.2 again and is working almost ok for now

This seems only to work in a dev env.
I downgraded to 3.2.1 and restart, it works.
But, in a docker image with pnpm run build it doesn't work.

This seems to be a problem with Nitro 2.2.2 I also have a plugin with await $fetch() to get the auth in a plugin and when removing the fetch the page loads normal but sometimes it keeps loading infinitely, is there a way to downgrade the Nitro version?

You can pin the nitro version with overrides/resolutions depending on your package manager.

Yes, it is working well with Nitro 2.2.1

With "nitropack": "2.1.2" I can run my project again localy and in production env.
  "devDependencies": {
    …
    "nuxt": "3.1.2",
    …
  },
  "pnpm": {
    "overrides": {
      "nitropack": "2.1.2"
    }
  }

A simple nuxt downgrade is not enouth, overrides do the trick.
Learned how to use overrides today. Great !
I waiting now for the next Nuxt/Niro release to test again an upgrade.
Thanks @ElYaiko @danielroe

Caught this bug developing a layer using @nuxt/content. 404 pages are not working with Nitro 2.2.2 because of fetch in the documentDriven plugin.
Overriding Nitro to 2.2.3 fixed this problem.

As pointed out, this should be resolved in nitropack v2.2.3. which you can get with npx nuxi upgrade --force.
Let me know if not and I'll reopen.

@danielroe It works. Thank you.

I have the same issue, in a "slightly" different context; even after updating.
I have a module, which exposes a composable that wrap $fetch  (to globally set the baseURL for example):
export const get = async (url: string) => {
  return $fetch(url, {
    baseURL: useRuntimeConfig()?.public?.myModule?.apiUrl,
  });
};

And I call it like so:
const { data } = await useAsyncData('myCall', () =>
  myModule.get('...')
);

Putting a simple console.log inside the composable shows that the composable is called thousands of times. If I replace it with a simple new Promise, I have no issue.
The behavior seems to be exactly the same as described above: I have an error about an unmatched route and then I get the "Reloading server..." that doesn‘t stop.
One thing to mention also is that, I call the composable inside a catch-all.
Let me know if you think it's something completely different and I'll create another issue.
Thanks!

An issue with a reproduction would be great. I would also note that useRuntimeConfig() should not be called dynamically like that in a fetch handler unless the handler is always called synchronously in setup. See https://nuxt.com/docs/guide/concepts/auto-imports#using-vue-and-nuxt-composables.

Mmmh.. seems it was the origin of the issue in my case. I did not had the "Nuxt instance is unavailable" though. Thanks!
I can‘t seem to find any example on the docs explaining how I could retrieve some globally set variable to use inside async composable. Is it simply not possible? Can I pass the module option to my composable instead?


Add known issue list with Trusty on Xenial note.

This documents #199 (which I'll leave open for discussion until the issue has a permanent solution) in the README as we don't configure kernel version via puppet there's no code to change to recommend this to other buildfarm deployments.

ACK. Thanks for the warning.


Laggy UI

Nice tool!
Its quite laggy on my maschine, maybe thats normal because of the processing when jumping to the next image?
Also incrementing/decrementing is quite slow. For me it would be more efficient to enter the value instead of pressing up/down all the time, what do you think?
Also the numbers around are hard to read:

I simply would make them smaller, maybe rotate the slightly or only show every 2nd 3th number and simply ticks between.

It fast on my machine, but I have a powerful laptop.
you can use + , - for up down and left/right cursor for previous / update. This is really fast for me.
You maximize the window? What's you screen resolution?

Yes, I use full screen, 1920x1080.
I am extending your UI to also support +/-1.0, I will create a Pull request soon.

I've added --model=off for not using predictions

I'am wondering about the big size. Looks here

I've added --model=off for not using predictions

Nice, that helps a lot! (I have a i5-4300U CPU @ 1.90GHz so it should be good enough).

I'am wondering about the big size.

Maybe thats an issue of my GUI config on Linux

LOL. It's the same model we use on the esp32-cam :-)

What do you think about https://github.com/haverland/collectmeteranalog/pull/3 ?

Thanks. I've added an option --ticksteps to able to change it.
The additional +1/-1 are helpful too


Increment version for generating email templates

Email source files were modified for adding translation tags but version was not incremented.

Merged, thanks @hackerkid!


ERCOT DAM 60 Day Gen/Load Resources AS Offers Historical API Data

Summary

Adds ERCOT DAM 60 Day Gen Resources AS Offers to the historical ERCOT API
Adds ERCOT DAM 60 Day Load Resources as Offers to the historical ERCOT API

Details

This now works back to 2011-07-01.


Validation for multiple arguments if specified for create-react-app

As per now create-react-app <project-name> arg1 works ignoring any arguments provided after the <project-name> without any sort of warnings.

I think it is good to warn the user appropriately if he/she does so 🤔

Waooo

@Timer @iansu What do you think?

@jamesgeorge007 Are you OK with the clean-up I made with this commit? There were a few styling issues, and I simplified the test a little.
If that's OK, let's get this in :)

@mrmckeb It can be simplified further by using minimist to parse args instead of the manual way.
Anyways, both LGTM :+1:

That would be a great addition for future work, thanks for the suggestion @jamesgeorge007.

Thanks again @jamesgeorge007, and congrats on your first contribution. Sorry it was a tricky one.

@mrmckeb I guess this change doesn't take those arguments given after the --scripts-version option.

For instance, create-react-app <app-name> --scripts-version <arg> arg works just fine.

Using an argument parser like minimist avoids one to reinvent the wheel.
Shall I propose another PR with the minimist was of implementation?

@mrmckeb I guess this change doesn't take into consideration, all those arguments given after the --scripts-version option.
For instance, create-react-app <app-name> --scripts-version <arg> arg works just fine.
Using an argument parser like minimist avoids one to reinvent the wheel.
Shall I propose another PR with the minimist was of implementation?

@mrmckeb I guess this change doesn't take into consideration, all those arguments given after the --scripts-version option.
For instance, create-react-app <app-name> --scripts-version <arg> arg works just fine.
Using an argument parser like minimist avoids one to reinvent the wheel.
Shall I propose another PR with the minimist way of implementation?

Correct, and that was intentional as this PR was meant to prevent multiple arguments for the name (as I understood it). Adding more validation is a good idea, but I'd prefer to use a tool (as doing it by hand means we need to do more checking.
Your suggesting sounds good to me, I'd love to see how that looks.

@mrmckeb Have a look at #6338


[RFE] Support for Azure Network Watcher

Current situation
Microsoft Azure Network Watcher is valuable tool in the Azure ecosystem, but it is currently unsupported with Flatcar Linux.

Azure Network Watcher provides tools to monitor, diagnose, view metrics, and enable or disable logs for resources in an Azure virtual network. Network Watcher is designed to monitor and repair the network health of IaaS (Infrastructure-as-a-Service) products

Ideal future situation
This is a request to support Azure Network Watcher in Flatcar Linux. With this functionality, organizations will be able to expose network data on Flatcar-based Azure VMs to Azure's Network Watcher, and use Azure's tooling to monitor and diagnose issues.

Hi @jcrowthe! This is on our radar. We're tracking down what this integration entails, and how it can fit with our Azure OEM images. Will keep you posted. Thanks for opening this tracker issue


Add support for Operation name

Is your feature request related to a problem? Please describe.
It's very important to track the operation name when making GraphQL nested queries
Describe the solution you'd like
Extract Operation name after the the keywords query, mutation or subscription.
Additional context

In the example below, openration name should be setted to IntrospectionQuery.

Operation names are already supported.

@imolorhe, how it works ?
I think that it should be extracted automatically from the query which will be a great feature.

Okay I'll check that.

This feature already exists. It wasn't enabled for normal single operation queries since those don't "need" the operation name to work.

All my GraphQL requests show the error:
{
      "errorType": "BadRequestException",
      "message": "No operation matches the provided operation name ."
}

How can I init the operationName parameter?

All my GraphQL requests show the error:
{
      "errorType": "BadRequestException",
      "message": "No operation matches the provided operation name ."
}

How can I init the operationName parameter?

Fixed in v2.4.2


fix: Dialog validate throw error when delete an action

Description
The options in parsed lgfile is undefined rather than empty array if there is no options.

Task Item
closes #3534

Screenshots

Coverage remained the same at 47.992% when pulling 9587cc44bca4ed2cef9d3c2183b7a3ca1d8441fd on lei9444:lgoptions into 2f655bba38c42900d2374c8fb349769f9158a664 on microsoft:master.


Configuration

Add the possibility to configure certain things

how to do data reload if downloading the list of elements from the internet /Z ?

@burkaslarry this issue is a good place to ask this question


Question:how to know if the struct I created Is correct?

I am new to rust so it would be great if there is some reference.
I have a json in my mind>
{
"path":"pathtothatproj",
"defaultcmd":"cp",
"Cmdlist":[
"cp":{"windows":"someoscommand","linux":"someoscommand"},
.....
]
}
I know that I need to Strongly typed json serialize,as mentioned in the readme,as the structure is kinda predictable
here is the struct rust code I have in my mind.
//OSdependentcmdtorun
#[derive(Serialize, Deserialize, Debug)]
struct Onecmd {
windows: String,
linux: String
}
//
#[derive(Serialize, Deserialize, Debug)]
struct Config {
proj_path:String,
defaultcmd:String,
Cmdlist:Vec
}
Is it correct?If its correct how do i now use this struct and read from a json?
and also create this struct object and write to the json?
Any reference would be helpful.thank you.

ah sorry read from string seems easy.let varname: Structname = serde_json::from_str(data)?;

maybe wrong repo?