Built-ins can’t use e:Scope parameter to refer to other n3 files.

Here is my test case:
$ cat test-a.n3
PREFIX : <http://www.example.com/test#>
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
:a :b :c.
{((<>) 1) e:call {:a :b :c} } => {:TEST :PASS 1}.
{((<./test-b.n3> ) 1) e:call {:a :b :c} } => {:TEST :PASS 2}. #don’t  work
{((<> <./test-b.n3> ) 1) e:call {:a :b :c} } => {:TEST :PASS 3}. #don’t  work

$cat test-b.n3
PREFIX : <http://www.example.com/test#>
:a :b :c.

$ eye --pass-only-new --nope ./test-a.n3
:TEST :PASS 1 .

I also tried other build-ins with e:Scope parameter, such as e:findall, and got similar result.
Is this a bug?

It is not a bug, it is not supported.
Like said in the schema http://eulersharp.sourceforge.net/2003/03swap/log-rules.html#Scope
the scope is a (context recursion) pair where a context is a list of consulted URI's and a recursion is the deductive closure recursion number.
The consulted URI's are the <data>* ones that you give in the command line eye <options>* <data>* <query>*

Thank you for your explanation, but I am still confused.
With same n3 files above, Use the following command line:
$ eye --nope ./test-a.n3 ./test-b.n3 --pass-only-new
I get
:TEST :PASS 3 .
It seems that in order for e:call to succeed, the consulted URI's in the scope must be exactly the same as * ones in the command line I give.
But what I want to do is to check if the target formula can succeed in another given formula or a given .n3 file.
so I wish to have:
:TEST :PASS 1 .
:TEST :PASS 2 .
:TEST :PASS 3 .

How can I achieve this?

It seems that in order for e:call to succeed, the consulted URI's in the scope must be exactly the same as <data>* ones in the command line I gave, and cannot be part of it. Is e:Scope designed to work like this?

Exactly and its typical use is as a variable which will get bound to the reasoning scope to be shown in proofs.

so I wish to have:
:TEST :PASS 1 .
:TEST :PASS 2 .
:TEST :PASS 3 .

How can I achieve this?

This not possible with e:call but you could for instance use
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
PREFIX : <http://www.example.com/test#>

:a :b :c.
{<./test-a.n3>!log:semantics log:includes {:a :b :c} } => {:TEST :PASS 1}.
{<./test-b.n3>!log:semantics log:includes {:a :b :c} } => {:TEST :PASS 2}.
{(<./test-a.n3>!log:semantics <./test-b.n3>!log:semantics)!log:conjunction log:includes {:a :b :c} } => {:TEST :PASS 3}.

Thank you for your reminder, but there is a important semantic difference compared to what I want to achieve , that is this usage do not support the conclusion of  backward rule, and e:call seems the only way to do this. For example:
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
PREFIX : <http://www.example.com/test#>
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>

{:d :e :f} <= {:a :b :c}.
:a :b :c.
{<>!log:semantics log:includes {:d :e :f} } => {:TEST :PASS 1}.#did not pass
{((<>) 1) e:closure {:d :e :f} } => {:TEST :PASS 2}. #did not pass
{((<>) 1) e:call {:d :e :f} } => {:TEST :PASS 3}. #passed

log:conclusion do not satisfied for same reason.
(I had also struggled to construct a backward compatible version of log:conclusion but failed. Something like
{?f e:callInFormula ?g} <= {?f e:convertToString ?s. ?s e:saveToTmpFile ?path. ((?path) 1) e:call ?g } .
).

The latest version of EYE https://github.com/josd/eye/releases/tag/v22.0103.1833 is extending e:call so that is able to call the object formula in the subject formula.
So now it can can do the job:
$ cat test-a.n3
PREFIX : <http://www.example.com/test#>

{:d :e :f} <= {:a :b :c}.
:a :b :c.

$ cat test-c.n3
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
PREFIX : <http://www.example.com/test#>

{<./test-a.n3>!log:semantics e:call {:d :e :f} } => {:TEST :PASS 1}.

$ eye --quiet --nope test-c.n3 --pass-only-new 2>/dev/null
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
PREFIX : <http://www.example.com/test#>

:TEST :PASS 1 .

Putting test-c.n3 into test-a.n3 and running test-a.n3 is an infinite loop.

This is really great! Now I can check a target formula both in a file or in a formula. Thank you for your prompt reply and hard work!


release on mouse works on OSX in iterm2 3.x beta

It appears that it may no longer be necessary to press y button to copy into the OSX system clipboard anymore, assuming iterm2 3.x beta and the 'Applications in terminal may access clipboard' option is enabled in settings.
"works for me". If anyone can confirm, it would be awesome to document and update the README. https://github.com/tmux-plugins/tmux-yank#notes

Oh, I see.. so if I understand it right iterm will do the copying from tmux to OSX clipboard?

@joemiller Would you be willing to look at the updated README to see if explains this well enough?

@docwhat 👍


__error.svelte renders in the wrong layout

Describe the bug
Errors can be rendered using the wrong layout. Instead of using __layout.svelte on the same level as __error.svelte, it sometimes uses a layout of a higher level.
Reproduction
I have a repo on Github with a minimal example: https://github.com/kevinrenskers/error-repro.
Start the dev server and go to http://localhost:3000/campaigns/1/characters/1:

Click on "Broken link" in the list on the left. Now an error page shows up, but the error is not shown next to the list, as I would expect:

It definitely has something to do with the __layout.svelte hierarchy, because as soon as you delete the one in [campaignId], the error shows as expected:

Logs
No response
System Info
System:
    OS: macOS 12.0
    CPU: (12) x64 Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz
    Memory: 8.23 GB / 32.00 GB
    Shell: 3.3.1 - /usr/local/bin/fish
  Binaries:
    Node: 16.6.2 - /usr/local/bin/node
    Yarn: 1.22.10 - /usr/local/bin/yarn
    npm: 7.20.3 - /usr/local/bin/npm
  Browsers:
    Safari: 15.0
  npmPackages:
    @sveltejs/kit: next => 1.0.0-next.164
    svelte: ^3.34.0 => 3.42.4

Severity
blocking all usage of SvelteKit
Additional Information
No response

I have a guess as to what's causing this. If my guess is right, it's caused by an assumption in the Svelte-Kit code that you'll have roughly the same number of __layout.svelte and __error.svelte components in your tree, and when that doesn't hold true, you get this error. To verify my theory, and possibly work around the bug, could you find any __layout.svelte components in your tree structure that don't have an __error.svelte component at the same level, and add an __error.svelte component at that level?
If I'm right about the cause, this isn't going to be as simple to fix as #2372 was, so you might need to use that workaround for a while.

What I described in https://github.com/sveltejs/kit/issues/2383#issuecomment-914792223 is actually how it works already (though undefined is inserted rather than null), so this won't be as hard to fix as I thought. I've got a bugfix written, and thanks to your minimal reproduction, I've been able to verify the fix. Now I just need to turn your repro into a unit test and I'll be able to create a PR. Thanks for a very well-written bug report that let me find the problem so quickly!


Enable all warnings in build

Add -Wall to the build (both the main project and the UT's.

Items this task should address:

Add the -Wall flag in the main CMakeLists.txt file
Verify it is also applied to unit tests (this should be propagated from the top-level build file)
Address any warnings found.

I can take this


"RequestContext" context was not provided

I'm following the guide, specifically this chapter (Refactor our Code).
The only difference is that I'm using .ts files instead of .js files like the guide.
I've been sure to make the handler.ts file the same as that of the guide, but with TypeScript types:
Here
However, when I make the POST request to /notes to create a new one, I get the following error:
"RequestContext" context was not provided.
I've tried changing the types of the function itself, and the lambda parameter, in handler.ts, but this error keeps appearing.
I get the same error when I try to GET an existing note too (so it's not just on POST).
Does anybody have any ideas?

Okay, so the issue was using the useBody and usePathParams hooks.
In create.ts, this does not work:
export const main = handler(async (_evt, _ctx) => {
  const body = useBody();
  // Request body is passed in as a JSON encoded string in 'body'
  const data = JSON.parse(body || "");
  const params = {
    TableName: Table.Notes.tableName,
    Item: {
      // The attributes of the item to be created
      userId: "123", // The id of the author
      noteId: uuid.v1(), // A unique uuid
      content: data.content, // Parsed from request body
      attachment: data.attachment, // Parsed from request body
      createdAt: Date.now(), // Current Unix timestamp
    },
  };

  await dynamoDb.put(params);

  return params.Item;
});

Whereas this does:
export const main = handler(async (_evt, _ctx) => {
  const body = _evt?.body || "";
  // Request body is passed in as a JSON encoded string in 'body'
  const data = JSON.parse(body || "");
  const params = {
    TableName: Table.Notes.tableName,
    Item: {
      // The attributes of the item to be created
      userId: "123", // The id of the author
      noteId: uuid.v1(), // A unique uuid
      content: data.content, // Parsed from request body
      attachment: data.attachment, // Parsed from request body
      createdAt: Date.now(), // Current Unix timestamp
    },
  };

  await dynamoDb.put(params);

  return params.Item;
});

(And the use of usePathParams in get.ts presents a similar problem)

Hmm I need to look at this in depth but we'll be working on a TS version soon.

Thanks!
Shall I close this for now?

Yeah go for it.

Bruh who are u
بتاريخ الجمعة، 28 أبريل 2023، جاء من Jay @.***>:

Yeah go for it.
—
Reply to this email directly, view it on GitHub
https://github.com/serverless-stack/sst/issues/2815#issuecomment-1528118015,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMU2EPIZWYW7MH3EKUI4RN3XDQZX3ANCNFSM6AAAAAAXOGLCPY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


update: improve support and tests for live-capture event selection

What type of PR is this?
/kind bug
/kind design
Any specific area of the project related to this PR?
/area engine
/area tests
What this PR does / why we need it:
This follows up the contributions of https://github.com/falcosecurity/falco/pull/2428 by fixing a design issue, adapting the codebase to the latest updates in libsinsp, and by growing the unit tests for the part of code responsible for event selection during live captures.
~400 lines of code of this PR are for tests.
Which issue(s) this PR fixes:
Special notes for your reviewer:
A lot changed this week, so here's quick recap for how Falco deals with events:

When reading capture files, Falco will receive and match rules for all events in the files
When opening a live capture for an event source that is not syscall, Falco will behave as usual
When opening a live event capture for the syscall event source:

Falco will determine a base set of events to collect. This can be the default minimum set that ensures state consistency and stability in libsinsp, or a custom set of events defined by the user through the base_syscalls configuration field.
The final selected set of events is the union of the base set computed in the previous step, and the events matched by the loaded rules. This can now include generic events too (never supported up until now)
If the -A flag is not set, performance-heavy syscalls are forcefully removed from the selected set (such as IO-intensive syscalls)
Falco will configure the chosen kernel driver with the selected set of events, and will only receive events matching the set

What was missing? The current implementation incorrectly uses the ppm_event_code enumerative as single source of truth for defining the set of selected events. This has some faults, the first being that there can be information loss about generic events. Instead, Falco needs to operate with both ppm_sc_code and ppm_event_code for their different purposes:

ppm_event_code is required for correctly matching events in the rulesets at runtime. In fact, Falco will receive events of all kinds (internal, container, plugin, old versions from capture files...), and needs to recognize and index them properly.
ppm_sc_code is required to define the set of selected events to configure the kernel drivers with. ppm_sc_code is a richer enumerative that has no information loss about generic events and  includes syscalls-related events only. The unit test suite now checks that everything works as expected.

What's still missing? The work and design discussion around https://github.com/falcosecurity/libs/pull/889 will lead to fixing two remaining problems:

Information loss when converting a ppm_sc_code to a ppm_event_code and viceversa.
Have a unique representation for events related to tracepoints (e.g. switch, procexit) and all the rest of the syscall events.

None of this is blocking for Falco in its current feature development status. Point 1) has no impact because Falco does not rely on the libsinsp conversion utilities, but searches for ppm_sc_codes in the ruleset right on instead. Point 2) will require a minor refactor in Falco because we currently have tracepoint in a different selection sets, however this will only be non-functional changes.
Does this PR introduce a user-facing change?:
update: improve support and tests for live-capture event selection

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.35.0

Just noticed that selected_event_set disappeared completely? Wouldn't we still need to activate all crucial non syscalls events for userspace? In addition, we could consider removing the static sinsp state enforcement from libsinsp::events::sinsp_state_event_set() again since we pivoted in the approach? https://github.com/falcosecurity/libs/blob/50aa2a0c9bb5f7e3c61dc0f2470f513521e34ec2/userspace/libsinsp/events/sinsp_events.cpp#L174

Just noticed that selected_event_set disappeared completely? Wouldn't we still need to activate all crucial non syscalls events for userspace?

This event selection process only concerns events that could be ignored at kernel-level, and for now we have no way to express the selection of non-syscall events (e.g. container) . This means that we'll keep receiving all of them even after these changes. Most of non-syscall events are meta-events or tracepoint-based events. The former are generated internally by libsinsp as part of its internal machinery, and the latter can be selected in the separate selected_tp_set.

Just noticed that selected_event_set disappeared completely? Wouldn't we still need to activate all crucial non syscalls events for userspace?

This event selection process only concerns events that could be ignored at kernel-level, and for now we have no way to express the selection of non-syscall events (e.g. container) . This means that we'll keep receiving all of them even after these changes. Most of non-syscall events are meta-events or tracepoint-based events. The former are generated internally by libsinsp as part of its internal machinery, and the latter can be selected in the separate selected_tp_set.

Thank you Jason. Fair to say it was never needed? https://github.com/falcosecurity/falco/blob/0.34.1/userspace/falco/app_actions/configure_interesting_sets.cpp#L38

Thank you Jason. Fair to say it was never needed? https://github.com/falcosecurity/falco/blob/0.34.1/userspace/falco/app_actions/configure_interesting_sets.cpp#L38

At the point in time of 0.34.0/.1, it was needed for printing the output of -i and the warning messages related to -A with its old behavior:

https://github.com/falcosecurity/falco/blob/9a4205cc70e449b170d32d3033dc7e74cf4ca613/userspace/falco/app_actions/print_syscall_events.cpp#L76
https://github.com/falcosecurity/falco/blob/0.34.1/userspace/falco/app_actions/print_ignored_events.cpp#L55

At the current time, storing this in the app state does not have value anymore, as the event set is not used only by the Falco engine.

cc @falcosecurity/falco-maintainers for visibility.

@jasondellaluce as we bump libs one more suggesting to update falco engine version as we will have new fields available as well, ty!

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP,jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Throwing errors when running uVision's and make_arm5c's compiled version of program.

When running after exporting and compiling in uVision, the following error occurs on serial output:
Mutex 20000490 error -6: Not allowed in ISR context

Can you tell me what target board this is, and output of mbed ls

Also, can you provide me a call stack from the error condition.
Thanks.

I am using a KW24D. The output of mbed ls is:

The call stack the moment before the error is thrown is here:

I just tried using running the program after exporting and compiling for make_arm5c, and received the same error:
Mutex 1fff8c98 error -6: Not allowed in ISR context

Thanks.
This looks clear now. MCR20A driver is calling Nanostack's API from IRQ context.
We should report this issue there.

@0xc0170 .. looks like this one is for MCR20 driver authors. Can you please tag relevant people? Thanks.

@0xc0170 .. looks like this one is for MCR20 driver authors. Can you please tag relevant people? Thanks.

@SeppoTakalo should know better, can you please?

@SeppoTakalo please comment

ARM Internal Ref: ONME-3193

This was fixed in https://github.com/ARMmbed/mcr20a-rf-driver/commit/72f895683b49bce928fbfaddd7d64ab681122eec
Needs re-testing in Uvision

Confirmed this works in Uvision5 using exporters


Unable to download app

After install plugin i got message "Unable to download app".
Do you have any idea?

Not sure that plugin has something to do with that... Since you've closed the issue - what was it?

It was problem with my Provision Profile)

Cool, thanks :)


Weaken CMake version check for Android

It's not that simple. There are different set of variables which will provide/set information about Android build. Starting with CMake 3.7.1 there are standard set introduced, Hunter is using it since 0.17:

https://docs.hunter.sh/en/latest/quick-start/cmake.html

Before Hunter was using taka-no-me toolchain:

http://polly.readthedocs.io/en/latest/toolchains/android/old.html

In general I don't know how to support Android Studio nicely while it's using builtin CMake 3.6 with custom toolchain and one more set of Android variables. Supporting both sets will be a huge mess I think. There is an openned discussion already, please leave any notes there:

https://github.com/ruslo/hunter/issues/618

I still have not been able to get the new Android 3.7.1+ codepath to work at all.
Even trying to use just gcc-4.9, it fails spectacularly.
It complains about:

cannot find crtend_android.o: No such file or directory

and does not respect CMAKE_SYSROOT to find this.
On the second attempt to compile, it will use host compiler instead!
My (failed) attempt:
cmake $ROOT -DCMAKE_SYSROOT=${ANDROID_NDK}/platforms/android-${ANDROID_NATIVE_API_LEVEL}/arch-arm64 -DCMAKE_BUILD_TYPE=$CONFIG -DCMAKE_SYSTEM_NAME=Android -DCMAKE_SYSTEM_VERSION=${ANDROID_NATIVE_API_LEVEL} -DCMAKE_ANDROID_NDK=$ANDROID_NDK -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=4.9 -DANDROID_NATIVE_API_LEVEL=${ANDROID_NATIVE_API_LEVEL} -DCMAKE_ANDROID_ARCH_ABI=${ANDROID_ABI} -DANDROID_NDK_ABI_NAME=${ANDROID_ABI}
Note: Also doesn't work with polly scripts
It is very hard to use and I wonder if anyone has got it working (outside of a test that compiles only one library). Having the ability to use the older version is ideal so I can continue updating Hunter until the new code path is fixed.

Maybe if we can fix up the new Android 3.7.1 codepath to work as well as the old one, it would be fine. Right now I can't compile a lot of libraries.
Using polly or even manually setting up android, it gives me this when compiling, for example, OpenCV:

[ 61%] Building CXX object modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/loadsave.cpp.o
In file included from /usr/include/features.h:434:0,
from /usr/include/bits/libc-header-start.h:33,
from /usr/include/limits.h:26,
from /home/sacha/.hunter/_Base/ebea5d2/9f20262/8a35d48/Build/OpenCV/Source/modules/hal/include/opencv2/hal/defs.h:52,
from /home/sacha/.hunter/_Base/ebea5d2/9f20262/8a35d48/Build/OpenCV/Source/modules/core/include/opencv2/core/cvdef.h:59,
from /home/sacha/.hunter/_Base/ebea5d2/9f20262/8a35d48/Build/OpenCV/Source/modules/core/include/opencv2/core.hpp:52,
from /home/sacha/.hunter/_Base/ebea5d2/9f20262/8a35d48/Build/OpenCV/Source/modules/imgcodecs/include/opencv2/imgcodecs.hpp:46,
from /home/sacha/.hunter/_Base/ebea5d2/9f20262/8a35d48/Build/OpenCV/Source/modules/imgcodecs/src/precomp.hpp:45,
from /home/sacha/.hunter/_Base/ebea5d2/9f20262/8a35d48/Build/OpenCV/Source/modules/imgcodecs/src/loadsave.cpp:46:
/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory
include <gnu/stubs-32.h>

Android Studio doesn't work well currently, the reason and detailes can be found here:

https://github.com/ruslo/hunter/issues/618

Closing.


Wrong method signature in Router Facade.

Laravel Version: 5.7.17
PHP Version: 7.2

Description:
In framework/src/Illuminate/Support/Facades/Route.php there is this line:

@method static \Illuminate\Routing\Router|\Illuminate\Routing\RouteRegistrar group(array|\Closure|string $attributes, \Closure|string $routes)

This method in the case it returns a RouteRegistrar (such as reported in documentation) it has only one parameter.
So my IDE warnings me about wrong method usage when, in fact, I'm using it correctly.

It actually pipes the call to the router itself so I think the hint is correct. Can you share the particularly route which is causing trouble?

Route::namespace('Idsign\Permission\Http\Controllers')->prefix('/acl')->group(function (){
     Route::prefix('/sections')->group(function (){
         Route::get('get-tree', 'SectionController@getTree');
     });
});

In both case my ide warning me but the route work as explained in documentation you provided

If I use that example my IDE doesn't warns me. If you look at the examples, they all call the group method after a different method call. If you use Route::group directly you'll indeed need to provide two arguments.


VIsualizing state management using Xstate in VueJS

Topic Suggestion
visualizing state management using Xstate in VueJS
Pre-submission advice
By following all our pre-submission advice and reviewing our Resources folder, you will maximise your chances of your topic being approved.
We ask that you please be patient as our team works through approving and publishing all articles/tutorials in a timely manner.
Allow 1-3 days for a topic to be reviewed and/or approved - allow 3-7 days for an articles to be reviewed and/or published (subject to vary depending on volume and/or backlog of articles).
Proposal Submission
Proposed title of article
Proposed article introduction
I will be delving into Xstate in VueJS and how to work with it in visualizing state management.
For example, if the article is based on machine learning, use the following: [Machine learning] Introduction to Machine Learning.
If the article is based on developing an Android application, use the following: [Android] Developing Apps using Android.
ONLY viable topics to pick from:

API
Artificial Intelligence
Blockchain
Containers
Edge Computing
Languages
Machine Learning
Networking
Node.js
Security

Key takeaways

What is Xstate in Vuejs?
How to implement Xstate?
What is state management>
How to visualize statement using Xstate in vuejs

Article quality
I will be diving deeper to show practically how to use the new feature xstate. I will also show how to use it for state management.

Hi @ROYFORDWANYOIKE2001
Thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

I have noticed you haven't removed the pre-submission advice. You can clean up the suggestion by removing those details that aren't part of your suggestion before the CMs get to it. This will help them clearly see your content and review it with ease.

@LinusMuema I have edited its okay now

This topic appears somehow oversaturated.
Thank you for your response and we thank you for submitting your topic. After some careful consideration it struck us that this topic may be a bit over saturated throughout other blog sites and official documentations as previously mentioned on your topic form by our content moderator.
We typically refrain from publishing content that is covered widely on the net or other blogs. As we're more interested in original, practitioner-focused content that takes a deeper dive into programming-centric concepts.


型号S12设备不支持，提示：Do not support chatgpt

设备型号S12，一通配置结果不支持，查了config配置文件，好像不支持。
怎么查询

参考这个 readme
https://github.com/yihong0618/MiService

mcl@Blackly:~$ micli spec xiaomi.wifispeaker.lx04
Generated by https://github.com/Yonsm/MiService
http://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:speaker:0000A015:xiaomi-lx04:2
Device_Information = 1
Device_Manufacturer = 1
Device_Model = 2
Device_Serial_Number = 3
Current_Firmware_Version = 4
Speaker = 2
Volume = 1  # uint8  # rw
Mute = 2  # bool  # rw
Play_Control = 3
_Playing_State = 1  # uint8  # n
_Play = 1
_Pause = 2
_Next = 3
_Previous = 4

Microphone = 4
Mute = 1  # bool  # rw
Intelligent_Speaker = 5
_Text_Content = 1
_Silent_Execution = 2  # uint8
Sleep_Mode = 3  # bool  # rwn
Audio_Id = 4  # rn
_Play_Text = 1  # in=[1]
_Wake_Up = 2  # in=[1]
_Play_Radio = 3
_Execute_Text_Directive = 4  # in=[1, 2]

Clock = 6
_Stop_Alarm = 1

Speaker_Volume
MIN = 5
MAX = 100
Play_Control_Playing_State
Stop = 0
Playing = 1
Pause = 2
Intelligent_Speaker_Silent_Execution
On = 0
Off = 1

数据如下，怎么提取呢？
mcl@Blackly:~$ micli spec xiaomi.wifispeaker.lx04
Generated by https://github.com/Yonsm/MiService
http://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:speaker:0000A015:xiaomi-lx04:2
Device_Information = 1
Device_Manufacturer = 1
Device_Model = 2
Device_Serial_Number = 3
Current_Firmware_Version = 4
Speaker = 2
Volume = 1  # uint8  # rw
Mute = 2  # bool  # rw
Play_Control = 3
_Playing_State = 1  # uint8  # n
_Play = 1
_Pause = 2
_Next = 3
_Previous = 4

Microphone = 4
Mute = 1  # bool  # rw
Intelligent_Speaker = 5
_Text_Content = 1
_Silent_Execution = 2  # uint8
Sleep_Mode = 3  # bool  # rwn
Audio_Id = 4  # rn
_Play_Text = 1  # in=[1]
_Wake_Up = 2  # in=[1]
_Play_Radio = 3
_Execute_Text_Directive = 4  # in=[1, 2]

Clock = 6
_Stop_Alarm = 1

Speaker_Volume
MIN = 5
MAX = 100
Play_Control_Playing_State
Stop = 0
Playing = 1
Pause = 2
Intelligent_Speaker_Silent_Execution
On = 0
Off = 1

mcl@Blackly:~$ micli spec xiaomi.wifispeaker.lx04

这个命令里最后一部分lx04是型号，你要换成自己的型号

最新数据如下：
mcl@Blackly:~/.local/lib/python3.8/site-packages/xiaogpt$ micli spec xiaomi.wifispeaker.s12
Generated by https://github.com/Yonsm/MiService
http://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:speaker:0000A015:xiaomi-s12:2
Device_Information = 1
Device_Manufacturer = 1
Device_Model = 2
Device_Serial_Number = 3
Current_Firmware_Version = 4
Speaker = 2
Volume = 1  # uint8  # rw
Mute = 2  # bool  # rw
Microphone = 3
Mute = 1  # bool  # rw
Play_Control = 4
_Playing_State = 1  # uint8  # n
_Pause = 1
_Play = 2
_Next = 3
_Previous = 4

Intelligent_Speaker = 5
_Text_Content = 1
_Silent_Execution = 2  # bool
Sleep_Mode = 3  # bool  # rwn
Audio_Id = 4  # rn
_Play_Text = 1  # in=[1]
_Play_Music = 2
_Wake_Up = 3
_Play_Radio = 4
_Execute_Text_Directive = 5  # in=[1, 2]

Clock = 6
_Stop_Alarm = 1

Speaker_Volume
MIN = 1
MAX = 100
Play_Control_Playing_State
Stop = 0
Playing = 1
Pause = 2

这个错误和你分析的原因不匹配，Do not support chatgpt不是设备问题，是你的 bot没选对，只能是 gpt3 或者 chatgptapi
设备应该是支持的，不需要改任何东西

先关了哈，有问题随时再打开

设备型号S12，一通配置结果不支持，查了config配置文件，好像不支持。


Xlsx invalid signature: 0x80014

Am getting an invalid signature: 0x80014 when reading an excel sheet that has 1 worksheet and 1443 rows, 8 cols to data. For some reason, this error starts been generated when the excel sheet has more than 1370 rows of data.
Any ideas?

https://github.com/EvanOxfeld/node-unzip/issues/89

https://github.com/EvanOxfeld/node-unzip/issues/89

I changed unzip with unzip2 and all works well.
https://github.com/gormat/node-excelJS-fixed-unzip

Now published (0.2.6) with unzip2

Hi! I'm having this issue again, thanks

same here, file was created by exceljs. But if i try to read it again without making any modification, it doesn't work.


Update 0.0.21 on 12/19 getting errors with "ERROR	setup	unable to start manager	{"error": "configmaps lock is removed, migrate to configmapsleases"}"

I1219 21:21:45.004090       1 request.go:601] Waited for 1.034362795s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/hiveinternal.openshift.io/v1alpha1?timeout=32s
1.6714849103101313e+09	ERROR	setup	unable to start manager	{"error": "configmaps lock is removed, migrate to configmapsleases"}
main.main
/home/runner/work/group-sync-operator/group-sync-operator/main.go:78
runtime.main
/opt/hostedtoolcache/go/1.18.9/x64/src/runtime/proc.go:250
I have 3x Openshift 4.11 all were working with 0.0.20 and now the pod does not start.  I also tried a fresh install using the operator but same error.  At this point I cannot add/rm Azure AD groups to my OCP systems.

please see #234
New release should be out today

Thanks for the quick update Andy!

0.0.22 should be available now

@u849296 when you get a chance to confirm the new version has no issues, would you be able to close the issue?


HentaiMama still doesn't load the episodes of some entries after update 13.5

Source information and language
HentaiMama 13.5
Steps to reproduce
NSFW warning
https://user-images.githubusercontent.com/75091899/193181436-85c2c861-dda3-4796-8c17-e59a23984d77.mp4
NSFW warning due to the nature of the extension.
Expected behavior
Episodes of all entries load
Actual behavior
Some entries episodes don't load
Aniyomi version
r5237
Android version
Android 8
Other details
I already reported the issue/bug https://github.com/jmir1/aniyomi-extensions/issues/892 and it was closed because completed. i updated tge extension and the problem was still there.
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 0.13.5.
[X] I have updated all installed extensions.
[X] I have tried the troubleshooting guide.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I will fill out all of the requested information in this form.

Have you really updated the extension?
I dont have this problem anymore:

Please share the error message if it persists.

i disinstalled the extension and installed it again. @thatDudo

go to settings > advanced > clear chapter and episode caches
if it doesnt help maybe try clicking on the webview button bellow the thumbnail and see if the website even loads...

i deleted all the data of aniyomi and then restored a backup. now it works, my bad then


Is there any way to use icons with a  or  tag instead of the  tag?

I find difficult to style the imported icons, mainly referring to the dimensions, "white" space around the icon, etc. Perhaps an easier way would be to use the icons within an  or  tag.
Is this possible?

Possibly - depending on what you're trying to accomplish.  You can always wrap Styled Icons in your own custom component and thus surround the SVG tag with something else:
import React from 'react'

const IconWrapper = ({icon}) => {icon}

// or with TypeScript / types

import React from 'react'
import {StyledIcon} from 'styled-icons/types'

interface Props {
  icon: StyledIcon
}

const IconWrapper: React.FC<Props> = ({icon}) => {icon}

Then you can do something like:
import {Person} from 'styled-icons/material'

const App = () => (
  <IconWrapper icon={Person} />
)

If you'd like to instead replace the SVG tag with something else, that's likely not possible here, since this library's goal is to provide SVGs as React/Styled components.
You may have seen something like  elsewhere, and that's typically used with a font-based icon delivery system.  There are workarounds, but the downside there is it's harder to ship only the icons that your app is using, vs everything inside the single font file.  But regardless, styled-icons doesn't ship with font-based icons.
For the  tag, you'd likely need access to the "real" SVG markup so that you could use it as a data-uri inside the src attribute, and Styled Icons are React components, so they can't fit inside an HTML attribute.  I'm hoping someday to create a new NPM library that contains just the SVGs of icons and then use that package as the data source for styled-icons, and with that you could potentially embed SVGs as data URIs.  But regardless, if you're looking to do that today, then you'll want a different icon library.
Let me know if I've misunderstood what you're trying to do here or if anything was confusing!

Thanks, a great explanation :)
My motivation was that the only way to adapt some svg icons was through viewbox, and that cannot be modified through css. One possibility was to build the svg tag somehow, or to change the tag altogether (and then the question).
At the end though this is too overkill, and I'll just stick to icons that don't have this extra-space around.

Oh interesting, @leworking do you have any examples or code snippets that produce that issue?  If there's something wrong with the icons themselves like extra space, it's possible I may be able to fix that in the icon preprocessor here.

It was just importing an arrow icon that I liked, and then I couldn't style it well enough. It had a significant padding around it, as if it was a bitmap with real blank space, not cropped.
Then I realized it wasn't one of the FontAwesome free icons (don't remember which was though), and I tried one of those and it didn't have that padding, so problem solved. Before that, I saw that I could modify viewBox to sort of crop the icon. Too hacky and inconsistent, however.
So far I've been using FA icons and all of them seem to be free from blank space. It is also possible that if you work with big spaces, this is not an issue for you. In my case I wanted the icon to fit in a small space, so it mattered to me.
*I'd say if the source icon is not good enough, then it is a problem of the icon, not of styled-icons


⚠ LabBricks has degraded performance

In 2071a52, LabBricks (https://labbricks.com) experienced degraded performance:

HTTP code: 523
Response time: 3287 ms

Resolved: LabBricks performance has improved in bacd575 after 12 minutes.


Add a tokenize function to take empty tokens into account

Resolves #1881.
I didn't use the new function everywhere most of the time we need to ignore empty tokens.

Take review into account and rebase to resolve the config.


Hard to understand the 5 scenarios

It is really hard to understand the 5 scenarios, are they related?  The better to use diagram to describe the changes and why.

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

ID: 7266ae4e-2c31-39a0-3357-a170c20e77af
Version Independent ID: 361a4286-dd25-4a92-1545-52271d6502bf
Content: Azure AD UserPrincipalName population
Content Source: articles/active-directory/connect/active-directory-aadconnect-userprincipalname.md
Service: active-directory
Product: unspecified
GitHub Login: @billmath
Microsoft Alias: billmath

@johnneycao Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.

@johnneycao  thank you for submitting this.  I have created a work item for this, as this is going to require me to get some verification from the engineering team.  At this point I am going to close the issue and I will re-open this once I have an updated.  Thanks again!
#please-close

@johnneycao We will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.

@johnneycao Wanted to let you know this doc has been updated and now includes some art to assist.  Let me know any feedback.  Thanks!


[WIP] Adjust toast to be triggered via button

Description
Updates to toast display to be triggered by clicking on an element (button).
Screenshots
TBD
Steps for testing

Visit http://localhost:4000/pages/breakout/element/toast
Click on the buttons and verify toast appears.

@pixelflips Nice start here. This idea is much needed to clean up the docs site. A few concerns with the current solution:

Toast is simple enough that passing content this way should be ok, but I wonder about long-term scalability in passing all the HTML content through attrs like this.
I'm not excited about the disconnect this causes by using JS to add the element; seems like a potential for things to get out of sync if we're not careful.

What do you think about a solution that toggles an element on and off like we do with modals or Quinton's recent work on Popovers? In fact, the React component has some modality built into it for triggering the element on demand. This could be set to fire automatically or to wait for a click from a paired trigger?
Regardless thanks for taking this on! LMK if you'd like to talk more.

@pixelflips Nice start here. This idea is much needed to clean up the docs site. A few concerns with the current solution:

Toast is simple enough that passing content this way should be ok, but I wonder about long-term scalability in passing all the HTML content through attrs like this.
I'm not excited about the disconnect this causes by using JS to add the element; seems like a potential for things to get out of sync if we're not careful.

What do you think about a solution that toggles an element on and off like we do with modals or Quinton's recent work on Popovers? In fact, the React component has some modality built into it for triggering the element on demand. This could be set to fire automatically or to wait for a click from a paired trigger?
Regardless thanks for taking this on! LMK if you'd like to talk more.

@pixelflips Nice start here. This idea is much needed to clean up the docs site. A few concerns with the current solution:

Toast is simple enough that passing content this way should be ok, but I wonder about long-term scalability in passing all the HTML content through attrs like this.
I'm not excited about the disconnect this causes by using JS to add the element; seems like a potential for things to get out of sync if we're not careful.

What do you think about a solution that toggles an element on and off like we do with modals or Quinton's recent work on Popovers? In fact, the React component has some modality built into it for triggering the element on demand. This could be set to fire automatically or to wait for a click from a paired trigger?
Regardless thanks for taking this on! LMK if you'd like to talk more.

@philschanely - since this was just an initial stab at some cleanup, your suggestions definitely make sense. Let me check out the modal and popover and I might have some questions.... stay tuned and thanks again!

@pixelflips Nice start here. This idea is much needed to clean up the docs site. A few concerns with the current solution:

Toast is simple enough that passing content this way should be ok, but I wonder about long-term scalability in passing all the HTML content through attrs like this.
I'm not excited about the disconnect this causes by using JS to add the element; seems like a potential for things to get out of sync if we're not careful.

What do you think about a solution that toggles an element on and off like we do with modals or Quinton's recent work on Popovers? In fact, the React component has some modality built into it for triggering the element on demand. This could be set to fire automatically or to wait for a click from a paired trigger?
Regardless thanks for taking this on! LMK if you'd like to talk more.

@philschanely - since this was just an initial stab at some cleanup, your suggestions definitely make sense. Let me check out the modal and popover and I might have some questions.... stay tuned and thanks again!


Remove unneeded buttons from test page

Removes these from sample page as they are not used:

Also minor dev deps update and GitHub Action test tweaks

What is github/workflow/test.yml is for?

It's the same as running npm run lint from CLI... which runs this:
    "lint": "npm-run-all lint-css lint-html lint-js",
    "lint-css": "stylelint \"assets/css/*.scss\"",
    "lint-html": "htmlhint \"layouts/**/index.html\"",
    "lint-js": "eslint \"assets/js/*.js\" \"layouts/**/*.html\"",

Ideally we want to add this same GitHub Action to all of our repos.


Add HAPI status codes

This commit adds a case class for HAPI statuses that includes the code and the associated message as well as the set of statuses suggested in the specification.
I chose to make Status a case class because we can take advantage of automatic derivation of JSON encoders.
When we begin implementing the endpoints we'll be able to construct responses like this:
import io.circe.generic.auto._
import io.circe.syntax._
import org.http4s.circe._

case class SomeResponse(data: List[Int], status: Status)

Ok(SomeResponse(List(1, 2, 3), Status.`1200`).asJson)

Resolves #2.

It seems to me that latis.server.Status is likely to clash with something. I think we decided at some point not to put things in latis.server.hapi, but I don't remember why. It's starting to sound like a good idea now.

What about HapiStatus?

It sounds like the consensus is to use a hapi.server package with a latis subpackage for LaTiS specific implementations.

I've made #17 to address some of the issues that came up about package names and repositories.


[AutoPR containerservice/resource-manager] [Hub Generated] Review request for Microsoft.ContainerService to add version 2019-02-01

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5350

(message created by the CI based on PR content)

Codecov Report

Merging #4516 into master will increase coverage by 3.95%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #4516      +/-   ##
==========================================
+ Coverage   49.49%   53.45%   +3.95%
==========================================
  Files        6303    10218    +3915
  Lines      176618   215053   +38435
==========================================
+ Hits        87420   114958   +27538
- Misses      89198   100095   +10897

Impacted Files
Coverage Δ

...03_31/models/managed_cluster_agent_pool_profile.py
35.71% <ø> (ø)

...1/models/managed_cluster_agent_pool_profile_py3.py
35.71% <ø> (ø)
:arrow_up:

.../mgmt/containerservice/container_service_client.py
55.42% <0%> (-5.11%)
:arrow_down:

...ion/face/models/name_and_user_data_contract_py3.py
62.5% <0%> (-37.5%)
:arrow_down:

.../vision/face/operations/person_group_operations.py
23.71% <0%> (-17.53%)
:arrow_down:

...testlabs/operations/virtual_machines_operations.py
10.55% <0%> (-4.03%)
:arrow_down:

...testlabs/operations/global_schedules_operations.py
12% <0%> (-4%)
:arrow_down:

...gmt/devtestlabs/operations/schedules_operations.py
13.41% <0%> (-3.96%)
:arrow_down:

...operations/virtual_machine_schedules_operations.py
14.68% <0%> (-3.94%)
:arrow_down:

...testlabs/operations/virtual_networks_operations.py
14.68% <0%> (-3.76%)
:arrow_down:

... and 4601 more

Continue to review full report at Codecov.

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

#4527 appears to be newer than this and contains the fix I mentioned above, so let's merge it instead.


Do not loop forever when skip_lines regexp matches zero length with anchors

This started failing in v3.0.2.
There is a minimal repro case in the test.

Another approach that would work is to set skip_blanks if the skip_lines pattern matches an empty string during initialization; that would avoid changes in the hot loop.

Thanks.
I chose eos? in skip_needless_lines? because the same problem is happen by another skip_needless_lines? call with the original approach.


Add total number of edges/moves to the game-tree report

Actually, the report already has the number of positions. This is likely just one more than the number of moves (because the number of positions includes the initial position). Maybe just some relabeling to indicate the similarity. Or better, put the number of moves there as originally proposed in this issue.

Closed as out of scope for this repository.


Adds charm publish github action

After a PR merges, a new charm revision will be published on charmhub.io.
This job requires a CHARMCRAFT_TOKEN secret to be added to the project with the permissions: package-manage, package-view-revisions. The token can be generated by running:
charmcraft login --export=secrets-waltz.auth --charm=finos-waltz-k8s \
  --permission=package-manage --permission=package-view-revisions \
  --channel=edge --ttl=1576800

Ref: https://github.com/canonical/charming-actions#usage

LGTM - though @pedroleaoc will need to add that token as I don't have permissions! Thanks!


GroupBy with Where Aggregate produces incorrect SQL

var StartDate = DateTime.UtcNow;
var EndDate = DateTime.UtcNow;
var Test = (from orderPlaced in db.Orders
            where orderPlaced.OrderDate > StartDate && orderPlaced.OrderDate < EndDate
            group orderPlaced by new { orderPlaced.Id } into orderPlacedGrp
            select new OrderPlaced()
            {
                Placed = orderPlacedGrp.Where(x => x.IsPlaced == true).Count(),
                UnPlaced = orderPlacedGrp.Where(x => x.IsPlaced == false).Count(),
            }).AsQueryable().ToList();

public class Order
{
    public int Id { get; set; }
    public bool IsPlaced { get; set; }
    public DateTime OrderDate { get; set; }
}

public class OrderPlaced
{
    public int Placed { get; set; }
    public int UnPlaced { get; set; }
}

Generates
SELECT COUNT(*) AS [UnPlaced]
FROM [Orders] AS [orderPlaced]
WHERE ([orderPlaced].[OrderDate] > @__StartDate_0) AND ([orderPlaced].[OrderDate] < @__EndDate_1)
GROUP BY [orderPlaced].[Id]

Do we have work aound for this issue ?
Thank's

Right now, even with the fix this would do client side grouping. So best work-around would be to split it into 2 queries (one for Placed & another for UnPlaced).
Do you expect it to be translated to single Query into server using Group By clause? If yes, then what would be the server query?

@smitpatel the server query should be something like this, using COUNT(CASE WHEN ...): https://github.com/tuespetre/Impatient/blob/ac212ae5f03119690aa97873b5e968ab29ab7fd7/test/Impatient.Tests/QueryTests.cs#L1797

@tuespetre - Thanks for info. I filed #11711 to improve translation in future release.


e2e: add tests for RBD VolumeGroupSnapshots

Support for RBD VolumeGroupSnapshots is coming soon. However the implementation depends on changes in librbd, which are currently only available in the Ceph master branch.
Only when librbd in the Ceph-CSI container has support for the new function, the tests should te attempred
Related issues
This is no a 100% strict dependency, as current Ceph releases do not have the required functions yet. It is expected that #4502 gets merged before Ceph has a stable release (non master branch builds).
Sortof-depends-on: #4502
Example YAML files that are used by the test are posted as #4901.

Show available bot commands
These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:

/retest ci/centos/<job-name>: retest the <job-name> after unrelated
failure (please report the failure too!)

/test ci/centos/mini-e2e-helm/k8s-1.31

/test ci/centos/mini-e2e-helm/k8s-1.31

This job is expected to pass, with the VolumeGroupSnapshot test getting skipped.

/test ci/centos/mini-e2e-helm/k8s-1.31

This job is expected to pass, with the VolumeGroupSnapshot test getting skipped.

The e2e run contains this note in the logs:
[SKIPPED] librbd does not support required VolumeGroupSnapshot function(s)

@mergifyio rebase

/test ci/centos/mini-e2e/k8s-1.29

These two commits have been added to #4502 for testing.

@Mergifyio queue


Fixed the API endpoint /api/tags when the model list is empty.

Summary
Fixed an issue with the /api/tags endpoint where an empty model list was returning {models: null}. The endpoint now returns {models: []} when no models are available.

Thanks for the PR!


[FEATURE]: Use styled-components for CSS-in-JS instead of plain CSS

Is your feature request related to a problem? Please describe.
I've identified some challenges in our project's current styling approach using plain CSS, and I believe these challenges are impeding our development efficiency and codebase maintainability. The issues we're facing include:

Global Scope Conflicts: Plain CSS leads to class name clashes and unintended style overrides across components.

Lack of Encapsulation: Global CSS makes it hard to contain styles within components, resulting in unwanted styling bleeding into others.

Complexity and Maintenance: Managing multiple CSS files and dependencies is becoming overwhelming.

Performance Impact: Large CSS files affect our site's loading speed, especially on slower networks.

Describe the solution you'd like
I propose adopting styled-components for styling in our project to address these challenges:

Scoped Styles: styled-components keeps styles scoped to components, eliminating global scope issues.

Component-based Styling: It enables the creation of reusable styled components, improving code organization and maintainability.

Dynamic Styling: styled-components allows styles to change dynamically based on component props, enhancing flexibility.

Performance Benefits: The library generates optimized styles for each component, resulting in improved performance.

Enhanced Performance: styled-components can improve website performance by generating optimized styles for each component. This means that only the necessary styles are included in the final CSS, leading to reduced file sizes and faster loading times. As a result, our website's user experience will be enhanced, particularly on slower network connections and devices.

Describe alternatives you've considered
I've reviewed options:

CSS Modules: Limited encapsulation compared to styled-components.
But CSS-in-JS stands ahead always, so we should consider implementing it.

P.S - I would like to work on it.

Hi @Lucif3r-in. Please assign me this issue.

Hey @ChaudharyRaman, thank you for your interest but I will be working on this issue if approved by the mentors as I have already mentioned.

@frouioui If you agree with this suggestion I can work on it.

Hello! Thank you for opening this, @marsian83 has been working on removing some of our CSS and using Tailwind instead. @marsian83 do you reckon we can close this issue?

Yes, since we use tailwind now, this won't be needed as we longer face most of the highlighted issues


Use bmaptool SD card writing strategy to speed up card writing.

Look in to either using bmaptool or a similar strategy to improve writing speed of SD cards.

This task needs serious studying of how bmaptool performs its job, and an actual implementation in a separate NPM module.

I've studied bmaptool and it seems to use GNU/Linux specific features to perform it's job, but not sure it it's just the implementation or or necessarily requires those features, for example to get the host block size for the image. I also get the following error on OS X:

The kernel or file-system does not support SEEK_HOLE and SEEK_DATA.

bmaptool accelerates the writing of images when said images are stored in a sparse file. A sparse file is a file that its reported size is larger than its size on disk. The acceleration comes from not writing the empty sections of the sparse files (holes) and only writing the data sections.
SEEK_HOLE and SEEK_DATA should only be needed for the initial creation of the hole/data map file and then it could be used by any operating system to write the blocks of data in the right offsets, you don't need the original sparse file at this point.
Our images are already stored as a sparse file on the build server:
$ du -h resin-image-raspberrypi2.resin-sdcard
1.3G	resin-image-raspberrypi2.resin-sdcard
$ du -h --apparent-size resin-image-raspberrypi2.resin-sdcard
1.5G	resin-image-raspberrypi2.resin-sdcard

This means we can save time by not writing those 200MB. Also, I have a suspicion that the image file could be even sparser by improving the creation of the btrfs partition in yocto.

@petrosagg What about generating the map file server side? bmaptool exposes a command for that.
This would be easier once we serve static un-configured images. Then, for example, I could fetch /static/images/raspberry-pi.img and /static/images/raspberry-pi.img.map.

Yes, that's exactly what I had in mind.

I'm closing this since the feature will be implemented in Etcher, whose backend is then re-used in the Resin CLI: https://github.com/resin-io/etcher/issues/171


Clickable Controlled Access Headings should perform an "exact match" search on the same field. Right now they are performing a key word search on any field.

I made some changes for the Browse page which will resolve this issue as well.


DungeonAlchemist: Fixed issue with no grid on page

@shdwjk Could you solve the merge conficts and I'll be sure to get it deployed once that is done

@shdwjk Still seeing merge conflicts on this PR

Closing as merge conflicts are still present.


Make kube-up, e2e tests kubeconfig aware

Currently, if have an existing cluster that was created via kube-up, running e2e tests squashes the kubernetes_auth and cert files in $HOME.
Now that kubectl can load config from a .kubeconfig file and provides kubectl config commands to create/edit said file, kube-up should instead generate a cluster and user entry in the current kubeconfig and put cert files somewhere other than $HOME (or else rename them to avoid overwriting).

Closed by #4034.


[Rancher2] Change Requirements for Windows Clusters

This section has to change now that we support other versions of windows

The rancher docs still do not reflect the versions of windows we support on 2.5.x. @catherineluse Can you please confirm if any changes have been made?

@sowmyav27 Yes, the support changed to support the Windows Server versions supported by Microsoft. We updated the docs to reflect it.


Stub cells do not include a style when they should

I have an Excel spreadsheet with cells that all have a background fill. Some of those cells have text, some are empty.
When reading the file with styles and stubs enabled, the cells that are empty (stub type cells) do not contain styling information, even though in Numbers (macOS equivalent of Excel) they are filled.
Code for reading the file:
const workbook: xlsx.WorkBook = xlsx.readFile("/path/to/spreadsheet.xlsx", {
    cellStyles: true,
    sheetStubs: true,
});
const sheet: xlsx.Sheet = workbook.Sheets[workbook.SheetNames[0]];

Object.keys(sheet)
    .filter((key: string) => !key.startsWith('!'))
    .map((key: string) => sheet[key])
    .filter((cell: xlsx.CellObject) => cell.t === 'z')
    .forEach((cell: xlsx.CellObject) => console.log(cell));

All the objects that snipped logs are exactly the same, regardless of whether the cell has a background fill or not:
{t: 'z'}

Whereas for other cells it includes them:
{
  t: 's',
  v: 'Text',
  r: '<t>Text</t>',
  h: 'Text',
  w: 'Text',
  s: {
    patternType: 'solid',
    fgColor: { rgb: 'CCCCCC' },
    bgColor: { rgb: 'CCCCCC' }
  }
}

I saw a similar issue, so I am aware that the Pro version (presumably) handles this correctly (or at least better).
My issue is that, seeing as basic style parsing is supported in the Open Source version already (fgColor and bgColor), it doesn't seem to make much sense (for me at least) that js-xlsx only parses the background fill for cells which are not empty. Intuitively I'd assume that if it supports background fill parsing, that it wouldn't leave some cells out.
Is this intended, or is it just a bug?

I found the PR that implemented the existing functionality, but I didn't notice any column type checks or anything there, which leads me to assume that there's some intermediary process that either filters out the stub cells and then parses the fills, or that the stubs are generated after everything else is parsed.

6c0ada179027f58db2b5c5f0aa6f3ecaef7224aa


Detect module.require dependency

Do you want to request a feature or report a bug?
Report a bug

What is the current behavior?
Webpack does not resolve dependencies (or generate warnings) when using module.require, module.parent.require, or require.main.require
If the current behavior is a bug, please provide the steps to reproduce.

Create two files a.js and b.js
In a.js, add module.require('./b.js')
Run Webpack with a.js as the entry point

What is the expected behavior?
Resolve the dependency if possible or generate a warning
Please mention other relevant information such as the browser version, Node.js version, webpack version, and Operating System.

Node.js v10.6.0
Webpack v4.16.0

Thanks for your report. It would be great if you reduce your issue to a small reproducible example. Best put this example into a github repository together with instructions how to get to the problem.

Thank you for your response @montogeek . Please find the reproducible example here:
https://github.com/ak-14/webpack-issue-7728
I want to mention that we are using Webpack to analyze the dependencies for node applications. We have seen projects using require.main.require and module.parent.require but there might be other similar patterns outthere. Another similar case is using child_process.fork(module-name). It would be very helpful if Webpack generates warnings for these use cases if resolving them statically is not possible.

Send a PR
module.require is easy to support. Add it here:
https://github.com/webpack/webpack/blob/2dde0052a89383dd1879c8eb4b0579fafbf5a67b/lib/dependencies/CommonJsRequireDependencyParserPlugin.js#L122-L127
require.main.require and module.parent.require can be added here, as unsupported:
https://github.com/webpack/webpack/blob/2dde0052a89383dd1879c8eb4b0579fafbf5a67b/lib/NodeStuffPlugin.js#L102-L110

Fixed in v4.16.2. Thanks @sokra !

@montogeek FWIW, it still does not recognize global.module.require().
We rely on this in the Sentry Electron SDK to prevent webpack from processing an import without having to change the config. I know that there are explicit comments to instruct webpack in such a case, but I'd rather avoid putting a bunch of comments for each potential bundler our users might use.
It would be great if there was a documented exception, like global.module.require. WDYT?


Customize 'Save' behaivour

Hello, how can we change what the 'Save' button - last step - triggers? Thanks!

hey @Erwol, save is just another next call.
nextClicked(currentPage) {
      console.log('next clicked', currentPage)
      return true; //return false if you want to prevent moving to next page
    },

you can check if the current page is your last page and if yes, do whatever you need to do for save.

Awesome, thanks @xaksis


Could you explain what are vertex matrix and context matrix?

I'm reading your paper and have a question about section 3.2. Could you explain what are the vertex matrix and context matrix? Are they simply the source and the destination of edges?

Yes. Every node has a vertex and a context embedding. Vertex embedding is used when it acts as a source node, and context embedding is used for destination node.

Are you saying each node will have two embedding vectors? So the number of embeddings will be twice as the number of nodes?
I don't quite understand the figure 2 in your Graphvite paper. In the figure, you have 4 GPUs and you divide the sample pool into 4x4 grids. Grid (i,j) contains edges with source in vertex i and dest in context j right? So what is the episode size here? Does it indicate that it takes many episodes to compute a single grid?

And by your sampling method, each grid could contain different numbers of edges right?

For the embedding, yes.
The episode size is the number of batch in a grid, e.g. 500 for Youtube dataset. Each grid contains episode size * batch size samples. The is mainly because a sufficiently large grid is needed to reduce swap of embedding parameters across GPUs.

@KiddoZhu  What's the purpose of setting two embedding vectors for each node?

One vector is called vector representation, the other is called context representation. This is mainly borrowed from the distributional hypothesis in NLP.
Empirically it works better than tied vertex and context parameters.

One vector is called vertex representation, the other is called context representation. This is mainly borrowed from the distributional hypothesis in NLP.
Empirically it works better than tied vertex and context parameters.

hi,when I use them, how do I choose vertex embeddings or context embeddings?

One vector is called vertex representation, the other is called context representation. This is mainly borrowed from the distributional hypothesis in NLP.
Empirically it works better than tied vertex and context parameters.

hi,when I use them, how do I choose vertex embeddings or context embeddings?

vertex embeddings is better


⚠ Website Unmer has degraded performance

In c9edd27, Website Unmer (https://unmer.ac.id/) experienced degraded performance:

HTTP code: 200
Response time: 27455 ms

Resolved: Website Unmer performance has improved in 810336d.


Add Google Cloud Storage support to Storage Spec

What this PR does / why we need it:
Add gcs service account support to the existing storage spec
apiVersion: v1
stringData:
  gcs: |
    {
      "type": "gs",
      "bucket": "mlpipeline",
      "base64_service_account": "c2VydmljZWFjY291bnQ="
    }
kind: Secret
metadata:
  name: storage-config
type: Opaque

Type of changes

[ ] New feature (non-breaking change which adds functionality)
[ ] This change requires a documentation update

Documentation: https://github.com/kserve/website/pull/351

/lgtm

/rerun E2E Tests / test-predictor

@tjandy98 can you please send a empty commit to retrigger CI?
The ci error might be caused by a instability.

It's a bit strange to me that the docs website has instructions on this but the code itself has not been merged: https://kserve.github.io/website/latest/modelserving/storage/gcs/gcs/
I've wasted a few hours reading the source code here only to find out this change isn't actually supported. Will this PR ever be merged?

/lgtm

/lgtm
/assign @yuzisun

Is this PR ready to be reviewed? (Still on draft status).

I am seeking guidance on how to proceed with integrating GCS support in the storage spec. In the latest code of the pull request, the stringData field of the GCS service account within the Secret is mounted to a specific path defined by the key using the keyToPath configuration. The type field is expected to remain consistent with existing supported storage specification types, such as s3. However, in this case, the service_account type is required as part of the service account file.
One potential solution is to store the base64-encoded credential in the data field.  However, there is currently no method, at least that I know of, to extract and mount only the value of the data field without resorting to an inelegant approach.
apiVersion: v1
kind: Secret
metadata:
  name: storage-config
type: Opaque
stringData:
  gcs: |
    {
      "type": "service_account",
      "data": "<base64 encoded credential>"
    }


discord: bump all versions

Closes #362751

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 362751

x86_64-linux

:white_check_mark: 3 packages built:

discord-canary
discord-development
discord-ptb

x86_64-darwin

:white_check_mark: 4 packages built:

discord
discord-canary
discord-development
discord-ptb

aarch64-darwin

:white_check_mark: 4 packages built:

discord
discord-canary
discord-development
discord-ptb


Push query or params cannot change the URL

About push query:

The current URL is "/foo?a=1"
This.$router.push({path: '/foo', query: { a: 2}});
The data will be changed in the "beforeRouteUpdate", but the URL does not change. (The proper URL should be "/foo?a=2", but it is still "/foo?a=1")

Replace params in nested router

In the nested router: (The current URL is  '/foo/:a/b/:c')

{
      path:'/foo/:a',
      name: 'foo',
      component: foo,
      children:[
          {
            path:'b/:c',
            component: foo,
          }
      ]
},

No matter we use any method to push router, the URL will not change. For example:
this.$router.push("/foo/a/b/d"); The URL is still "/foo/a/b/c"

I think these two problems are the same bugs: the nested params or query in the URL not changes when push to the CURRENT URL .
But the pushed data can be fetched in the "beforeRouteUpdate", the only problem is the URL does not changed.

The non-nested params works fine and we can use the "beforeRouteUpdate" to fetch the new params
If we push to another URL, it will work fine

You likely just forgot to call next() in beforeRouteUpdate

Wow...I am so careless and spend a lot of time doing test...Thank you so so much! @LinusBorg

@LinusBorg, Big thanks from 2019 ! :)

@LinusBorg You're the man :smile:


Attach labels to nPrints before running to save work

We need to find a way to attach labels to PCAPs / nPrints before running nPrint on every file in the directory. This will save us work on missing labels and allow users to run on subsets of a directory by just supplying new labels. Not entirely sure at the moment where this should be done.

This seems doable by simply checking the labels data before running nPrint on a PCAP.
Granted, I'm not immediately sure how this should look – the current pipeline design presumes that Step 1 (nPrint) won't have to look ahead at the work of Step 2 (labeling). But we can work something out.

On second thought, I was already planning to add something like a __pre__ method to Step, to take care of immediate post-argument parsing tasks, which needn't be postponed until their step in the pipeline, and which can't have dependencies on each other – like sophisticated validations.
It wouldn't be too much of a stretch to have the Label step pre-load labels there, such that they're available at pipeline-start. (And the Net step could if really necessary state its dependency on labels explicitly, in __requires__, so long as Label also specified this in __provides__ or in something like a __pre_provides__.)

Preloading the labels at pipeline-start makes sense, it's not going to slow things down. Alternatively, to the above comment, does it make sense to make Step 1 labeling and Step 2 nPrint (reversing how it works now)?

We could reverse the steps, yes; though, we'd still have to put
merging/joining/aggregation (attaching labels) somewhere, right?
Definitely worth considering, tho (very initially) I'd lean towards keeping
the step order as it is.
On Tue, Dec 15, 2020, 6:43 AM Jordan Holland<EMAIL_ADDRESS>wrote:

Preloading the labels at pipeline-start makes sense, it's not going to
slow things down. Alternatively, to the above comment, does it make sense
to make Step 1 labeling and Step 2 nPrint (reversing how it works now)?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/nprint/nprintML/issues/29#issuecomment-745264299, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEBUNTTLXM7YPKQWAP26GDSU5KXTANCNFSM4UVQS6QQ
.

This is in progress.

Step.__pre__ has been implemented for this work, (and which will likely be useful for other issues that subvert the pipeline).
LabelAggregator has been refactored to permit eager ingestion of labels.


[Bug]: Problems about < key

When I tried to map < key like below, it will cause two problem according to whether to put < at top level of mappings table.
local wk = require("which-key")
wk.register({
  ["<"] = {"<cmd>Telescope quickfix<cr>", "QF"}, --------------- 1. It can cause which-key stop working
  f = {
    ["<"] = { "<cmd>Telescope quickfix<cr>", "QF" }, -------------- 2. It can cause display problem
  },
}, { prefix = "<leader>" })

When < is at top of mappings table, pressing <space> doesn't trigger WhichKey.
When < is inside other mappings, (using above code as an example) the discription text of it will be "Telescope quickfix" instead of "QF".

I have the same problem too!

The screenshot shows my defined keybindings relating to < and the display problem.

You should use <lt> instead

You should use <lt> instead

I try it just now, it's still problematic and keymappings doesn't work

<gt> is not needed. It's only for <lt>. Please check the vim docs h <lt>

You should use <lt> instead

Thank you! That solved it for me! :+1:

Thank you! It works


RuleAction.Block enhancements

The exception raised when trying to update a RuleAction.Block property is suppressed if the property is JsonIgnored.
The RuleEngine Create method has been enhanced to use RuleAction.Block.

I've created a new branch for these changes.


Static guidebook via docs discovery

We now have a static guidebook on the way (Thanks @phact!).
The next phase of improvement on this should be to eliminate local scripting needed to find and assemble the content for the static view. Specifically, if we can delegate the markdown content discovery to a docsfinder command or something similar, we should.
The end goal is for an activity type contributor to be able to add docs in java using the extant mechanisms, and have that appear both the dynamic and the static guidebook forms without further integration or scripting work.

This is done right?

This is complete. Some refinements are needed to ease builds and merges, but these can be handled in a separate issue.


chore: batch verify backport

PR checklist

[ ] Tests written/updated
[ ] Changelog entry added in .changelog (we use unclog to manage our changelog)
[ ] Updated relevant documentation (docs/ or spec/) and code comments

do problems occur if using the latest cometbft-db?

@faddat yeah the e2e test suite wont compile


tutorial 6 correction of p formula

Hello Steve, here's the pull request you mentioned this morning. Just a change in a markdown for the formulation of p_k and p_goal. As you said, the code part seems perfect.

Hi Steve, I have added the changes to the generated solution for the rrt tutorial, updating dt in the NEW_CONF method.

THank you very much for the corrections !


refactor recipes/publishing to use pydantic + typer

Refactors edm.connectors recipes and publishing to use pydantic for class serialization/deserialization, and typer for CLI. I'd recommend reviewing commit by commit.
For publishing, I wrapped our existing API with typer methods mainly because of typer defaults. Typer resolves defaults really nicely if you call it via CLI. If you call via python but omit an arg, typer will return a typer.models.OptionInfo which isn't something we want.

A couple small comments. Really like it!


How to use multiple threads

How to use multiple threads with libasync, could you give an example?
Expect to fork some of the working threads when the main thread is started. The jobs will be processed by the working threads;

Hi donglei,
I thought about writing an example for this using AsyncSignal, it should be straightforward but I'm not sure yet what it should cover.
The typical implementation would be triggered by an HTTP request, which is at a much higher level.
shared AsyncSignal gs_sigqueue;
__gshared Mutex gs_mtx;
__gshared Variant[] gs_queue;
shared static this() { mtx = new Mutex; }
void queueHandler() {
	synchronized(gs_mtx) {
		foreach (item; gs_queue)
			handleItem(item);
	}
}
// This is a thread-safe function that will send a task to the worker
void enqueue(MyObj item) {
	synchronized(gs_mtx) gs_queue ~= Variant(item);
	gs_sigqueue.trigger();
}
void main() {
	// The below handler will be handled by the current thread.
	// to register workers, create the AsyncSignal from another thread.
	gs_sigqueue = new shared AsyncSignal(getThreadEventLoop());
	gs_sigqueue.run(toDelegate(&queueHandler)); //std.functional

	while(getThreadEventLoop().loop()) continue;
}

In this example, you can call enqueue from any thread and the item will be handled by the main thread. Do you have a specific protocol that should enqueue items?

Thank you for your example. I  have a web project written in D, in order to improve the performance and ability to handle, I intend to use multi thread.The main thread only receives the request, distributed it to the working threads.

If you are using Linux, you can run the same AsyncTCPListener from multiple threads and the requests will be distributed round robin

@donglei  for your specific need you don't need multi thread, it would be actually bad. Linux can do the connection sharding for you with SO_REUSEPORT ( https://lwn.net/Articles/542629/ ).
you do not want to have the synchronization overhead within the web framework as long as the clients do not need to communicate together.
thus the solution you are most probably looking for is fairly simple: just compile with libasync and start the binary multiple times. it will "magically" distribute your load :)

If you are using Linux, you can run the same AsyncTCPListener from multiple threads and the requests will be distributed round robin

@etcimon I tried doing this, and it worked, but I only a fraction of connections succeeded. The rest seems to get stuck, taking an eternity to connect.
void main() {

    // Spawn 3 listener threads
    foreach (i; 0..3) {

        spawn(&startListener);

    }

}

void startListener() {

    auto eventLoop = getThreadEventLoop;
    auto listener = new AsyncTCPListener(eventLoop);

    listener.host("<IP_ADDRESS>", 5483)
            .run(connection => &(new Handler(connection).handle));

    while (!shouldClose) {

        eventLoop.loop();

    }

}

Also, would it be possible to just have a single listener and manually move handlers between threads? Would be more efficient in my case.


Unity MRTK Hand Mesh not detected and usable with Ultraleap Tracking Service Package installed on PC

Versions:
Windows: Windows 11
Unity: Unity Hub 3.7.0, Editor Version 2022.3.9f1
OpenXR API Layer 1.6.5
Unity Packages:

MRTK OpenXR Plugin 1.7.2
MRTK Toolkit Foundation 2.8.3
MRTK Toolkit Standard Asset 2.8.3
AR Foundation 5.0.7
OpenXR Plugin 1.8.2
XRCore Utilities 2.2.3
XR Legacy Input Helper 2.1.10
XR Plugin Management 4.3.3

I am working on combining Ultraleap Stero IR 170 Tracking Service into my Unity project with HoloLens2, for that I downloaded the Ultraleap Tracking Service Gemini v5.17.3 on Windows to test if it works with the current project. The program works well along either on its control panel and Unity samples so no problem on that.
All samples and Ultraleap related files are tested on a separate Unity repo that all downloads and configurations are separated with the existing Unity project. It should not have affected the existing Unity project as no changes are made on it.
Hololens2 works well on itself as well, but when I opened my existing Unity project on it through Holographic remoting, my hands are detectable by HoloLens2 (the home window logo could be shown on my wrist) yet no hand meshes or casting rays are created thus I cannot interact (drag or select) with any Hologram.
The problem could not be resolved with any reinstalls of Unity software or versions, MRTK or OpenXR packages, but could only be dealt with when Ultraleap Tracking Software was uninstalled from my PC that everything went back to normal. I also tried ending all tasks related to Ultraleap on the Task manager but it did not help.
I would like to know if there is a way to have the Ultraleap program installed without affecting the existing Unity project. I would still want to test the camera to see what it could do. Thanks for the help.

Hi @JTflair
So the issue seems that you do not want the Ultraleap Tracking Software to interfere with a non-Ultraleap use of your device?
If this is the case, it maybe the the Ultraleap OpenXR layer is stopping your non-Ultraleap hand tracking from being used. you could test this by stopping Ultraleap's OpenXR layer by toggling this option in the Control Panel:

This also sounds like a request that is not specific to the Unity Plugin that this Github repository relates to - you may be able to get additional support from our support team via any of the options found here: https://docs.ultraleap.com/useful-links.html

Hi there @MattGrayUL
I tried different combinations of options inside UL control panel, including turning off the OpenXR Support option as you suggested. Unfortunately, it did not help solve the problem.
I believe ending all running tasks related to UL should have the same output from doing the above, where completing both did not help the situation.
Anyhow, I will get to the support team as you suggested. Thanks for the swift reply anyways.


channel bug

videos are missing but videos still play (home only & all layouts)

Does it happen if the layout is set to Disabled? I have no idea why or how this would happen.

it does happen if set to disabled


fix(cicd): build docker images using matrix strategy

Reason for Change
When building the docker images in build-images-and-create-deployment.yml, all of the images were being built in the jobs build-frontend-backend-images and build-batch-job-images. This was causing the GHA environment to crash by running out of disk space. This was causing a headache for deployment which would fail due to a lack do disk space. Now the images will be built in their own job, which does not share disk space. This avoid the disk space capacity error. The frontend and backend images are still built in the same job, but that is beyond the scope of this PR to address.
As an added bonus, this reduces our image build time to under 3min in total.
Changes

modify build-image-and-create-deployment.yml to build the docker images in parallel using the GHA matrix strategy.
Update happy version from 0.59.0->0.92.0 to give us access to slices. Now we are using slices to build the images in parallel jobs. Without the slices all of the images would be build for every job.
Remove add-image-tags job. Now this step is included as part of the build-images job.
Add frontend and backend docker images to the docker compose profile fullstack. This is required because the frontend depends on the backend according to our docker_compose.yml. Happy blocks us from building the frontend separately because of this. If we want to build the backend and front end in parallel jobs we will need to remove the depends_on: backend, and update our tests to spin up the backend when testing the frontend.

Testing steps
Pointed the GHA at this branch and run. Results

Notes for Reviewer

This is how you decipher what can be in the config happy config


Important! Template update for nf-core/tools v2.10.dev0

Version 2.10.dev0 of nf-core/tools has just been released with updates to the nf-core template. This automated pull-request attempts to apply the relevant updates to this pipeline.
Please make sure to merge this pull-request as soon as possible, resolving any merge conflicts in the nf-core-template-merge-2.10.dev0 branch (or your own fork, if you prefer). Once complete, make a new minor release of your pipeline.
For instructions on how to merge this PR, please see https://nf-co.re/docs/contributing/sync/.
For more information about this release of nf-core/tools, please see the v2.10.dev0 release page.

@nf-core-bot fix linting


Get-AzureADDirectoryRoleMember - to update

Since it's now possible to assign Security Groups to an Azure Role It would be good to update Get-AzureADDirectoryRoleMember
https://docs.microsoft.com/en-us/azure/active-directory/roles/groups-concept
We are testing the Security Group based roles but reporting is difficult both with the UI (I raised a separate ticket with MS) and with PowerShell.
It would make sense to have the same parameter as Get-ManagementRoleAssignment to see all users assigned to the role: Get-AzureADDirectoryRoleMember -GetEffectiveUsers

@SebastienGu, sorry; wrong location for this issue. Azure AD cmdlets are documented here:
https://github.com/Azure/azure-docs-powershell-azuread/blob/live/azureadps-2.0/AzureAD/Get-AzureADDirectoryRoleMember.md

@SebastienGu, sorry; wrong location for this issue. Azure AD cmdlets are documented here:
https://github.com/Azure/azure-docs-powershell-azuread/blob/live/azureadps-2.0/AzureAD/Get-AzureADDirectoryRoleMember.md

@chrisda Thank you very much for sharing this explanation. @SebastienGu Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

@chrisda Thank you very much for sharing this explanation. @SebastienGu Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Fix editor according to the Beta requirements

Warning: This development build of composer is over 60 days old. It is recommended to update it by running "/home/runner/.phpbrew/php/php-5.6.36/bin/composer.phar self-update" to get the latest version.
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - doctrine/instantiator 1.1.0 requires php ^7.1 -> your PHP version (5.6.36) does not satisfy that requirement.
    - doctrine/instantiator 1.1.0 requires php ^7.1 -> your PHP version (5.6.36) does not satisfy that requirement.
    - Installation request for doctrine/instantiator 1.1.0 -> satisfiable by doctrine/instantiator[1.1.0].


feat: Add Support for Integers in OptionValue for FluentSelect and FluentComboBox

🙋 Feature Request
I would like to request the addition of support for integers in the OptionValue property for Fluent UI Blazor's FluentSelect, FluentComboBox, and similar controls. Currently, these controls only support string and Enum formats for OptionValue.
🤔 Expected Behavior
The expected behavior is that the OptionValue property should also accept integer (int) values in addition to the existing string and Enum formats.
😯 Current Behavior
Currently, these controls only allow for string and Enum formats as the OptionValue. When working with data retrieved from a database, it is common for the ID field to be of integer (int) format. This limitation forces developers to perform cumbersome conversions between int and string formats, which can be inconvenient.
💁 Possible Solution
A possible solution would be to enhance the FluentSelect and FluentComboBox controls to support int values directly as the OptionValue. This enhancement would simplify data binding and manipulation when working with integer-based IDs.
🔦 Context
What Are You Trying to Accomplish?
I am trying to improve the usability of Fluent UI Blazor controls when working with data that has integer-based IDs.
How Has Not Having This Feature Affected You?
The absence of support for integer-based OptionValue has made it more challenging to work with data from a database where the IDs are typically integers.
What Alternatives Have You Considered?
As an alternative, developers currently have to manually convert between int and string formats when using these controls, which is not an efficient solution.
💻 Examples
Examples of how this feature would be used:
<FluentSelect TItem="MyModel" @bind-Value="selectedItemId" OptionValue="@(item => item.Id)" OptionText="@(item => item.Name)" Data="items" />

<FluentComboBox TItem="MyModel" @bind-Value="selectedItemId" OptionValue="@(item => item.Id)" OptionText="@(item => item.Name)" Data="items" />

In the examples above, OptionValue is specified to directly use the Id property of the MyModel class, which is an integer. This enhancement would make it easier to work with integer-based IDs in these controls.
Your feedback and any alternative implementation suggestions are greatly appreciated. Thank you!

Indeed, it could be interesting.

Interesting, yes. But the vale of the internal html  elements is always a string (text)...(see https://html.spec.whatwg.org/multipage/form-elements.html#the-option-element)

Indeed. And we always have a reference to the selected object via @bind-SelectedOption.

Interesting, yes. But the vale of the internal html elements is always a string (text)...(see https://html.spec.whatwg.org/multipage/form-elements.html#the-option-element)

As per HTML standards, element values are always treated as strings since HTML primarily deals with text-based user input.
In the context of frameworks like Fluent UI Blazor, developers often handle server data, which may include integer IDs. While HTML requires string values, it's feasible for the framework to handle internal type conversions, making it easier for developers to work with integer IDs.
The feature request suggests enhancing Fluent UI Blazor to directly support integers as OptionValue, reducing the need for manual type conversions in code.
In essence, despite HTML's string-centric nature, frameworks can streamline the handling of integer IDs for developers, improving development efficiency and code readability.

We'll see what we can do!

I agree with you, this is an improvement that could be useful, but is not blocking at present, since you have to send objects to the list and it is possible to retrieve an instance of the selected object SelectedOption.
This only simplifies writing, but does not improve performance or memory management.

I agree with you, this is an improvement that could be useful, but is not blocking at present, since you have to send objects to the list and it is possible to retrieve an instance of the selected object SelectedOption.
This only simplifies writing, but does not improve performance or memory management.

Thank you for your reply and guidance.
Current Approach
Let me explain my situation:
First, I create a data source by retrieving Id and Name fields from the database and store them in a dictionary. Then, I connect FluentSelect's OptionValue to the dictionary's Key and OptionText to its Value.
Ideally, I'd like to bind @bind-Value directly to the ForeignId property of the target object. However, I've noticed that FluentSelect works with strings, which necessitates the following steps:

Converting the dictionary's index to a string format.
Creating an extra variable called TempStringId and binding @bind-Value to TempStringId.
Initializing TempStringId with ForeignId.ToString().
Finally, converting TempStringId to an integer and assigning it to the ForeignId property of the target object.

Issue
While this approach meets my requirements, it introduces extra conversions and a temporary variable, which adds unnecessary complexity.
SelectedOption
Regarding the SelectedOption you mentioned, I'm still uncertain about how to address this problem—how to keep the selected option synchronized with the ForeignId when working with external keys. Any guidance you can offer would be much appreciated.

Why not have code like this: using only a SelectedItem variable that holds the object (key/value or other) selected by the user.
⚠ The list of items must be in Items attribute (and not Data, like in your example).

    SelectItem: @SelectedItem?.Id - @SelectedItem?.Name

<FluentSelect @bind-SelectedOption="SelectedItem"
              Items="Items"
              OptionText="@(item => item?.Name)" />

@code
{
    MyModel? SelectedItem;

    // Sample Data
    IEnumerable<MyModel> Items = Enumerable.Range(1, 10).Select(i => new MyModel(i, $"Name {i}"));

    // Sample Model
    record MyModel(int Id, string Name);
}

MyModel could be replaced by a Dictionary or another object.

    SelectItem: @SelectedItem.Key - @SelectedItem.Value

<FluentSelect @bind-SelectedOption="SelectedItem"
              TOption="KeyValuePair<int, string>"
              Items="Items"
              OptionText="@(item => item.Value)" />

@code
{
    KeyValuePair<int, string> SelectedItem;

    // Sample Data
    Dictionary<int, string> Items = Enumerable.Range(1, 10).ToDictionary(i => i, i => $"Name {i}");
}

Why not have code like this: using only a SelectedItem variable that holds the object (key/value or other) selected by the user.
⚠ The list of items must be in Items attribute (and not Data, like in your example).

    SelectItem: @SelectedItem?.Id - @SelectedItem?.Name

<FluentSelect @bind-SelectedOption="SelectedItem"
              Items="Items"
              OptionText="@(item => item?.Name)" />

@code
{
    MyModel? SelectedItem;

    // Sample Data
    IEnumerable<MyModel> Items = Enumerable.Range(1, 10).Select(i => new MyModel(i, $"Name {i}"));

    // Sample Model
    record MyModel(int Id, string Name);
}

MyModel could be replaced by a Dictionary or another object.

    SelectItem: @SelectedItem.Key - @SelectedItem.Value

<FluentSelect @bind-SelectedOption="SelectedItem"
              TOption="KeyValuePair<int, string>"
              Items="Items"
              OptionText="@(item => item.Value)" />

@code
{
    KeyValuePair<int, string> SelectedItem;

    // Sample Data
    Dictionary<int, string> Items = Enumerable.Range(1, 10).ToDictionary(i => i, i => $"Name {i}");
}

Thank you for your reply and the code examples. From your response, I understand that we can obtain the selected item and then use its key (the int object).
Let me clarify my thoughts: In some cases, we don't need an intermediary variable (like the previously mentioned TempStringID or the SelectedItem.Key you referred to).
Consider this scenario: We have loaded an entity A, which includes a foreign key property EntityBId. Now we want to change this value using a dropdown list.
Using an intermediary variable, we would need to:

Initialize the selected item by assigning the value of EntityBId to the intermediary variable.
On selecting a new item, update EntityBId with the value from the intermediary variable.

In other words, TOption is not a property of entity A (when using @bind-SelectedOption), or OptionValue does not natively support the int property of an entity (when using @bind-Value). This necessitates synchronization between the two.
Since OptionValue natively supports the string field, the property StringKey of entity A can completely avoid the use of an intermediary variable in the following way:
Dictionary<string, string?>? productsDict;
<FluentSelect Items=@productsDict
              OptionValue="@(i => i.Key)"
              OptionText="@(i => i.Value)"
<EMAIL_ADDRESS></FluentSelect>

Given that the Id object (of int type) is a common property column in relational databases, I believe it's quite necessary to have OptionValue natively support the int field, thereby avoiding the need for an intermediary variable.

For those who encounter a similar issue, you can use the following code:
Dictionary<int, string?>? productsDict;
<FluentSelect Items=@productsDict
              OptionValue="@(i => i.Key.ToString())"
              OptionText="@(i => i.Value)"
              Value="@Entity.ForeignId.ToString()"
              ValueChanged="@(e => Entity.ForeignId = int.Parse(e))">
</FluentSelect>

This code provides a perfect solution to the discussed issue.
In conclusion, I want to convey my appreciation to the developers for their valuable guidance and dedicated efforts.

I'm still struggling using this in a Server Side Rendered scenario in Blazor 8.
Within an EditForm I need to "bind" the value of the Select to an int field in the DTO, because that's what the server accepts.
How to I have the Select actually submit this?

You will need the Value and ValueChanged as mentioned above. It can not work with SSR...