API for showing additional info in a hover

Problem
For TS, one of our most popular feature requests is showing expanded type information in hovers. For example, with the code:
type FooType = string | number

const foo: FooType = 1

Hovering over foo today shows FooType. While this is sometimes what you want, other times you'd like to see the type expanded to string | number instead
While we could add a global setting for expanding types in hovers, this isn't a great solution as sometimes the expanded type is very confusing. Really we want to provide both the simplified and expanded hover info and make it easy to switch between them
Feature Request
Add new UI and apis that users to request a more detailed version of a hover. The user action for this could be:

A keyboard shortcut that expands the currently showing hover hover when pressed
A button in the hover the lets you toggle between different levels of detail

We believe that other languages besides typescript could use this functionality as well. @jakebailey brought up Python for example but C++, c#, and any other languages with complex types could likely benefit

Hi @jakebailey @mjbvz, we have discussed this issue in the team and I see three possible ways to implement this:

We can propose a new API provideExtendedHover which would have the same signature as the existing provideHover, and would be called when the user requests more detailed hover information. The extended hover information will entirely replace the previous hover information. The downside of this method, is that we have no way to enforce that the new hover information will in fact be an extension of the initial hover information, as one could return any random markdown string through this method. A variant of this method could be to instead add a boolean in the signature of provideHover to signal one wants extended hover information.

So instead we could change the class Hover which is returned by provideHover, so that it has one more field additionalContents: MarkdownString. The additionalContents markdown string would be displayed below the current hover when the user requests more information. The disadvantage of this approach is that one can not replace the whole current hover information with something new, since the new information is instead appended at the end on request.

3.a. Another idea that was discussed by our team is the following. We could allow extension authors to return hover markdown information with custom URI links. On click of this custom link, we would do a request to the hover provider through a proposed API resolveLink that would return a markdown string that would either replace the original link or be appended at the end of the hover (to be discussed still). In other words, the flow would be as follows:

In a hover markdown string that contains FooBar as a type, the TS team could enclose FooBar in a link
On click or hover of this link (to be discussed), we would send the following request:

const res : MarkdownString = hoverProvider.resolveLink(link: CustomUri)

The result res will either replace the custom uri in the hover, or be appended to the bottom of the current hover.

This idea would require us to introduce a new proposed API resolveLink. The advantage of this idea is that the user can decide what information exactly to expand (perhaps the user does not want all the expanded information).
3.b. We have also discussed another variant of 3.a. The flow is as follows:

In a hover markdown string that contains FooBar as a type, the TS team could enclose FooBar in a custom link as follows:

const x : [FooBar](file://c/:/myworkspace/FooBar.ts#L250C33)

On click or hover of this link (to be discussed), the controller would use the associated link to fire a hover request for the file file://c/:/myworkspace/Hello.ts at line 250, column 33.
The result will be displayed at the bottom of the current hover.

This idea is simpler in that it does not require to manually process links through the implementation of an resolveLink API. The disadvantage of this method however is that the extension author needs to define the appropriate link in the custom URI, and can not add more information then what is otherwise requested.
Please let us know what approach you think is more appropriate and would suit better the needs of the TypeScript team. Thank you.
cc @jrieken @hediet

Thanks @aiday-mar! Either 1 or 2 sound fairly easy and I think would address the original request
I personally prefer approach 1 where we pass a boolean or enum to provideHover as I think this will be the easiest to adopt and fully replacing the hover gives us a lot of flexibility
However if we go with approach 1, we'd also likely want a way to figure out a way for providers to tell us if they can provide extended info or not. That way we can show an expand button in normal hovers. Maybe  we could add a new isExpandable field on vscode.Hover?
@RyanCavanaugh @DanielRosenwasser What do you think about these proposals?

Approach 3 is interesting and something that we've talked about before for improving our diagnostics UX. I especially like that it could let us support go to definition and other language features in hovers. However it will also be much more complicated to implement in VS Code and for extensions, so I'm sure if we're ready to start down that road right now
One nice feature of approach 1 or 2 is that we could implement 3 on top of them later too

With (2). couldn't additionalContents: MarkdownString be optional?
with the expanded info button based off, if additionalContents is present or not

To discuss (raw notes):
proposal 4: the hover provider returns an URI which is then interpreted as a text document and rendered in the hover. This allows us to invoke the DocumentLinkProvider on that document.
proposal 5: the hover provider returns another field (annotations) which references offsets into the markdown content. Via annotations we could link to locations (similar to proposal 3b). It could be another field in the Hover or it could be MarkdownStringWithAnnotations.

I have discussed the proposals in https://github.com/microsoft/vscode/issues/195394#issuecomment-1952715527 with @alexdima. Conclusions from the discussion are as follows:

Solution 1 allows users to return any markdown string in the method provideExtendedHover which would break the contract of returning only extended information.
Solution 3.a and 3.b imply we would use custom links (like command links) in Markdown code blocks which are currently not supported. To implement these proposals, we would need therefore to do some pre-processing or post-processing of the content to turn it into a proper Markdown string. This implies deviating from standard Markdown definition which is not ideal.

2 more proposals have been made in the comment https://github.com/microsoft/vscode/issues/195394#issuecomment-1976274115 above. I have scheduled a meeting to discuss this work further.

Solution 1 allows users to return any markdown string in the method provideExtendedHover which would break the contract of returning only extended information.

Why is this a concern? Why would anyone put completely different info into a hover tooltip? That seems like it would not be productive for any API consumer (and one could totally "misuse" any other feature for other uses already?).

Indeed that would not be productive for any API consumer. The idea is to limit this possibility of this happening.
I will bring up this thread in our meeting and let you know of the discussion later.

Hey all. We have discussed all of the proposals in a meeting, and decided to move forward with proposal 1, since it seems to be what best suits the needs of the TypeScript team. We will put proposal 5 on the backlog, and potentially implement it in the future too, since proposal 1 can co-exist with proposal 5.
To give more detail about the implementation, extensions will be able to return a hover with additional fields currentZoomLevel, canZoomOut, canZoomIn (names are yet to be refined). On request of a zoom in, or zoom out, requests will be made through the provideHover method (which will have an additional parameter zoomLevel) for hover results. Extensions will thus be able to provide gradually more and more information on zoom in.

Related?: https://github.com/microsoft/vscode/issues/64566, https://github.com/microsoft/vscode/issues/94679, https://github.com/microsoft/TypeScript/issues/35601

Any progress, or projection when we can expect to have it implemented?

Hi @maxpaj yes so the PR is almost finished. We are planning on pushing it at the beginning of the next iteration. You can track the PR here https://github.com/microsoft/vscode/pull/204721.

Hi @clcoco so this PR will likely be part of VS Code 1.89, but not 1.88

Fixed with https://github.com/microsoft/vscode/pull/210472

In the last UX sync, @gabritto who is currently working on adopting the expandable hover for TypeScript, mentioned the TypeScript team would like to add links in the hover which when clicked would expand the specific type. There are several reasons for this:

There could be many types in a hover, and it would be nice if the user could expand a specific type not the whole text all at once
The hover would be smaller

The hover is a nice way to display the types because it is easily discoverable and can be used to easily expand and contract type information. In the UX sync certain other ideas have been proposed for how to display the type information:

Add an action to the status bar called for example Inspect Types which would open up a view where the types could be shown.

We could show the peek view with the type definitions
Or the explorer view with the type information

Another idea was to allow 1 to 2 levels of expansion only with the current UI then move to the explorer view


replace lambda with functor to support Windows

The following error prevents compilation on Windows with Clang/MSVC. It seems the standard library from MSFT does not support assigning temporal lambdas to class data members.
C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:17: error: no viable overloaded '='
        execute = [=](context&, const std::vector<argument>& args) {
        ~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/UIF/MIGraphX/src/include\migraphx/operation.hpp:894:32: note: in instantiation of member function 'migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_concat, dnnl::concat>::finalize' requested here
        private_detail_te_self.finalize(ctx, output, input);
                               ^
C:/UIF/MIGraphX/src/include\migraphx/operation.hpp:1152:13: note: in instantiation of function template specialization 'migraphx::operation::private_detail_te_default_finalize<migraphx::cpu::dnnl_concat &>' requested here
            private_detail_te_default_finalize(
            ^
C:/UIF/MIGraphX/src/include\migraphx/operation.hpp:1095:9: note: in instantiation of member function 'migraphx::operation::private_detail_te_handle_type<migraphx::cpu::dnnl_concat>::finalize' requested here
        private_detail_te_handle_type(
        ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\xutility:254:58: note: in instantiation of function template specialization 'migraphx::operation::private_detail_te_handle_type<migraphx::cpu::dnnl_concat>::private_detail_te_handle_type<migraphx::cpu::dnnl_concat>' requested here
        ::new (static_cast<void*>(_STD addressof(_Obj))) _Ty(_STD forward<_Types>(_Args)...);
                                                         ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\memory:2104:18: note: in instantiation of function template specialization 'std::_Construct_in_place<migraphx::operation::private_detail_te_handle_type<migraphx::cpu::dnnl_concat>, migraphx::cpu::dnnl_concat>' requested here
            _STD _Construct_in_place(_Storage._Value, _STD forward<_Types>(_Args)...);
                 ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\memory:2779:26: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
    const auto _Rx = new _Ref_count_obj2<_Ty>(_STD forward<_Types>(_Args)...);
                         ^
C:/UIF/MIGraphX/src/include\migraphx/operation.hpp:566:20: note: in instantiation of function template specialization 'std::make_shared<migraphx::operation::private_detail_te_handle_type<migraphx::cpu::dnnl_concat>, migraphx::cpu::dnnl_concat>' requested here
              std::make_shared<private_detail_te_handle_type<
                   ^
C:/UIF/MIGraphX/src/include\migraphx/register_op.hpp:64:43: note: in instantiation of function template specialization 'migraphx::operation::operation<migraphx::cpu::dnnl_concat>' requested here
    static auto op_h = detail::op_handler(T{});
                                          ^
C:/UIF/MIGraphX/src/include\migraphx/register_op.hpp:73:9: note: in instantiation of function template specialization 'migraphx::register_op<migraphx::cpu::dnnl_concat>' requested here
        register_op<T>();
        ^
C:/UIF/MIGraphX/src/include\migraphx/auto_register.hpp:36:22: note: in instantiation of function template specialization 'migraphx::register_op_action::apply<migraphx::cpu::dnnl_concat>' requested here
    Action::template apply<T>();
                     ^
C:/UIF/MIGraphX/src/include\migraphx/auto_register.hpp:56:55: note: in instantiation of function template specialization 'migraphx::auto_register_action<migraphx::register_op_action, migraphx::cpu::dnnl_concat>' requested here
const int auto_register<Action, T>::static_register = auto_register_action<Action, T>(); // NOLINT
                                                      ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1073:15: note: candidate function not viable: no known conversion from '(lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19)' to 'const function<argument (context &, const vector<argument> &)>' for 1st argument
    function& operator=(const function& _Right) {
              ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1089:15: note: candidate function not viable: no known conversion from '(lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19)' to 'function<argument (context &, const vector<argument> &)>' for 1st argument
    function& operator=(function&& _Right) noexcept /* strengthened */ {
              ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1098:15: note: candidate template ignored: requirement 'conjunction_v<std::negation<std::is_same<(lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19), std::function<migraphx::argument (migraphx::context &, const std::vector<migraphx::argument, std::allocator<migraphx::argument>> &)>>>, std::_Is_invocable_r<migraphx::argument, (lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19) &, migraphx::context &, const std::vector<migraphx::argument, std::allocator<migraphx::argument>> &>>' was not satisfied [with _Fx = (lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19)]
    function& operator=(_Fx&& _Func) {
              ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1110:15: note: candidate function not viable: no known conversion from '(lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19)' to 'nullptr_t' (aka 'std::nullptr_t') for 1st argument
    function& operator=(nullptr_t) noexcept {
              ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1116:15: note: candidate template ignored: could not match 'reference_wrapper<_Fx>' against '(lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19)'
    function& operator=(reference_wrapper<_Fx> _Func) noexcept {
              ^
1 error generated.

Does it work if we construct the std::function directly?
execute = std::function<argument(context& ctx, const std::vector<argument>& args)>([=](context&, const std::vector<argument>& args) { ... });

We probably want to add a typedef for the function to make it more readable: using execute_function = std::function<argument(context& ctx, const std::vector<argument>& args)>:
execute = execute_function{[=](context&, const std::vector<argument>& args) { ... }};

does not support assigning temporal lambdas to class data members.

If the cause is because of a temporal lambda then you can assign it to a local variable first and then assign the class member:
auto local_execute = [=](context&, const std::vector<argument>& args) { ... };
execute = local_execute;

I tried all your suggestions, i.e., casting to std::function<> and creating a local variable before the assignment. The result is the same error message: no viable overload ...

So looking at the error closer I see this:
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1098:15: note: candidate template ignored: requirement 'conjunction_v<std::negation<std::is_same<(lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19), std::function<migraphx::argument (migraphx::context &, const std::vector<migraphx::argument, std::allocator<migraphx::argument>> &)>>>, std::_Is_invocable_r<migraphx::argument, (lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19) &, migraphx::context &, const std::vector<migraphx::argument, std::allocator<migraphx::argument>> &>>' was not satisfied [with _Fx = (lambda at C:/UIF/MIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:311:19)]
    function& operator=(_Fx&& _Func) {
              ^

Which looks like it fails because of std::_Is_invocable_r, but its passing the lambda as a non-const reference. Perhaps adding mutable to the lambda will fix it:
execute = [=](context&, const std::vector<argument>& args) mutable { ... }

I dont have access to windows, but if that doesnt fix it, we need to investigate why std::_Is_invocable_r is false. I would try invoking the function directly to see what kind of error there is.

I replaced lambda with functor, and it worked.

Can we wrap the lambda in a function object?
template<class F>
struct execute_wrapper
{
    F f;
    argument operator()(context& ctx, const std::vector<argument>& args) const
    {
        return f(ctx, args);
    }
};
template<class F>
execute_wrapper<F> make_execute_wrapper(F f)
{
    return {std::move(f)};
}

Then do:
execute = make_execute_wrapper([=](context&, const std::vector<argument>& args) { ... });

I tried wrapping lambda in a function object before, which also failed for me. Here's the error message from the piece of code you asked me to try.
[2/141] Building CXX object src/targets/cpu/CMakeFiles/migraphx_cpu.dir/eltwise.cpp.obj
FAILED: src/targets/cpu/CMakeFiles/migraphx_cpu.dir/eltwise.cpp.obj
C:\opt\rocm\bin\clang++.exe -DMIGRAPHX_BUILD_TESTING -DMSGPACK_DEFAULT_API_VERSION=3 -DMSGPACK_NO_BOOST -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -Dmigraphx_cpu_EXPORTS -IC:/UIF/AMDMIGraphX/build.release/src/targets/cpu/include -IC:/UIF/AMDMIGraphX/src/targets/cpu/include -IC:/UIF/AMDMIGraphX/src/include -IC:/UIF/AMDMIGraphX/build.release/src/include -isystem C:/UIF/AMDMIGraphX/build.release/_deps/dnnl-build/include -isystem C:/UIF/AMDMIGraphX/build.release/_deps/dnnl-src/src/../include -isystem C:/UIF/AMDMIGraphX/build.release/_deps/half-src/include -isystem C:/UIF/AMDMIGraphX/build.release/_deps/msgpack-src/include -isystem C:/UIF/AMDMIGraphX/build.release/_deps/msgpack-build/include -O3 -DNDEBUG -std=c++17 -D_DLL -D_MT -Xclang --dependent-lib=msvcrt -Wall -Wextra -Wcomment -Wendif-labels -Wformat -Winit-self -Wreturn-type -Wsequence-point -Wswitch -Wtrigraphs -Wundef -Wuninitialized -Wunreachable-code -Wunused -Wno-sign-compare -Wno-reserved-macro-identifier -Weverything -Wshadow -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-conversion -Wno-double-promotion -Wno-exit-time-destructors -Wno-extra-semi -Wno-extra-semi-stmt -Wno-float-conversion -Wno-gnu-anonymous-struct -Wno-gnu-zero-variadic-macro-arguments -Wno-missing-prototypes -Wno-nested-anon-types -Wno-option-ignored -Wno-padded -Wno-shorten-64-to-32 -Wno-sign-conversion -Wno-unused-command-line-argument -Wno-weak-vtables -Wno-c99-extensions -fno-sanitize=function,vptr -fms-extensions -fms-compatibility -fdelayed-template-parsing -fopenmp=libomp -MD -MT src/targets/cpu/CMakeFiles/migraphx_cpu.dir/eltwise.cpp.obj -MF src\targets\cpu\CMakeFiles\migraphx_cpu.dir\eltwise.cpp.obj.d -o src/targets/cpu/CMakeFiles/migraphx_cpu.dir/eltwise.cpp.obj -c C:/UIF/AMDMIGraphX/src/targets/cpu/eltwise.cpp
In file included from C:/UIF/AMDMIGraphX/src/targets/cpu/eltwise.cpp:25:
In file included from C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/pointwise.hpp:31:
In file included from C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/context.hpp:28:
C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:106:20: error: no matching function for call to object of type 'const (lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)'
            return f(ctx, args);
                   ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\type_traits:1762:16: note: in instantiation of member function 'migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>::operator()' requested here
        return static_cast<_Callable&&>(_Obj)(static_cast<_Ty1&&>(_Arg1), static_cast<_Types2&&>(_Args2)...);
               ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:816:14: note: in instantiation of member function 'std::_Func_impl_no_alloc<migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>, migraphx::argument, migraphx::context &, const std::vector<migraphx::argument> &>::_Do_call' requested here
    explicit _Func_impl_no_alloc(_Other&& _Val) : _Callee(_STD forward<_Other>(_Val)) {}
             ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\xmemory:283:28: note: in instantiation of function template specialization 'std::_Func_impl_no_alloc<migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>, migraphx::argument, migraphx::context &, const std::vector<migraphx::argument> &>::_Func_impl_no_alloc<migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>, 0>' requested here
    ::new (_Guard._Result) _Ty(_STD forward<_Types>(_Args)...);
                           ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:927:18: note: in instantiation of function template specialization 'std::_Global_new<std::_Func_impl_no_alloc<migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>, migraphx::argument, migraphx::context &, const std::vector<migraphx::argument> &>, migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>>' requested here
            _Set(_Global_new<_Impl>(_STD forward<_Fx>(_Val)));
                 ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1052:15: note: in instantiation of function template specialization 'std::_Func_class<migraphx::argument, migraphx::context &, const std::vector<migraphx::argument> &>::_Reset<migraphx::cpu::dnnl_op<migraphx::cpu::dnnl_eltwise, dnnl::eltwise_forward>::execute_wrapper<(lambda at C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40)>>' requested here
        this->_Reset(_STD forward<_Fx>(_Func));
              ^
C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.37.32822\include\functional:1099:9: note: (skipping 8 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
        function(_STD forward<_Fx>(_Func)).swap(*this);
        ^
C:/UIF/AMDMIGraphX/src/include\migraphx/operation.hpp:566:20: note: in instantiation of function template specialization 'std::make_shared<migraphx::operation::private_detail_te_handle_type<migraphx::cpu::dnnl_eltwise>, migraphx::cpu::dnnl_eltwise>' requested here
              std::make_shared<private_detail_te_handle_type<
                   ^
C:/UIF/AMDMIGraphX/src/include\migraphx/register_op.hpp:64:43: note: in instantiation of function template specialization 'migraphx::operation::operation<migraphx::cpu::dnnl_eltwise>' requested here
    static auto op_h = detail::op_handler(T{});
                                          ^
C:/UIF/AMDMIGraphX/src/include\migraphx/register_op.hpp:73:9: note: in instantiation of function template specialization 'migraphx::register_op<migraphx::cpu::dnnl_eltwise>' requested here
        register_op<T>();
        ^
C:/UIF/AMDMIGraphX/src/include\migraphx/auto_register.hpp:36:22: note: in instantiation of function template specialization 'migraphx::register_op_action::apply<migraphx::cpu::dnnl_eltwise>' requested here
    Action::template apply<T>();
                     ^
C:/UIF/AMDMIGraphX/src/include\migraphx/auto_register.hpp:56:55: note: in instantiation of function template specialization 'migraphx::auto_register_action<migraphx::register_op_action, migraphx::cpu::dnnl_eltwise>' requested here
const int auto_register<Action, T>::static_register = auto_register_action<Action, T>(); // NOLINT
                                                      ^
C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40: note: candidate function not viable: no known conversion from 'context' to 'context &' for 1st argument
        execute = make_execute_wrapper([=](context&, const std::vector<argument>& args) {
                                       ^
1 error generated.

So we are definatly getting close to what the problem is:
C:/UIF/AMDMIGraphX/src/targets/cpu/include\migraphx/cpu/dnnl.hpp:326:40: note: candidate function not viable: no known conversion from 'context' to 'context &' for 1st argument
        execute = make_execute_wrapper([=](context&, const std::vector<argument>& args) {
                                       ^

I am not sure why its taking context and not context &. It could be a confusion between the migraphx::context and migraphx::cpu::context. I am not sure. Perhaps a fully qualified name might be better.
Either way, we dont use this parameter so we can removed it from the lambda(but not the function object):
template<class F>
struct execute_wrapper
{
    F f;
    argument operator()(context&, const std::vector<argument>& args) const
    {
        return f(args);
    }
};
template<class F>
execute_wrapper<F> make_execute_wrapper(F f)
{
    return {std::move(f)};
}

And then create the lambda as:
execute = make_execute_wrapper([=](const std::vector<argument>& args) { ... });

It worked. We have the final solution now. Thanks.


Creation and removal of security rules and DAGs in Panorama results in null reference errors

Describe the bug
Creation and removal of security rules and DAGs in Panorama results in null reference errors that can only be fixed with a management server process restart.
This issue appears to occur when you create and remove a series of security rules in a group, whilst using DAGs on those rules.
I have a case open with Palo Alto for this (NTT SVR127593239 and PAN-179059) and they've identified an issue with the MongoDB cache not being cleaned up properly during calls to the XML API where OR is used, resulting in the reference errors.
I'm pursuing them for a fix on this, but as a workaround migrating these calls to individual deletes without using OR, or migrating to the REST API instead of the XML would also remove this problem.
Expected behavior
apply and destroy should work without issue
Current behavior
Creation of resources that meet certain conditions then results in a broken panorama when a destroy is run.
Possible solution
See above - I expect the real fix is on the Panorama end, to handle the OR XML delete properly.
Steps to reproduce
I'll attach a terraform config to replicate this.

terraform apply
commit on panorama (I can't recall if this was required, I believe so)
terraform destroy
Note errors containing reference error to nothing

Screenshots
Not currently available, but I can dig them up if required.
Context
Removal of applications set up in our data centre now requires an additional step of restarting the entire panorama management process when they have to be removed. This is not a common occurrence however.
Your Environment

Version used: Panorama 9.x and 10.x, seen only various terraform versions
Environment name and version (e.g. Chrome 59, node.js 5.4, python 3.7.3): Nothing specific of note
Operating System and version (desktop or mobile): various
Link to your project: n/a

Palo engineering are working on a fix for this, but their approach appears to be removing the ability to have OR in XPATH calls.
This will have major impacts on Terraform's current operations and is referenced in PA TAC Case#: 01856318
The listed versions this will be in is 10.0.10 and 10.1.5 at this point.


No way to close the color picker

Hey! Thanks for the awesome color picker!
But there's no default way to close it. I did get it working by manually adding a display property but it would be great is such a functionality comes out of the box

Facing the same issue here. I like the style of the color picker :) but I am a bit annoyed that there is no close button.
@yourAverageDeveloper May I know to which event did you bind the closing ? or where did you integrate the button ?

Same here.

Facing the same issue here. I like the style of the color picker :) but I am a bit annoyed that there is no close button.
@yourAverageDeveloper May I know to which event did you bind the closing ? or where did you integrate the button ?

What i did was very simple really. I just added a button in the div where the picker was gonna be

<button class='close-picker'>Close</button

I added some CSS to the button positioning it absolutely while positioning the picker relatively. And then just moved it some negative pixels left and up. And then just added an event listener to the button
$('.close-picker').addEventListener('click', () => {   picker.css('display', 'none') }

If it helps anyone , I am using qtip2 library
Demo:
https://codepen.io/mafar/pen/RwbqYBE?editors=0010

v1.2.0
Added new methods hide(), show() and toggle() to picker
const a = AColorPicker.createPicker({});
a.hide(); // add 'hidden' css class to picker
a.show(); // remove 'hidden' css class from picker


Provides built-in GraalVM Reachability Metadata and submit the library information to the GRM central repo

Please fill it out carefully, or it will be closed.
请认真填写，不然会直接关闭。
Enviroment
JDK Version(required): GraalVM CE Dev 23.1.0 For JDK21
SpringBoot Version(required):  3.2.0-SNAPSHOT
dynamic-datasource-spring-boot-starter Version(required): 4.2.0-SNAPSHOT
druid Version(optional): Null.
Describe what happened

After #562 , baomidou/dynamic-datasource provides complete GraalVM Native Image support and completes nativeTest verification in Github Actions. But there are some problems here. Downstream users still need to add reasonable GraalVM Reachability Metadata files themselves. Refer to https://github.com/baomidou/dynamic-datasource/tree/0d963934ac0b4c390e1048eeba3230344cad0dc8/dynamic-datasource-spring-boot3-starter/src/test/resources/META-INF/native-image/com.baomidou/dynamic-datasource-spring-boot3-starter .

[ ] We need to fix the problem in Native Build Tools 0.9.25 that the maven goal of native:metadata-copy is not available in multi-module projects due to thread safety issues. Once this issue is fixed upstream, we will be able to refactor the Maven Profile for generateMetadata. Early surveys were on the Apache ShardingSphere side.

[x] We need to convert the GraalVM Reachability Metadata file of this commit https://github.com/baomidou/dynamic-datasource/tree/0d963934ac0b4c390e1048eeba3230344cad0dc8/dynamic-datasource-spring-boot3-starter/src/test/resources/META-INF/native-image/com.baomidou/dynamic-datasource-spring-boot3-starter from the Standard form to the Conditional form. Adding a Conditional condition to json can prevent the downstream from using resources mentioned in GraalVM Reachability Metadata but not existing when building GraalVM Native Image.

[x] After the above procedures are completed, we need to migrate the GraalVM Reachability Metadata under the test package to the main package so that it can be directly used downstream.

[ ] Submit the library information to the GRM central repo. For https://github.com/oracle/graalvm-reachability-metadata/issues/153 .

[x] Although https://github.com/baomidou/dynamic-datasource/blob/0d963934ac0b4c390e1048eeba3230344cad0dc8/CONTRIBUTING.md has been mentioned, we still need to indicate in a more conspicuous place that downstream should not use SpEL functions in GraalVM Native Image . Unless https://github.com/spring-projects/spring-framework/issues/29548 is fixed, downstream should not bother with this feature.

Expected Result:

This issue does not need this link.

Actual Result:

This issue does not need this link.

Steps to reproduce

This issue does not need this link.

@huayanYu Please assign this issue to me.

@huayanYu We should complete a release as soon as possible to ask for downstream feedback. This is also the next step to complete this issue.


'quart.app' vs 'app' for log level configuration via dictConfig

Per the quart documentation, logging configuration can be provided by configuring a logger called 'quart.app' via dictConfig. However, I've found that the log level pulled from current_app.logger uses the name 'app', rather than 'quart.app', and can therefore only be configured by setting 'app' up in dictConfig.
Example:
I would expect a configuration that looks like this:

to configure current_app.logger with a log level of INFO, per your documentation, but it actually sets that logger to WARN, since it's using 'app'

Environment:

Python version: 3.10.13
Quart version: 0.19.4

Thanks very much for figuring this out, I was about to give up on quart because I just could not get logging to work.
Trying to crudely figure out the correct logger name with
loggers = [logging.getLogger(name) for name in logging.root.manager.loggerDict]

I only got
<Logger quart.app (DEBUG)>, <Logger quart (WARNING)>

(where the former was created by my attempt to follow the docs). I suppose I checked too early in execution when the app logger had not yet been created, and the quart logger is not used for app-level logging.


Benchmarks for Java/Kotlin should parse/serialize from/to a byte array or java.nio.ByteBuffer instead of String

Currently benchmarks test only half of the real use case, because usually we receive/send buffered bytes from the wire or disks, not strings.

Java benchmarks use byte[] based dynamic buffer to serrialize/deserialize objects.
Also this Buffer has methods to attach any byte[] data to serrialize/deserialize objects:
public class Buffer
{
...
    public void attach(byte[] buffer) { _data = buffer; _size = buffer.length; _offset = 0; }
    public void attach(byte[] buffer, long offset) { _data = buffer; _size = buffer.length; _offset = offset; }
    public void attach(byte[] buffer, long size, long offset) { _data = buffer; _size = size; _offset = offset; }
...
}


[FEATURE]: Adding a new category for Sequences

Motivation
TypeScript (and JavaScript) has the capability of using Generator functions, which can help us in generating sequences.
There already exists a category for Sequences, which was made for C# to make use of the existence of generator methods in C# (from what was told to me by one of the maintainers of the C# repository).
Since TypeScript also has generators, we could also add implementations for those sequences on the Website under this category. We could also add many more entries under this category, for there are many sequences whose implementations are non-trivial but not added there yet.
Examples
We could add this to increase coverage of the entries under the cateogry of Sequences, which would also look less confusing, for when someone may look at the website, it can be confusing so as to why there's only C# implementations under those sequences.
Possible workarounds
No response

Agreed. Sequences should get a subcategory in the maths folder.

Agreed. Sequences should be implemented as generators (where possible) and get a subcategory in the maths folder.

Yes. Just one question, Sequences already exists as a category separate to that of Maths on the website, so if we put sequences as a sub-category to maths in our file structures, then would it not lead to duplicate entries? How shall we prevent that?

From taking a brief look at the website code, I think it would be under the both the "maths" and "sequences" categories then: https://github.com/TheAlgorithms/website/blob/1d72fe67726e333d64cbaa48a7812231e3348c1f/scripts/fetch-algorithms.ts#L114-L122.
If not, esp. if it'd just be under the maths category, that would be a website issue.


doc: update package dependencies for Linux

We now require host compiler for building Zephyr in 32bit mode.
Fixes #5989

Codecov Report

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

@@           Coverage Diff           @@
##           master    #5990   +/-   ##
=======================================
  Coverage   52.51%   52.51%
=======================================
  Files         406      406
  Lines       39683    39683
  Branches     7715     7715
=======================================
  Hits        20839    20839
  Misses      15663    15663
  Partials     3181     3181

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 f09bab9...0be4db5. Read the comment docs.


Piping opctl output makes op exit non-gracefully

I tend to run my op like this: opctl run dev | jqs (jqs is equivalent to jq  -Rr ". as \$line | try (fromjson | .) catch \$line") (this somewhat works around #62 and #76).
For a minimal reproduction, you can pipe your task to | tee.
When I ctl+c this piped command, opctl doesn't exit gracefully, which means all my containers are still running and I can't restart it due to port conflicts.
Related to https://github.com/opctl/opctl/issues/657

This just bit me again. Without #657, there's no way to find the tasks to kill them.


Tests2

Looks fine, I guess we don't need to run the tests under docker in travis?
Since we've added environment variables though, I'd recommend adding a .env_template file and adding a note to the README / docs about its usage.


Update Links “tiktok-36”

Automatically generated by Netlify CMS

👷 Deploy Preview for distracted-hoover-7b89cc processing.
🔨 Explore the source changes: d9a0e3b295f5095cf7eb2044327dd4bb3cdb5a12
🔍 Inspect the deploy log: https://app.netlify.com/sites/distracted-hoover-7b89cc/deploys/614bb62f1b118500079ac6c4


Updates camera-plus

Updating until commits of 21-02-03 of nstudio/nativescript-camera-plus

Thank you!

Released with 4.0.2


Create a quick start guide

I try use your project from branch v2 and have some troubles. It will be very helpful if you write quick start guide. Set of commands and changes in project files which will lead to generation of a working service.

Everything is generated from the Go interface.
You can see an example in example.
If you want, you can figure it out and write instructions. Make your contribution.


clang 11 build issue

Try to build tinygltf with clang 11 with following code:
#include <cmath>
#define TINYGLTF_IMPLEMENTATION
#define STB_IMAGE_IMPLEMENTATION
#define STB_IMAGE_WRITE_IMPLEMENTATION
#define TINYGLTF_NO_EXTERNAL_IMAGE
#define TINYGLTF_NOEXCEPTION
#define TINYGLTF_USE_RAPIDJSON
#define TINYGLTF_USE_RAPIDJSON_CRTALLOCATOR

#include "tiny_gltf.h"

Error:
tiny_gltf.h:6182:35: error: ambiguous conversion for functional-style cast from 'unsigned long' to '(anonymous namespace)::json' (aka 'GenericValue<rapidjson::UTF8<>, rapidjson::CrtAllocator>')
  JsonAddMember(obj, key.c_str(), json(number));
                                  ^~~~~~~~~~~

And one need to include <cmath> because it fails with std::fabs :
tiny_gltf.h:1681:14: error: no member named 'fabs' in namespace 'std'
      return TINYGLTF_DOUBLE_EQUAL(one.Get<double>(), other.Get<double>());
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tiny_gltf.h:180:43: note: expanded from macro 'TINYGLTF_DOUBLE_EQUAL'
#define TINYGLTF_DOUBLE_EQUAL(a, b) (std::fabs((b) - (a)) < TINYGLTF_DOUBLE_EPS)
                                     ~~~~~^

You should not use clang11 since its not yet released.
I don't see any error with clang-10
$ clang++-10  -fsanitize=address -Wall -Werror -Weverything -Wno-c++98-compat -DTINYGLTF_USE_RAPIDJSON -DTINYGLTF_USE_RAPIDJSON_CRTALLOCATOR -I../rapidjson/include/rapidjson -std=c++11 -g -O2 -o loader_example loader_example.cc

Good catch for std::fabs. I have fixed it with this commit: https://github.com/syoyo/tinygltf/commit/978adee547bc18a9d62449022d27b040e9511965

You should not use clang11 since its not yet released.

I know, but for example emscripten use it.
Currently I can't compile it with clang/wasm with your simple command line without errors. So I reopen it when I can reproduce it.


refactor: simplify headless-utils

Commit-by-commit review is recommended.

Rebased on main to get status checks to pass.


Python typechecking, mypy issues for src/systems and tests/tests_system

Description
Python typechecking, mypy issues for src/systems and tests/tests_system
Issues Resolved
https://github.com/opensearch-project/opensearch-build/issues/1511
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1564 (1c984f8) into main (17290ac) will decrease coverage by 9.09%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##               main    #1564      +/-   ##
============================================
- Coverage     94.32%   85.22%   -9.10%
  Complexity       12       12
============================================
  Files           148       25     -123
  Lines          3154       88    -3066
  Branches          8        8
============================================
- Hits           2975       75    -2900
+ Misses          172        6     -166
  Partials          7        7

Impacted Files
Coverage Δ

src/system/execute.py

src/system/process.py

src/system/thread_safe_counter.py

src/system/working_directory.py

src/build_workflow/builder_from_source.py

src/paths/tree_walker.py

src/build_workflow/builders.py

src/build_workflow/build_artifact_checks.py

src/manifests/bundle/bundle_manifest_1_0.py

...flow/dependency_installer_opensearch_dashboards.py

... and 113 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 17290ac...1c984f8. Read the comment docs.


Dart Unhandled Exception: dependOnInheritedWidgetOfExactType<_LocalizationsScope>() or dependOnInheritedElement() was called before initState

Hi,
Suddenly my app got below error. What I understand is that <_LocalizationsScope> called before initState.
I call in init state loadEveything function so I can get data from http. If there is an error on http get than I show user a
showDialog function. In showDialog function has use Localizations as: final langState = AppLocalizations.of(context);
But until my card page from login I use same coding and each page showDialog that has Localizations didnt gave me any error. But when I tab the Card TabItem I got above error. Any idea? Thanks
Error:
Reloaded 11 of 1152 libraries in 595ms.
[VERBOSE-2:shell.cc(210)] Dart Unhandled Exception: dependOnInheritedWidgetOfExactType<_LocalizationsScope>() or dependOnInheritedElement() was called before _CardsSummaryState.initState() completed.
When an inherited widget changes, for example if the value of Theme.of() changes, its dependent widgets are rebuilt. If the dependent widget's reference to the inherited widget is in a constructor or an initState() method, then the rebuilt dependent widget will not reflect the changes in the inherited widget.
Typically references to inherited widgets should occur in widget build() methods. Alternatively, initialization based on inherited widgets can be placed in the didChangeDependencies method, which is called after initState and whenever the dependencies change thereafter., stack trace: #0      StatefulElement.dependOnInheritedElement.<anonymous closure> (package:flutter/src/widgets/framework.dart:4886:9)
#1      StatefulElement.dependOnInheritedElement (package:flutter/src/widgets/framework.dart:4929:<…>

flutter doctor -v
[✓] Flutter (Channel stable, 1.22.6, on macOS 11.2.2 20D80 darwin-x64, locale en-GB)
    • Flutter version 1.22.6 at /Users/***********/flutter
    • Framework revision 9b2d32b605 (6 weeks ago), 2021-01-22 14:36:39 -0800
    • Engine revision 2f0af37152
    • Dart version 2.10.5

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/***********/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/***********/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.1

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin installed
    • Dart plugin version 201.9335
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Community Edition (version 2020.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin installed
    • Dart plugin version 203.7759

[!] Connected device
    ! No devices available

@NTMS2017
Your question is better suited for StackOverflow. Please see https://flutter.dev/community for resources and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


shop error message

Hi every body,
could some please help me ? I can't have WC in english language
What product versions and settings are you using when this issue occurs?

PHP:
WordPress: 4.8
WooCommerce:  3.0.8
Polylang: 2.1.5
Hyyan WooCommerce Polylang Integration: 1.0.1
Browser: Opera

Steps to Reproduce

Set the english language by the main menu

What I Expected
My shop in english language
What Happened Instead
Error message "No products were found matching your selection." when clicking on the English language.
Great thanks in advance

Was your shop fully set up and working before? on which versions?
If it is a new setup, please check the wiki https://github.com/hyyan/woo-poly-integration/wiki/Getting-Started
"No products were found matching your selection." is a perfectly normal WooCommerce message when there are no products matching the selection so there are a very large number of reasons why that could come up, including missing translations, and various possible misconfigurations.
For example if you are on a category, tag or other archive page which does not yet have translations in English, this would be an expected result.
Note there are some compatibility issues with WordPress 4.8 and Hyyan WooCommerce Polylang Integration: 1.0.1, the latest pre-release to address these is this one:  https://github.com/hyyan/woo-poly-integration/releases/tag/1.0.2-beta2
However this unlikely to be related to your issue.

Hi Jon007,
Thanks for your message.
I'm a complet noob on WC, my shop is still under construction.
One of my issue has been solved by creating the products in each language, thanks for help ;)
But all the other pages related to the shop like the Cart, My Account, Order are blank

Have you created the Page translations for the pages like Cart, My Account, Order ... ?
Just open each page and press the '+' button next to the language flags in the Languages section.
This is standard Polylang functionality not part of this plugin, see eg: https://polylang.wordpress.com/documentation/setting-up-a-wordpress-multilingual-site-with-polylang/translating-posts-or-pages/
If the pages are created but blank, maybe you have not copied the shortcode?
Eg the contents area for each page should contain the same shortcode as the original language version eg:

Shop:  [woocommerce_checkout]
Basket: [woocommerce_cart]
Checkout: [woocommerce_checkout]
My Account: [woocommerce_my_account]

The pages are full WordPress pages so can also contain your own text, but they must have these shortcodes.

Hi Jon007,
I missed the short codes steps, there are now on the english pages and now they are translated in english :)
Many thanks for you help !

ok no problem, I'll close the issue then


fix: 🐛 do not wrap validation errors

:tada: This PR is included in version 2.16.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Limit number of files that can be selected

Mentioned in this issue: https://github.com/vinceglb/FileKit/issues/50.
I tried to tackle this, but there are multiple issues:
Doesn't work:

JVM
JS / Wasm
macOS

Partially works:

Android (Only works for images and media, not for regular files)
iOS (Only works for images and media, not for regular files)

These results are not great. I think we can implement the limit ourselves by keeping track of the amount of selected files and then either not letting the user select more or deselecting the oldest selection, FIFO style.
A possible implementation for this on JVM (Windows) for example is to have a coroutine running the whole time the picker is open and querying fc.selectedFiles and when it goes over the limit apply the limit strategy to keep the selected files at or below the max.
I haven't looked into whether this manual handling is possible for all platforms. I could take a look, but I'm not sure if maintaining this for all platforms is something that you want to do @vinceglb.
There might also be better options, if anyone knows any add a comment to this PR and I will check it out.

Please take a look at https://github.com/onseok/peekaboo
Maybe helpful

I updated your PR with these changes:

maxItems property is now nullable and must be contained between 2 and 50.
I modify the default value from Int.MAX_VALUE because it crashes on Android and put it to null.

On Android, the value must not exceed MediaStore.getPickImagesMaxLimit() but this method is only accessible from Android API 33... So I put 50 as the limit, but it's an arbitrary number. And 2 because putting 1 doesn't make sense to me when using PickerMode.Multiple.
I tested on Android and iOS, with and without maxItems set, and it works fine for both versions 👍
@santiwanti, what do you think of the changes?

@vinceglb They look good. The PR was more a prototype to see on which platforms could handle maxItems nicely, but I hadn't tested it at all.

Making maxItems be greater than 2 seems reasonable. I had thought we could handle it for the user, but it's probably easier if they do the check anyway to call the single or multiple.
I will look into how we can handle a limit nicely without an arbitrary value of 50. There might be something that can be used in older API versions, but this can be done in another PR if you want to merge this soon.

Just to add most apps keep a limit of 10 to 30 for a single selection. Perhaps to ensure memory management. 50 is a very good number to have though. Might be a issue for HEIC image files.

@santiwanti

I've thought about putting maxItems range from 1 like in your original PR and I think it's a good idea! It's probably easier for the developer to handle this case. I've updated the code in that way
If you have an idea of how to handle the max items limit, I prefer waiting for your solution before merging

@LaatonWalaBhoot
Thanks for your feedback! The picker returns PlatformFiles with nsURL / Uri pointing at each file. The library doesn't load the bytes from the files into memory. So, I think that even 50 files will not cause any problem. The library loads bytes into memory only if we call readBytes() on the platformFile.

Finally, I'm going to merge this PR today to create version 0.7.0 and we'll create another PR to manage max items limit nicely later.


add etcd exampes

Hi,
can u add examples how the etcd structure looks like?
regards f0

Read this for the time being: https://github.com/skynetservices/skydns/blob/master/README.md

@miekg  thx, so a record for a.test.local looks like this, but does not work....
/dns/local/test/a '{"host":<IP_ADDRESS>, "priority":20}'

[ Quoting<EMAIL_ADDRESS>in "Re: [miekg/coredns] add etcd exampe..." ]

@miekg  thx, so a record for a.test.local looks like this, but does not work....
/dns/local/test/a '{"host":<IP_ADDRESS>, "priority":20}'

No, need to be prefixed with /skydns and no dns so
/skydns/local/test/a
and then your service, where ip is a string and prio is a int (i think), you'll
need to quote the string
/Miek
--
Miek Gieben

@miekg  ok so the /skydns is not changeable?

See https://github.com/miekg/coredns/blob/master/middleware/etcd/README.md
use path

@miekg  also with /skydns/local/test/a '{"host":<IP_ADDRESS>}'   it does not work, this is the Corefile
.:53 {
    etcd test.local {
        endpoint http://localhost:2379
        errors stdout
        log stdout
     }
}

see https://github.com/miekg/coredns/issues/156#issuecomment-224353058 above
this is btw a nice feature for the debug queries - returned malformed entries.

@miekg   sorry if i am dump but it does not work...
etcdctl get /skydns/local/test/a
{"host":"<IP_ADDRESS>"}

dig a.test.local @localhost

; <<>> DiG 9.10.2-P4 <<>> a.test.local @localhost
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 21689
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;a.test.local.                  IN      A

;; Query time: 0 msec
;; SERVER: <IP_ADDRESS>#53(<IP_ADDRESS>)
;; WHEN: Tue Jun 07 19:39:23 CEST 2016
;; MSG SIZE  rcvd: 41

@miekg ok i am dumb :) now it works, i do not correct restart after switching to /skydns ... thx for your help

Cool. Docs can be improved. Feel free to file issue and or a pr.
On 7 Jun 2016 6:55 p.m., "f0"<EMAIL_ADDRESS>wrote:

@miekg https://github.com/miekg ok i am dumb :) now it works, i do not
correct restart after switching to /skydns ... thx for your help
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/miekg/coredns/issues/156#issuecomment-224361322, or mute
the thread
https://github.com/notifications/unsubscribe/AAVkW7ttByGoGFDAmR2j3VfNtgD6cjFgks5qJbBugaJpZM4IwKDZ
.

@miekg hm does the reverse lookup also works like in skydns?

Probably not. Didn't implement that yet, but should be easy to add. Thought
wasn't used much :)
On 7 Jun 2016 7:15 p.m., "f0"<EMAIL_ADDRESS>wrote:

@miekg https://github.com/miekg hm does the reverse lookup also works
like in skydns?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/miekg/coredns/issues/156#issuecomment-224367454, or mute
the thread
https://github.com/notifications/unsubscribe/AAVkW0gF1TVL9gMH-knJjbfI-X7p4zkRks5qJbVPgaJpZM4IwKDZ
.

hm for a propper DNS you need reverse lookups....


chore: bdd-spring-1575456083 to 0.0.1

chore: Promote bdd-spring-1575456083 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
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

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


improved faerie fire not working

improved faerie fire is now indeed selectable but i see no hit increase in the sim (both online and offline version)

Thanks!  This was fixed in: https://github.com/marisa-ashkandi/tbcsim/commit/1a47505ea0c0760f7bd946caf64069081dda259f


[Feature Request]: Set Several Default Prompts on right side panel, cause it's more convinent when using on different Devices

On the right panel, if there are several  default prompts, that would be better when we using Chatbot-UI indifferent devices, like laptop and iPhone.
Now, the prompts on right side could only in local memory of browser on lap top or pad and iPhone, every prompt would be added three times...
Wish For Mckay's kindness to add this feature

An option to use supabase to authenticate a user (e.g. by using magic link) and store prompts and chats in the PG Database for each user would be cool.


Validation getting failed while running Contoso Landing zone template

We are getting below error message and validation getting failed while deploying the Contoso landing Zone template.
While other template AdverntureWorks has no issue.
Please do the needful.
**Raw error :
{
"code": "InvalidTemplate",
"message": "Deployment template validation failed: 'The deployment metadata 'SUBSCRIPTION' is not valid.'."
}**

The same issue also exists when one is deploying the ALZ accelerator at https://aka.ms/caf/ready/accelerator
The deployment template validation failed with the error message above specifically if you were to select the following option for creating a vnet and peering it with the connectivity hub, it is in the Identity module:

This error appears only when you select "dedicated". If the intent is to deploy single subscription for connectivity and identity then selecting "Single" eliminate this error. Seems to me this is by design

.


How to set Height Width of CTkXYFrame

Hi @Akascape
I tried the place instead of pack but its not working
Here is the code I tried.
frm_cscan_widgets = CTkXYFrame(master=root, width=200, height=150)
frm_cscan_widgets.place(x=10, y=140)
I see the width, height isn't working. Here is the screenshot
https://i.imgur.com/CJ5s6no.png
Any help would be appreciated.

@sunny9495-dev Fixed now. update to the latest version.


question of CCA Layer and RSA Layer

In your code, the final layer of RFDB is RSA. But in your paper ,the final layer RFDB is CCA(same as the IMDN). Could you tell me why and explain the theory of it.    Looking forward your reply.

The code provided by the author is used in the competition and is mentioned at the end of the paper.

@kk6398 , see IMDN and replace ESA with CCA.
The author only provide AIM 2020 codes


Updated Tex's ASCII logo

Changed Tex's ASCII logo to follow the defined standards. Also I would call it a rich logo 😉

Also I would call it a rich logo :wink:

:laughing: Indeed, that's lot of :moneybag::moneybag:
Great job @maash3r


MD - Production Faliure 1/13/2023

Problem statement
Here is the production failure code:
[1;31m16:07:02.932 [pool-2-thread-1830][39333] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 048bfa05-bb14-4d28-bb23-1921296c91cf to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./, credentialName=null) (orgService = md-phd.elr), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 048bfa05-bb14-4d28-bb23-1921296c91cf to md-phd.elr[m
[1;31m16:07:30.762 [pool-2-thread-1830][39333] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 26aa29d5-8770-4d06-8bb6-dd242c69ef0a to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 26aa29d5-8770-4d06-8bb6-dd242c69ef0a to md-phd.elr-secondary[m
To do
will cross check in last mile failures

15 Errors so far

new production failure code:
[1;31m18:07:05.012 [pool-2-thread-2337][74226] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 5e6bd042-0b87-46dd-a006-3ec78cbf7fd7 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 5e6bd042-0b87-46dd-a006-3ec78cbf7fd7 to md-phd.elr-secondary[m
[1;31m18:08:36.714 [pool-2-thread-1920][41823] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 09647325-2a64-4a30-ade2-2bfba9d3fcdb to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./, credentialName=null) (orgService = md-phd.elr), Exception: Timeout expired, All retries failed.  Manual Intervention Required.  Send Error report for: 09647325-2a64-4a30-ade2-2bfba9d3fcdb to md-phd.elr[m

Over the weekend 44 more failures popped up for MD
new production failure codes:
[1;31m14:07:50.303 [pool-2-thread-5124][187519] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId ad02b142-3e75-4226-a096-b7be0fdf2607 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: ad02b142-3e75-4226-a096-b7be0fdf2607 to md-phd.elr-secondary[m

On our retro call we discussed some additional steps and testing we could do to troubleshoot this issue further:

Build a traceroute process in our transport logic similar to how we do a connection check in ls
Stand up a machine in Azure behind the firewall that we can use to manually run features like SFTP and traceroute that would directly emulate what RS is doing
Set up some testing with the Palo Alto firewall team to see if there's anything we can do to address this on our end

@brick-green @greene858 - am I missing any options?

Another failure:
[1;31m16:07:40.205 [pool-2-thread-4971][187601] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 45612d6d-5289-4809-bca0-86bad978f57f to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 45612d6d-5289-4809-bca0-86bad978f57f to md-phd.elr-secondary[m

And another one:
[1;31m16:08:32.196 [pool-2-thread-4977][187952] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 099f9f73-8b19-45d6-893d-951a40574844 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./, credentialName=null) (orgService = md-phd.elr), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 099f9f73-8b19-45d6-893d-951a40574844 to md-phd.elr[m

more failures
[1;31m20:05:48.954 [pool-2-thread-145][1133] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 0374098f-6831-404c-bdba-767427ecae22 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 0374098f-6831-404c-bdba-767427ecae22 to md-phd.elr-secondary[m
[1;31m20:07:30.867 [pool-2-thread-139][1002] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId b82b4fff-89f0-4c2e-9831-c7e155a9f510 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./, credentialName=null) (orgService = md-phd.elr), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: b82b4fff-89f0-4c2e-9831-c7e155a9f510 to md-phd.elr[m
[1;31m22:07:19.876 [pool-2-thread-283][2545] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 09c8d24a-6143-45e2-ade5-32bf6c203797 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./, credentialName=null) (orgService = md-phd.elr), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: 09c8d24a-6143-45e2-ade5-32bf6c203797 to md-phd.elr[m
[1;31m22:07:19.828 [pool-2-thread-282][2536] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId f1e691cb-403e-44f8-9da0-be61efb2aae9 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed.  Manual Intervention Required.  Send Error report for: f1e691cb-403e-44f8-9da0-be61efb2aae9 to md-phd.elr-secondary[m

More failures: [1;31m02:07:02.895 [pool-2-thread-452][6897] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 6eb93e75-afba-4745-96fc-1737aae02c92 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./, credentialName=null) (orgService = md-phd.elr), Exception: Connection reset, All retries failed. Manual Intervention Required. Send Error report for: 6eb93e75-afba-4745-96fc-1737aae02c92 to md-phd.elr[m
[1;31m02:07:39.447 [pool-2-thread-452][6897] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId 605d49d8-aa0f-4a1d-af48-0e5f81bf079e to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Timeout expired, All retries failed. Manual Intervention Required. Send Error report for: 605d49d8-aa0f-4a1d-af48-0e5f81bf079e to md-phd.elr-secondary[m
[1;31m04:06:01.253 [pool-2-thread-552][8032] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId af7141af-1c90-4de9-9eee-054b848064c5 to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed. Manual Intervention Required. Send Error report for: af7141af-1c90-4de9-9eee-054b848064c5 to md-phd.elr-secondary[m
[1;31m08:07:51.446 [pool-2-thread-535][12681] FATAL-ALERT gov.cdc.prime.router.azure.SendFunction - FAILED Sftp upload of inputReportId b9af8e36-90f7-4b00-a3b1-bd0a6bb28c5f to SFTPTransportType(host=essence.health.maryland.gov, port=22, filePath=./OTC Results, credentialName=null) (orgService = md-phd.elr-secondary), Exception: Connection reset, All retries failed. Manual Intervention Required. Send Error report for: b9af8e36-90f7-4b00-a3b1-bd0a6bb28c5f to md-phd.elr-secondary[m

Update from MD:
Hi Sharon,
Yes, please let me know when you are available to troubleshoot this issue. Another facility let us know that a new key was presented from the server and once accepted, the upload went through.
Thanks,
Chandeep

Another update from MD:
Hi Sharon,
Yes I am available at 10:30 am.
FYI - We have been able to determine that some sftp clients are having issues connecting with our bitvise server since last week.
Those partners have tried other clients like Filezilla and successfully connected.
Thanks,
Chandeep

Sent to MD via SFTP all MD-Secondary from 1/12/2023 - 1/18/2023

I moved to O&O Backlog.  We still need to work on ReportStream SSHJClient connection to MD (uses: Bitvise SFTP Server).

Adding MD public key to RS Vault.

Debugged and tried with Kishok (MD IT Manage).
1.) Tried with reset the password (Not work)
2.) Tired with private/public key pair (Not work)
Hence, it looks like ReportStream doesn't handle their fingerprint reconfiguration.  It failed Connection reset during key exchange.

Kishok Rojohn -MDH-<EMAIL_ADDRESS>Sathngam, Ott (CDC/DDPHSS/OD/HITSSU)
Report Stream (CDC);Kristy Lunquest -MDH- kristy.lunquest@maryland.gov;Chandeep Singh -MDH- chandeep.singh@maryland.gov;Judie K. Hyun -MDH-<EMAIL_ADDRESS>Yes, your client needs to accept the MDFingerprint.  I think your client might have the old fingerprint which could be the cause. Please try to configure your client to accept the fingerprint.
Thanks
Kishok

update:
Kristy,
Thank you for following up with me.  I am still working on it.  Somehow, ReportStream still can't connect to MD.
I was working Kishok to try to use Key pair and still has the same issue.  He told me to verify the sftpclient and
make sure that we use latest version.  I verified and we use the latest version of SSHJ.
Currently, I have to switch work on the higher priority task and hope to come back to work on it soon.
Thank you,
-Ott Sathngam
CDC ISE

I raise ticket priority to high.  MD wants it done asap.

Worked with MD's engineer.  She told me to wait for their network engineer to look into it with other labs that have the same issue as us.

Here's what I see as supported protocols from their firewall:
nmap -sV -p 22 -open -script ssh2-enum-algos essence.health.maryland.gov
Starting Nmap 7.93 ( https://nmap.org ) at 2023-03-06 13:28 EST
Nmap scan report for essence.health.maryland.gov (<IP_ADDRESS>)
Host is up (0.021s latency).
Other addresses for essence.health.maryland.gov (not scanned): <IP_ADDRESS>
rDNS record for <IP_ADDRESS>: essence.dhmh.maryland.gov

PORT   STATE SERVICE VERSION
22/tcp open  ssh     (protocol 2.0)
| ssh2-enum-algos:
|   kex_algorithms: (2)
|       diffie-hellman-group-exchange-sha256
|       diffie-hellman-group-exchange-sha1
|   server_host_key_algorithms: (2)
|       ssh-rsa
|       ssh-dss
|   encryption_algorithms: (6)
|       aes128-ctr
|       aes192-ctr
|       aes256-ctr
|       aes128-cbc
|       aes192-cbc
|       aes256-cbc
|   mac_algorithms: (6)
|       hmac-md5
|       hmac-sha1
|       hmac-ripemd160
|<EMAIL_ADDRESS>|       hmac-sha1-96
|       hmac-md5-96
|   compression_algorithms: (1)
|_      none
| fingerprint-strings:
|   NULL:
|_    SSH-2.0-PaloAltoNetworks_0.2

MD security engineer reconfigured their Firewall rule and whitelisted us.  Now, we can connect to the server sometime.  However most of the time, we can't connect to it and get the same failure.

@oslynn have you noticed the IP address used on the connections?  They appear to have an HA configuration involving two firewalls.  It is possible that only one is updated properly.

MD completed whitelisted us and Waiting for them to complete their reconfiguration of their new Firewall.

done.


Add mdnsresponder port

@Outurnate,
Thanks for having already signed the Contribution License Agreement. Your agreement has not been validated yet. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

Thanks for the PR!


Error when doing make release

Hi, I want to make colorschemes using your project. But I am facing some errors and I don't know Zig.
Here's how to reproduce.
$ zig version
0.9.0

$ cd colorstorm
$ make release
zig build -Drelease-safe=true
/Users/anshul.chauhan/playground/vscode/colorstorm/src/templator.zig:101:25: error: unused loop index capture
        for ("RGB") |c, i| {
                        ^
colorstorm...The following command exited with error code 1:
/Users/anshul.chauhan/.brew/Cellar/zig/0.9.0/bin/zig build-exe /Users/anshul.chauhan/playground/vscode/colorstorm/src/main.zig -OReleaseSafe --cache-dir /Users/anshul.chauhan/playground/vscode/colorstorm/zig-cache --global-cache-dir /Users/anshul.chauhan/.cache/zig --name colorstorm --enable-cache
error: the following build command failed with exit code 1:
/Users/anshul.chauhan/playground/vscode/colorstorm/zig-cache/o/08dec60946b61bcb15763e4603c3e8fb/build /Users/anshul.chauhan/.brew/Cellar/zig/0.9.0/bin/zig /Users/anshul.chauhan/playground/vscode/colorstorm /Users/anshul.chauhan/playground/vscode/colorstorm/zig-cache /Users/anshul.chauhan/.cache/zig -Drelease-safe=true
make: *** [release] Error 1

This seemed trivial, so I fixed it by doing
-         for ("RGB") |c, i| {
+         for ("RGB") |c| {

And then I tried to make again and got this error
$ make release
zig build -Drelease-safe=true
./src/main.zig:24:15: error: expected type '*std.mem.Allocator', found '*const (bound fn(*std.heap.arena_allocator.ArenaAllocator) std.mem.Allocator)'
    a = &arena.allocator;
              ^
./src/main.zig:24:15: note: cast discards const qualifier
    a = &arena.allocator;
              ^
./src/main.zig:57:5: note: referenced here
    try parse_args();
    ^
colorstorm...The following command exited with error code 1:
/Users/anshul.chauhan/.brew/Cellar/zig/0.9.0/bin/zig build-exe /Users/anshul.chauhan/playground/vscode/colorstorm/src/main.zig -OReleaseSafe --cache-dir /Users/anshul.chauhan/playground/vscode/colorstorm/zig-cache --global-cache-dir /Users/anshul.chauhan/.cache/zig --name colorstorm --enable-cache
error: the following build command failed with exit code 1:
/Users/anshul.chauhan/playground/vscode/colorstorm/zig-cache/o/08dec60946b61bcb15763e4603c3e8fb/build /Users/anshul.chauhan/.brew/Cellar/zig/0.9.0/bin/zig /Users/anshul.chauhan/playground/vscode/colorstorm /Users/anshul.chauhan/playground/vscode/colorstorm/zig-cache /Users/anshul.chauhan/.cache/zig -Drelease-safe=true
make: *** [release] Error 1

Should be fixed now -- thanks for checking out the project! Let me know if you have any other issues or suggestions for the tool once you've tried the latest changes.


how to turn off citations?

Assuming you meant the references at the bottom? I'm not sure if this will impact your responses, but you can set the kwargs at the bottom of your chatdocs.yml config file to kwargs: 0


Added filterOptions prop on SingleSelect

Adds optional prop on SingleSelect component to disabled filtering of options

Solves #1065

The PR was withdrawn after testing together on call. When typing in new values in input it would not filter the list at all making the behaviour very similar to our existing NativeSelect.
A possible solution could be to have "current" filtered item be highlighted with an active color in the list on re-opening, but this feature would entail a bit more work, and not feasible given time constraints at this moment


About File Search

Description of the new feature / enhancement
thinks for your efforts! I hope to integrate file search into the resource manager. Can I enable fuzzy search, such as pinyin initial search?
Scenario when this would be used?
When selecting a file
Supporting information
No response

/dup #3587


Verify ckBTC

Description
Verify ckBTC
Checklist

Upgrading Asset to Verified

If upgrading an Asset to Verified, please see the requirements specified at LISTING, and ensure the following:

[x] Asset is defined thoroughly at the Cosmos Chain Registry.

[x] A meaningful description (and extended_description, unless: meme, variant, or non-primary chain token).
[x] Associated socials, including website and twitter (unless: meme, variant, or non-primary chain token).
[x] Logo Image has a square Aspect Ratio, < 250 KB file size, and appropriate visual contrast with Osmosis Zone colors.

[ ]  Liquidity: This pool contains contains at least $1k USD-worth of liquidity of the asset (Provide Pool ID): ______ (Skip if alloy constituent)

'Verified' Status Validation Checklist (to be completed by Osmosis Zone maintainers):

[x] Verify appearance and metadata
[x] Accurate Price
[ ] Trading and routing functionality
[ ] Withdraw and Deposit

[ ] Deposit Transaction URL (if in-app)

Will be in the alloy


Incorrect parsing of large binary/octal/hex literals

@DonIsaac I'm afraid I found an edge case with #3296.
Because of the switch from using floating point to integers, we need to handle arithmetic overflow now.
For numbers which evaluate to more than u64::MAX, parsing is incorrect.
e.g.: 0x10000000000000000 should be evaluated as 2.0f64.powf(64.0), but instead produces 0.
Playground

A possible fix would be:

Trim any 0s from start of string before looping over chars.
Stop the main loop after 16 characters (16 for hex, more for octal or binary).
If further characters remain, shift the number after conversion to f64 to account for the extra digits.

Such enormous numbers are an uncommon case, and we wouldn't want to slow down the fast path to accommodate it. So I'd suggest:

Implement the full algorithm which handles large numbers in a separate function parse_hex_slow.
At start of parse_hex, quickly check if length is larger than what can be handled by the fast algorithm.
Switch to parse_hex_slow if so.
Mark parse_hex_slow as #[cold] and #[inline(never)].

This should only cost the fast path 2 CPU ops (test length, conditional jump), but will preserve correct behavior in all cases.
That's just a suggestion, you may see a better way. And if you don't have time for this, just say, and I'll do it.

Fixed by #4072.


No tests in composer installed instance

There are tests in git but no tests in composer installed instance. What i am doing wrong? Thanks.

They are not exported when installed via composer to avoid extra files: https://github.com/2amigos/yii2-gallery-widget/blob/master/.gitattributes#L10
If you wish to add the tests, I highly recommend you to zip download or git clone.


Create ui initial structure for Trigger and Activity

When we create a new Trigger or Activity we need to create an initial default ui structure

We'll address this when we support custom UIs


Enable users to write custom alert messages

🚀Feature Request
Description
Currently, the application provides predefined alert messages for reminding users to take eye protection breaks. However, allowing users to write their own custom alert messages would enhance personalization and make the app more flexible for different use cases.
Why is this feature important to you?
Some users may have specific needs or motivational messages that they find more helpful.
Describe the solution you'd like
The solution should include a UI element where users can input a custom alert message. This message would then replace the default alert text when break reminders pop up. Ideally, the custom message input would have a character limit to avoid overly long alerts.
Additional context
An alternative solution could be to allow users to choose from a list of predefined motivational messages, but providing full customization would offer more flexibility.

plz assign this issue to me

i want to contribute to this issue pls assign it to me

while running the extension it is giving the following issue
Uncaught (in promise) Error: Could not establish connection. Receiving end does not exist.
how to solve this so i can implement custom messages

while running the extension it is giving the following issue Uncaught (in promise) Error: Could not establish connection. Receiving end does not exist. how to solve this so i can implement custom messages

It's working for me and other contributors, can you tell how did you set up the extension?

i forked the repo cloned it and unpacked the extension in dev mode in chrome and to see the notification i just changed the timer value from 20 to a minute i found that  the notification is made but the popup never shows for it

i forked the repo cloned it and unpacked the extension in dev mode in chrome and to see the notification i just changed the timer value from 20 to a minute i found that  the notification is made but the popup never shows for it

Oh okay, I am checking this out.

Notifications are working perfectly.

i am facing same problem , notification is not showing when timer is over.
i added a input form to write custom message of user , then alert is working after clicking on save button ,but notification is still not showing

@mohitagrawal0412, @anvesh-singh try pulling the code, I tested it is also working for me. Contact again if the error persists.

Closed as completed via #7


3605 Removing broken storify link from docs

Since storify link is broken and twitter thread is not relevant anymore, removed both links and adjusted the description.

Fixes #3619

Thanks!

Can you fix the formatting with Prettier first?

Can you fix the formatting with Prettier first?

I just ran the prettier --list-different "{src,test}/**/*.{js,ts}" index.d.ts "**/*.md" at the root of the project, it made no changes and returned without an error. Is there another script that is used or maybe a bug in the CI build?

Mmm... no, that's the command, and it's definitely LearningResources.md that's busted.
Not sure what the issue is here.

Just run npm run format to fix it.

Thanks!


The generated results are different when using greedy search during generation

Thank you very much for your work. I got a problem when I ran BLOOM-176B on 8*A100.
I followed the README.md and executed the following command. To be specific, I set do_sample = true and top_k = 1 which I thought it was equivalent to greedy search:
python -m inference_server.cli --model_name bigscience/bloom --model_class AutoModelForCausalLM --dtype bf16 --deployment_framework hf_accelerate --generate_kwargs '{"min_length": 100, "max_new_tokens": 100, "do_sample": true, "top_k": 1}'

However, the generated outputs of several forwards were different with the same inputs. This situation happened occasionally.
Do you have any clues or ideas about this?
My env info:
CUDA 11.7
nccl 2.14.3

accelerate 0.17.1
Flask 2.2.3
Flask-API 3.0.post1
gunicorn 20.1.0
pydantic 1.10.6
huggingface-hub 0.13.2

Hi, do_sample = true and top_k = 1 should be fine but the correct way to do it is just do_sample = False.
This is weird. I don't this is a bug in the code in this repository.
But will try to give it a shot.
Can you try with just do_sample = False?

Hi @mayank31398 Sorry for the late reply.
It was ok with do_sample=False. The results were all the same.
But I still can't figure out why sampling can't work properly. Do you know who or which repo I can turn to for some help?

Refer to https://huggingface.co/blog/how-to-generate. Because sampling is designed to incorporate randomness into picking the next word.

But the k is 1. There shouldn't be any randomness exists.


[IOTDB-4027] Fix FileNotFoundException when taking snapshot

See IOTDB-4027.
This PR check and create the parent dir for log file in the initial function of SnapshotLogger.

Coverage increased (+0.0001%) to 42.287% when pulling c70123f0468058cadd71008f41011d7f85b07c3b on IOTDB-4027 into be3a931847e4107c740aef7314086792331114ad on master.


Sagemaker inference components are unsuable in pulumi

Describe what happened
Currently, you cannot use sagemaker endpoint inference components via pulumi. The TL;DR is that you need to connect your inference components to an endpoint deployed without a model attached to its production variant, and this isn't possible as modelName is a required property.
Long winded version -
Pulumi's aws-native provider enables you to create inference components, which is great. You create an inference component and you attach it to an existing endpoint. If you try to attach it to an endpoint that already has a running model, you get Invalid request provided: Inference Components are not supported in this Endpoint. Please make sure this endpoint can deploy inference components.
I did some research and found that in order to attach an inference component to an endpoint, the endpoint must have been configured without any models. This is done by not specifying a modelName when creating a productionVariant inside of a endpointConfiguration. You can do this via boto (although not the UI), as modelName is not a required property (see here). However pulumi's AWS package does specify it as required. This blocks you from being able to attach an inference component to a pulumi-created endpoint.
I'm going to see if I can resolve this myself and submit a PR, but as I've never contributed to the pulumi project before I'm not sure how successful I'll be.
Sample program
import * as pulumi from "@pulumi/pulumi"
import * as aws from "@pulumi/aws"
import * as aws2 from "@pulumi/aws-native"

const roleToAssumeARN = "arn:aws:iam::1234567890:role/deployer"

const provider = new aws.Provider("privileged", {
    assumeRole: {
        roleArn: roleToAssumeARN,
        sessionName: "PulumiSession",
        externalId: "PulumiApplication",
    },
    region: aws.config.requireRegion(),
})

const awsNativeProvider = new aws2.Provider("provider", {
    assumeRole: {
        roleArn: roleToAssumeARN,
        sessionName: "PulumiSession",
        externalId: "PulumiApplication",
    },
    region: aws.config.requireRegion(),
})

const name = "sagemaker-test"

const endpointConfig = new aws.sagemaker.EndpointConfiguration(
    `${name}-endpoint-config`,
    {
        namePrefix: `${name}-endpoint-config`,
        productionVariants: [
            {
                // modelName: "REMOVE-ME",
                initialInstanceCount: 1,
                instanceType: "ml.g5.12xlarge"
            },
        ],
    },
    { provider },
)

const endpoint = new aws.sagemaker.Endpoint(
    `${name}-endpoint`,
    {
        name: `${name}-endpoint`,
        endpointConfigName: endpointConfig.name,
    }, { provider },
)

new aws2.sagemaker.InferenceComponent(
    `${name}-inference-component`,
    {
        endpointName: endpoint.name,
        endpointArn: endpoint.arn,
        variantName:
            endpointConfig.productionVariants[0].variantName,
        inferenceComponentName: `${name}-base-component`,
        specification: {
            modelName: "model-sold-separately",
        },
    },
    { provider: awsNativeProvider },
)

Log output
Error when giving it a valid model name:
error: creating resource: creating resource (await): operation CREATE failed with "InvalidRequest": Invalid request provided: Inference Components are not supported in this Endpoint. Please make sure this endpoint can deploy inference components.
Affected Resource(s)
sagemaker endpoints w/ inference components
Output of pulumi about
CLI
Version      3.115.2
Go Version   go1.22.2
Go Compiler  gc
Plugins
KIND      NAME        VERSION
resource  archive     0.0.5
resource  aws         6.33.1
resource  aws-native  1.17.0
resource  command     0.10.0
resource  datadog     4.28.1
language  nodejs      unknown
resource  random      4.16.1
Host
OS       darwin
Version  12.5
Arch     arm64
This project is written in nodejs: executable='/opt/homebrew/bin/node' version='v22.2.0'
Backend
Token type     personal
Dependencies:
NAME                                         VERSION
eslint-config-prettier                       9.1.0
eslint-plugin-promise                        6.1.1
ts-node                                      10.9.2
typescript-json-schema                       0.65.1
typescript                                   4.9.5
@pulumi/aws-native                           1.17.0
@typescript-eslint/eslint-plugin             6.21.0
crypto-js                                    4.2.0
jszip                                        3.10.1
lint-staged                                  14.0.1
@types/mocha                                 10.0.6
@pulumi/command                              0.10.0
@types/ajv                                   1.0.0
eslint-config-standard-with-typescript       39.1.1
eslint                                       8.56.0
proxyquire                                   2.1.3
sinon                                        15.2.0
@aws-sdk/client-sts                          3.577.0
@pulumi/archive                              0.0.5
@pulumi/aws                                  6.33.1
chai                                         4.4.1
eslint-plugin-import                         2.29.1
@aws-sdk/credential-providers                3.577.0
@aws-sdk/client-sagemaker                    3.578.0
@pulumi/pulumi                               3.115.2
@pulumi/random                               4.16.1
ajv                                          8.12.0
husky                                        8.0.3
prettier                                     3.2.5
@aws-sdk/client-elastic-load-balancing-v2    3.509.0
@types/node                                  16.18.79
@types/sinon                                 10.0.20
@typescript-eslint/parser                    6.21.0
@types/chai                                  4.3.11
eslint-plugin-n                              16.6.2
js-yaml                                      4.1.0
mocha                                        10.3.0
@aws-sdk/client-route-53                     3.509.0
@aws-sdk/types                               3.502.0
@pulumi/datadog                              4.28.1
@types/crypto-js                             4.2.2
@types/js-yaml                               4.0.9
aws-sdk-client-mock                          3.0.1
aws-sdk                                      2.1623.0
yaml                                         2.3.4
@aws-sdk/client-resource-groups-tagging-api  3.509.0
Pulumi locates its logs in /var/folders/bw/69jmnfd15ds9yh1r1l9s74b00000gn/T/ by default
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Thanks for the analysis @isaac-smothers  this sounds pretty unfortunate.
The reason this property is required in Pulumi is because it is specified as a required property in terraform-provider-aws:
https://github.com/hashicorp/terraform-provider-aws/blob/c38d7c284d0684653d53452eb1f9dd3e65b905fd/internal/service/sagemaker/endpoint_configuration.go#L334
It looks like it is coming from 2022:
https://github.com/hashicorp/terraform-provider-aws/commit/f789e1ad899dafddb5c544b76bc905def4945e3b#diff-da5946c33131d2431de063014445ec281a6381f36d7a229902a6fa4aa22bef12
If model_name should not be a required property, the easiest way for the Pulumi provider to land this change is by opening an issue upstream and seeing if TF provider can make this property optional and still work as expected and pass tests. That'd be the ideal outcome. In this case the Pulumi provider will land the functionality in a regular update.

Looks like inference components were introduced in late 2023 so the timeline makes sense. I'll take a look at updating the TF provider. Say I get a fix merged upstream, how long would I be looking at waiting for pulumi to propagate that change?
Alternatively, do you know if anyone is working on implementing endpoints / endpoint configuration within the aws-native provider? Could be an opportunity to get this stuff off terraform entirely.

Next day typically after an upstream release.

within the aws-native provider? Could be an opportunity to get this stuff off terraform entirely.

That's a great question - I have not looked specifically for sagemaker endpoints but my team maintains both this provider and https://github.com/pulumi/pulumi-aws-native - typically if the resource is not available in pulumi-aws-native, the root cause is that AWS CloudControl API is not able to support it yet. The place to look is the backlog at https://github.com/aws-cloudformation/cloudformation-coverage-roadmap - and perhaps upvote or add a request there.

the root cause is that AWS CloudControl API is not able to support it yet. The place to look is the backlog at https://github.com/aws-cloudformation/cloudformation-coverage-roadmap - and perhaps upvote or add a request there.

Great to know. Looks like it isn't supported by their API yet :( Looks like I'll be going down the route of getting this fixed upstream, thanks.


push_project_to_s3 is not working with credentials stored in a prefect block

I've created a new project using the docker-s3 template. The credentials of my AWS service account are stored in a prefect block. According to the prefect project tutorial, this is the recommended setup. This is the push section in my deployment.yaml :
push:
  - prefect_aws.projects.steps.push_project_to_s3:
        requires: "prefect-aws>=0.3.1"
        bucket: "prefect-..."
        folder: somefolder
        credentials: "{{ prefect.blocks.aws-credentials.prod }}"

When initiating a deploy via prefect deploy --name ... , the step fails with
TypeError: Session.client() got an unexpected keyword argument 'profile_name'
Expectation / Proposal
Using credentials stored in a prefect blocks works. Even better, I can use a prefect s3 block directly.
Traceback / Example

[ ] I would like to help contribute a pull request to resolve this!

I am getting the same error.
When using AWS Credentials Block, credentials in the push_project_to_s3 function is set with the following values.
{'aws_access_key_id': 'xxxXXXxxx', 'aws_secret_access_key': 'xxxXXXXxxxXXXxxx', 'aws_session_token': None, 'profile_name': None, 'region_name': 'ap-northeast-2', 'aws_client_parameters': { 'api_version': None, 'use_ssl': True, 'verify': True, 'verify_cert_path': None, 'endpoint_url': None, 'config': None}}
And when I executed the code below
client = boto3.client(
"s3", **credentials, **client_parameters, config=Config(**advanced_config)
)
I get the following error because of the arguments profile_name, aws_client_parameters, which are not required by boto3.client.
TypeError: client() got an unexpected keyword argument 'profile_name'
If you temporarily remove the unnecessary fields as shown below, the deployment will be successful.
del credentials['profile_name']
del credentials['aws_client_parameters']
But when I run the flow, I get the same error in pull_project_from_s3 :)
Translated with www.DeepL.com/Translator (free version)

Also encountering this. Temporary workaround is to create Secret blocks for each of the required values and build the dictionaries manually:
Secret(value=...).save('deploy-s3-access-key', overwrite=True)
Secret(value=...).save('deploy-s3-secret-key', overwrite=True)
Secret(value=...).save('deploy-s3-endpoint', overwrite=True)

# prefect.yaml

push: # same thing for pull
- prefect_aws.projects.steps.push_project_to_s3:
    # ...
    credentials:
        aws_access_key_id: "{{ prefect.blocks.secret.deploy-s3-access-key }}"
        aws_secret_access_key: "{{ prefect.blocks.secret.deploy-s3-secret-key }}"
    client_parameters:
        endpoint_url: "{{ prefect.blocks.secret.deploy-s3-endpoint }}"

This is potentially fixed by #322


Re-add prefetch

the origin author Bob Chen @beef9999  resigned prefetch.h and prefetch.cpp with Apache License v2.

Thank you!


lower root HW MFA severity from Critical to Low

Since we use root software/virtual MFA, there is no need to keep this alarm at Critical level.

This repo is public/generic, so this change would change the severity for everyone. You will want to exclude the rule in our repo where our exclusions/overrides are set.

Thank you very much! I did not realize it. I will delete this branch and change monarch-spaces-compliance instead. I did not realize how to make monarch-spaces-compliance work. now I know after checking tf-spaces.


Update deleting-a-codespace.md

fix error link

@likev Thanks for another link fix! 🔧
I'll get this merged down once all the test have passed ✅


Automate sending message/image  on whatsapp

Hi @MrB141107,  I would like to add a python script to this repo  under hacktoberfest which prompts for contact number and automatically sends message/image on whatsapp.

@Ninja-06, you're most welcome for your contribution to this repo... add it without any hesitation...😊🌟


Experiment: remove package-lock.json

Maybe we just don't need it.

Review for security considerations

[x] The change has been examined for security impact.

PR considerations checklist:

N/A Updates CHANGELOG.md to reflect this PR's change.
[x] This Contribution is under the terms of Individual Contributor License Agreements (and also Corporate Contributor License Agreements to the extent applicable) appearing in the Apereo CLA roster.

Nevermind.  Too weird. There's a lot of expectation of package-lock.json being in source control.


Specifying Dependencies without array notation would create global variables

Y091: The suggested approach of Manually Identifying Dependencies is great, however the recommended implementation method would end up creating functions in the Global Scope. You could avoid this by using immediately invoked functions, but then this runs the risk that the dependencies to be injected are  themselves not yet instantiated.
The minsafe array syntax avoids creating a new function within the global context, hence personally would recommend it.

Check out Y010:

Wrap Angular components in an Immediately Invoked Function Expression (IIFE)

Note: For brevity only, the rest of the examples in this guide may omit the IIFE syntax.

@zachlysobey  I had mentioned about the IIFE, however I had assumed that all dependencies had to be themselves defined before we could mention them in an IIFE. However have just tested and found that assumption is not right, and angular will instantiate them in the correct sequence.
So will close this issue.