Surface stuff is slow for the P4estMesh

This came up in https://github.com/trixi-framework/Trixi.jl/pull/638#issuecomment-859370211. For example, I get
julia> trixi_include("examples/2d/elixir_advection_extended.jl")
[...]
 Section                   ncalls     time   %tot     avg     alloc   %tot      avg
 ──────────────────────────────────────────────────────────────────────────────────
 rhs!                         201   18.4ms  58.2%  91.5μs    287KiB  49.7%  1.43KiB
   volume integral            201   10.8ms  34.1%  53.6μs   37.7KiB  6.53%     192B
   interface flux             201   2.56ms  8.11%  12.7μs   37.7KiB  6.53%     192B
   surface integral           201   1.28ms  4.05%  6.36μs   37.7KiB  6.53%     192B
   prolong2interfaces         201   1.27ms  4.04%  6.34μs   40.8KiB  7.08%     208B
   ~rhs!~                     201   1.18ms  3.73%  5.86μs   82.7KiB  14.3%     421B
   reset ∂u/∂t                201    703μs  2.23%  3.50μs     0.00B  0.00%    0.00B
   Jacobian                   201    488μs  1.55%  2.43μs   50.2KiB  8.71%     256B
   prolong2boundaries         201   35.7μs  0.11%   178ns     0.00B  0.00%    0.00B
   prolong2mortars            201   31.7μs  0.10%   158ns     0.00B  0.00%    0.00B
   mortar flux                201   30.9μs  0.10%   154ns     0.00B  0.00%    0.00B
   boundary flux              201   20.3μs  0.06%   101ns     0.00B  0.00%    0.00B
   source terms               201   16.3μs  0.05%  80.9ns     0.00B  0.00%    0.00B

julia> trixi_include(joinpath(examples_dir(), "2d", "elixir_advection_extended.jl"),
          mesh=CurvedMesh((16, 16), float.(coordinates_min), float.(coordinates_max)))
[...]
 Section                   ncalls     time   %tot     avg     alloc   %tot      avg
 ──────────────────────────────────────────────────────────────────────────────────
 rhs!                         206   29.9ms  63.8%   145μs    263KiB  41.4%  1.28KiB
   volume integral            206   15.5ms  33.0%  75.2μs   38.6KiB  6.08%     192B
   interface flux             206   10.1ms  21.6%  49.2μs   67.6KiB  10.6%     336B
   surface integral           206   1.39ms  2.96%  6.75μs   38.6KiB  6.08%     192B
   Jacobian                   206   1.14ms  2.43%  5.54μs   38.6KiB  6.08%     192B
   ~rhs!~                     206   1.00ms  2.14%  4.87μs   79.8KiB  12.6%     397B
   reset ∂u/∂t                206    719μs  1.53%  3.49μs     0.00B  0.00%    0.00B
   boundary flux              206   30.7μs  0.07%   149ns     0.00B  0.00%    0.00B
   source terms               206   18.9μs  0.04%  91.8ns     0.00B  0.00%    0.00B

julia> trixi_include(joinpath(examples_dir(), "2d", "elixir_advection_extended.jl"),
          mesh=P4estMesh((1, 1), polydeg=3,
                  coordinates_min=coordinates_min, coordinates_max=coordinates_max,
                  initial_refinement_level=4))
[...]
 Section                   ncalls     time   %tot     avg     alloc   %tot      avg
 ──────────────────────────────────────────────────────────────────────────────────
 rhs!                         206   43.9ms  62.2%   213μs    297KiB  44.2%  1.44KiB
   interface flux             206   16.1ms  22.7%  77.9μs   54.7KiB  8.15%     272B
   volume integral            206   15.1ms  21.4%  73.4μs   38.6KiB  5.75%     192B
   prolong2interfaces         206   7.84ms  11.1%  38.0μs   41.8KiB  6.23%     208B
   ~rhs!~                     206   1.49ms  2.11%  7.23μs   84.5KiB  12.6%     420B
   surface integral           206   1.47ms  2.09%  7.15μs   38.6KiB  5.75%     192B
   Jacobian                   206   1.01ms  1.43%  4.91μs   38.6KiB  5.75%     192B
   reset ∂u/∂t                206    730μs  1.03%  3.54μs     0.00B  0.00%    0.00B
   prolong2boundaries         206   65.8μs  0.09%   319ns     0.00B  0.00%    0.00B
   prolong2mortars            206   58.8μs  0.08%   286ns     0.00B  0.00%    0.00B
   mortar flux                206   38.5μs  0.05%   187ns     0.00B  0.00%    0.00B
   boundary flux              206   21.3μs  0.03%   103ns     0.00B  0.00%    0.00B
   source terms               206   17.7μs  0.03%  85.9ns     0.00B  0.00%    0.00B

Another example:
julia> trixi_include(joinpath(examples_dir(), "2d", "elixir_euler_vortex.jl"))
[...]
 Section                   ncalls     time   %tot     avg     alloc   %tot      avg
 ──────────────────────────────────────────────────────────────────────────────────
 rhs!                       2.78k    839ms  90.6%   302μs    966KiB  20.4%     356B
   volume integral          2.78k    353ms  38.2%   127μs     0.00B  0.00%    0.00B
   interface flux           2.78k    343ms  37.0%   123μs     0.00B  0.00%    0.00B
   surface integral         2.78k   57.3ms  6.19%  20.6μs     0.00B  0.00%    0.00B
   prolong2interfaces       2.78k   42.7ms  4.61%  15.3μs     0.00B  0.00%    0.00B
   reset ∂u/∂t              2.78k   18.7ms  2.02%  6.72μs     0.00B  0.00%    0.00B
   Jacobian                 2.78k   12.0ms  1.30%  4.31μs     0.00B  0.00%    0.00B
   ~rhs!~                   2.78k   11.2ms  1.21%  4.03μs    966KiB  20.4%     356B
   prolong2boundaries       2.78k    461μs  0.05%   166ns     0.00B  0.00%    0.00B
   prolong2mortars          2.78k    314μs  0.03%   113ns     0.00B  0.00%    0.00B
   mortar flux              2.78k    245μs  0.03%  88.2ns     0.00B  0.00%    0.00B
   boundary flux            2.78k    138μs  0.01%  49.7ns     0.00B  0.00%    0.00B
   source terms             2.78k    138μs  0.01%  49.5ns     0.00B  0.00%    0.00B

julia> trixi_include(joinpath(examples_dir(), "2d", "elixir_euler_vortex.jl"),
          mesh=CurvedMesh((16, 16), float.(coordinates_min), float.(coordinates_max)))
[...]
 Section                   ncalls     time   %tot     avg     alloc   %tot      avg
 ──────────────────────────────────────────────────────────────────────────────────
 rhs!                       2.78k    920ms  89.5%   331μs    962KiB  19.0%     354B
   volume integral          2.78k    435ms  42.3%   156μs     0.00B  0.00%    0.00B
   interface flux           2.78k    385ms  37.5%   139μs     0.00B  0.00%    0.00B
   surface integral         2.78k   57.4ms  5.59%  20.7μs     0.00B  0.00%    0.00B
   reset ∂u/∂t              2.78k   17.3ms  1.68%  6.20μs     0.00B  0.00%    0.00B
   Jacobian                 2.78k   16.7ms  1.62%  6.00μs     0.00B  0.00%    0.00B
   ~rhs!~                   2.78k   7.62ms  0.74%  2.74μs    962KiB  19.0%     354B
   boundary flux            2.78k    191μs  0.02%  68.8ns     0.00B  0.00%    0.00B
   source terms             2.78k    118μs  0.01%  42.5ns     0.00B  0.00%    0.00B

julia> trixi_include(joinpath(examples_dir(), "2d", "elixir_euler_vortex.jl"),
          mesh=P4estMesh((1, 1), polydeg=3,
                  coordinates_min=coordinates_min, coordinates_max=coordinates_max,
                  initial_refinement_level=4))
[...]
 Section                   ncalls     time   %tot     avg     alloc   %tot      avg
 ──────────────────────────────────────────────────────────────────────────────────
 rhs!                       2.78k    1.86s  94.2%   667μs    966KiB  19.0%     356B
   interface flux           2.78k    699ms  35.5%   251μs     0.00B  0.00%    0.00B
   prolong2interfaces       2.78k    627ms  31.8%   225μs     0.00B  0.00%    0.00B
   volume integral          2.78k    426ms  21.6%   153μs     0.00B  0.00%    0.00B
   surface integral         2.78k   57.1ms  2.90%  20.5μs     0.00B  0.00%    0.00B
   Jacobian                 2.78k   18.0ms  0.91%  6.48μs     0.00B  0.00%    0.00B
   reset ∂u/∂t              2.78k   17.1ms  0.87%  6.15μs     0.00B  0.00%    0.00B
   ~rhs!~                   2.78k   11.6ms  0.59%  4.18μs    966KiB  19.0%     356B
   prolong2boundaries       2.78k    321μs  0.02%   115ns     0.00B  0.00%    0.00B
   prolong2mortars          2.78k    312μs  0.02%   112ns     0.00B  0.00%    0.00B
   mortar flux              2.78k    220μs  0.01%  79.2ns     0.00B  0.00%    0.00B
   source terms             2.78k    142μs  0.01%  51.0ns     0.00B  0.00%    0.00B
   boundary flux            2.78k    130μs  0.01%  46.8ns     0.00B  0.00%    0.00B

(running the code twice to exclude compilation times). It's okay that the volume integral is a bit slower since it needs to handle curvilinear stuff. However, everything related to the surfaces is also much slower. We should investigate this and try to fix it (if reasonably possible).
Related to #628 (but more general).

Have you compared the numbers to the same setup with the CurvedMesh or UnstructuredQuadMesh to find out whether it is maybe systemic to the curved solvers?

I added the structured mesh above. I don't have a mesh file to check the unstructured mesh right now

Now we have 16.1 ms vs. 10.1 ms vs. 2.6 ms for the interface flux for P4estMesh vs. CurvedMesh vs. TreeMesh. Considering that P4est+Curved vs. Tree need to take into account normal vectors, and P4est vs. Curved needs to take into account flipped-ness/different element-local coordinate systems, the differences seem to be at least explainable. Although I don't know why and if they have to be so large.

I added another example for the Euler equations. That's less dramatic but we should still have a look at it, I think. However, it doesn't have top priority, of course.

Please don't get me wrong: Thanks a lot for reporting this, and I do think we should investigate! With my comment above I was not trying to dismiss this issue, but rather add to the discussion about potential reasons.

Appreciated :+1: Maybe it's just related to  the possibility of unstructured interfaces and we need to find a better way to improve the performance of that part.

A first profiling of the Euler stuff shows that a lot of time is spent in evaluate_index. Calling it in an inner loop such as https://github.com/trixi-framework/Trixi.jl/blob/45391a2a3f66f7f538adf35f0253bd5c2edc73ab/src/solvers/dg_p4est/dg_2d.jl#L32-L40
again and again is very inefficient. Instead, the correct loop indices should be determined once before these inner loops run.

Calling it in an inner loop such as ... gain and again is very inefficient

Yes, this seems like a likely candidate for optimization. However, IMHO we should not touch this until we have support for 3D unstructured in Trixi, on which @efaulhaber is currently working. Once that's finished, we can optimize it directly on the 3D code and then just du the same for 2d to make it easy to transition between those two.

I was thinking if there's a way to implement something similar to Colon (or :, which is a synonym) to create a view that can just be indexed by i and j.
It's possible to create a view like this:
julia> A = [1 2; 3 4]
2×2 Matrix{Int64}:
 1  2
 3  4

julia> view(A, 2:-1:1, :)
2×2 view(::Matrix{Int64}, 2:-1:1, :) with eltype Int64:
 3  4
 1  2

I haven't tested yet if this would be any more efficient, but it could be worth a try.

Btw, where do all these allocations come from? I get this when running your first example:
julia> trixi_include(joinpath(examples_dir(), "2d", "elixir_advection_extended.jl"),
                 mesh=P4estMesh((1, 1), polydeg=3,
                         coordinates_min=coordinates_min, coordinates_max=coordinates_max,
                         initial_refinement_level=4))
[...]
 rhs!                         206   17.9ms  67.1%  86.7μs   84.5KiB  18.2%     420B
   volume integral            206   6.81ms  25.6%  33.1μs     0.00B  0.00%    0.00B
   interface flux             206   6.24ms  23.5%  30.3μs     0.00B  0.00%    0.00B
   prolong2interfaces         206   2.99ms  11.2%  14.5μs     0.00B  0.00%    0.00B
   surface integral           206    918μs  3.45%  4.46μs     0.00B  0.00%    0.00B
   Jacobian                   206    500μs  1.88%  2.43μs     0.00B  0.00%    0.00B
   ~rhs!~                     206    281μs  1.06%  1.37μs   84.5KiB  18.2%     420B
   reset ∂u/∂t                206   74.2μs  0.28%   360ns     0.00B  0.00%    0.00B
   mortar flux                206   9.10μs  0.03%  44.2ns     0.00B  0.00%    0.00B
   prolong2mortars            206   9.00μs  0.03%  43.7ns     0.00B  0.00%    0.00B
   prolong2boundaries         206   8.40μs  0.03%  40.8ns     0.00B  0.00%    0.00B
   boundary flux              206   6.70μs  0.03%  32.5ns     0.00B  0.00%    0.00B
   source terms               206   5.90μs  0.02%  28.6ns     0.00B  0.00%    0.00B

Btw, where do all these allocations come from?

Looks like I was running it on a computer with JULIA_NUM_THREADS set to something bigger than one - fixed above.

However, IMHO we should not touch this until we have support for 3D unstructured in Trixi

Sure. As I said above, I opened this issue to record this observation @efaulhaber made in the PR linked above and to prepare some information that can be used to improve the solver based on the P4estMesh. As always, we should follow our usual steps of

Make it work
Make it fast


update yup to 0.32.11

Description
Update npm yup package to 0.32.11 to align with yup in<EMAIL_ADDRESS>Checklist
Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:

[x] I'm aware of the code of conduct.
[x] I've created logical separate commits and followed the commit message format.
[x] I've added relevant test cases.
[x] I've added relevant documentation.
[x] I've marked translation strings (for relevant code).
[x] I've followed the CSS/JS and React guidelines (for relevant code).
[x] I've followed the web accessibility guidelines (for relevant code).
[x] I've followed the user interface guidelines (for relevant code).
[x] I've identified the copyright holder(s) and updated copyright headers for touched files (>15 lines contributions).
[x] I've NOT included third-party code (copy/pasted source code or new dependencies).

Third-party code
If you've added third-party code (copy/pasted or new dependencies), please reach out to an architect.
Reminder
By using GitHub, you have already agreed to the GitHub’s Terms of Service including that:

You license your contribution under the same terms as the current repository’s license.
You agree that you have the right to license your contribution under the current repository’s license.

Closing in favor of #167

Reopened pull-request, as additional work needs to be done not found in #167.

waiting for https://github.com/inveniosoftware/eslint-config-invenio/pull/12 to be merged to help with additional dependency conflicts.

Closing again in favor of #167.


D ^%GD has bad results

I've tried to write down all global names in namespace by system utility ^%GD and I've got a mismatch on webterminal screen. Try it yourself

DO ^%GD
and all defaults up to end.

Martin

Definitely see this issue. Thanks for reporting. This will take a while to investigate a problem.

Okay, I have pushed some changes to v4.0.0-beta.12 which will vanish the formatting issues. But there is still one issue (#77) with the device detection, which causes WebTerminal to clear the screen at the end. I hope this will become resolved in a close future, but for now at least you can see the ^%GS's output by scrolling the screen up after the execution.
Thanks for reporting! The bug with clearing screen at the end of ^%GD's execution now goes to "the issue of fortune" #77.

Okay, I have pushed some changes to v4.0.0-beta.12 which will vanish the formatting issues. But there is still one issue (#77) with the device detection, which causes WebTerminal to clear the screen at the end. I hope this will become resolved in a close future, but for now at least you can see the ^%GS's output by scrolling the screen up after the execution.
Thanks for reporting! The bug with clearing screen at the end of ^%GD's execution now goes to "the issue of fortune" #77.


Improve handling of MU plugins

WPStarter loads MU plugins in sub directories via the WCM\WPStarter\MuLoader\MuLoader that acts on the action muplugins_loaded. This leads to a problem when a mu plugin registers itself an action listener to muplugins_loaded. So instead of handling MU plugins on runtime, what about dealing with them on build-time?
WPStarter could add an additional step that crawls the MU plugin main files and places a file for each directly to the MU plugins directory. This file just contains the plugin header and includes the original mu-plugin file in its sub directory.
Here's an example:
The WPStarter project requires the package acme/acme-mu-plugin which is of type wordpress-muplugin. Composer installer moves the package to wp-content/mu-plugins/acme-mu-plugin/. Now WPStarter creates a wp-content/mu-plugins/acme-mu-plugin.php with the following content:
<?php

/**
 * Plugin Header parsed from acme-mu-plugin/acme-mu-plugin.php
 */

require_once "/absolute/path/to/wp-content/mu-plugins/acme-mu-plugin/acme-mu-plugin.php";

WP Starter MU plugins handling is definetively something that needs improvements.
For version 3, I experimented a different approach (available in version-3 branch), but I'm not happy with it.
I like very much the idea of dealing with MU plugins at build time.
What I don't like is to have a "loader" for each installed plugin.
Since Composer was not even a thing a quite common practice that worked well was to have a single "loader" MU plugin that loaded all MU plugins in folders.
Usually such MU plugin used glob or the like to load MU plugins from subfolders of MU plugin folder, but WP Starter could benefit of build routine to have a static array to read file names from.
Something like:
/*
 * Plugin Name: WP Starter MU plugin loader
 */

// Array of plugin files to load created by WP Starter at build time
$mu_plugin_files = array( ... );

array_walk($mu_plugin_files, function($file) {
   wp_register_plugin_realpath($file);
   include_once $file;
});

Being a static array the loading would be fast and we would also benefit of opcache for even better performance.
Creating this MU pugin at build time from a template would be trivial, the trickiest part would be how to build the $mu_plugin_files array.
Just relying on the Composer type (that's what currently WP Starter does) has proven to be suboptimal and that was the reason I tried a different approach for version 3.
Since WP only allows single files as MU plugins, many developers, even ones inclined to use Composer in their plugins, just give up using folder (and include a composer.json in there) for MU plugins, because of the addditional overhead to load them from folders.
The approach I took for what's in version-3 branch is:
1. if a composer.json is there, go to step 1a, otherwise go to step 2.
1a. If the type in  composer.json is wordpress-muplugin go to step 1b.;  If the type in  composer.json is wordpress-plugin go to step 1c., otherwise skip the folder.
1a. check for PHP files in the folder. If there's only one PHP file, assume it is the MU plugin file and queue it to be loaded. If there are more files, look for the file who has plugin file header (that's not mandatory for MU plugins) and if found queue it to be loaded. If both 2 previous attempt failed skip the folder.
1b. Being a regular plugin, plugin file header is mandatory, so look for the file who has plugin file header. If found, queue it to be loaded, otherwise skip the folder.
2. Scan the folder for a file who has plugin file header. If found, queue it to be loaded, otherwise skip the folder.
Using above workflow to build the $mu_plugin_files would allow to load from subfolder of MU plugin folder:

MU plugins that natively support Composer
MU plugins that does not natively support Composer
Regular plugins that natively support Composer
Regular plugins that does not natively support Composer

Since the (slow) directory scanning happen at build time, we don't affect website performace.
Supporting to load regular plugin as MU plugins allow for some intersting use cases, but also has some gotchas.
In fact, many plugins rely on "activated hook" to do stuff necessary for them to work. We could manage to trigger those hooks comparing the array of plugin being loaded with the activated plugins array in database, but that would not be 100% reliable.
The other alternatives would be:

support regular plugin as MU plugin clearly stating in documentation that plugins that rely on activation/deactivation hook will not work
give up supporting support regular plugin as MU plugin

Just relying on the Composer type (that's what currently WP Starter does) has proven to be suboptimal and that was the reason I tried a different approach for version 3.

What was the issue there again?
Actually it's not part of WPStarter to deal with different types. The Composer installers is responsible for that. IMO WPStarter «just» has to take care about subdirectories of the mu-plugins folder.

if a composer.json is there, go to step 1a, otherwise go to step 2.
How could there be a sub-directory in the mu-plugins folder that does not contain a composer.json? The only case I know is that someone created a «virtual» package within its project composer.json file but this is some edge case which I would ignore until someone needs a solution here.

Also I'm not sure whether it's a good idea to support regular plugins to be used as MU plugins. I never faced a situation where this would have been necessary. Just for the sake of simplicity I would leave this out for the moment.

Also I'm not sure whether it's a good idea to support regular plugins to be used as MU plugins. I never faced a situation where this would have been necessary.

Possible use case: You need to have a DO NOT TURN THIS OFF. EVER! plugin and a multisite installation where site administrators would be able to turn off a plugin.

When you are in this case, why don't you define your plugin as a mu-plugin?

Your might be more than one file (matching the 1c case from @Giuseppe-Mazzapica ).

What was the issue there again?
Actually it's not part of WPStarter to deal with different types. The Composer installers is responsible for that. IMO WPStarter «just» has to take care about subdirectories of the mu-plugins folder.

Actually there are 2 issues.
First of all, Composer installers is configurable via extra.installer-paths directive and the Composer type is used just to get the default path.
If WP Starter only rely on Composer "type" directive, it will not be able to recognize a package that is set to be installed in MU plugin folder via extra.installer-paths directive if it has a different "type" or no type at all.
Considering that in WordPress everything that is placed in MU plugins folder is considered a plugin (even the plugin header is optional) it makes sense to me that everything that is installed via Composer in a subfolder of the MU plugin folder is loaded as MU plugin. That includes, but is not restricted to, packages with "wordpress-muplugin" as type.
For me what the WP Starter should do is:

just let Composer install packages according to theirt types and extra.installer-paths directive
check if there's anything that Composer installed in subfolder of MU plugin folder that is eligible to be considered a MU plugin
write a "loader" that loads everything discovered at point 2.

Regarding what is "eligible" to be a considered a MU plugin, I would use the workflow in my previous comment, summarized:

if there's only one PHP file, consider it a the MU plugin
if there's something that contains a plugin header (no matter the Composer type) consider it the MU plugin
if nothing above appllies, loads nothing

The second issue is that, sadly, out there there are a lot of plugins that does not support Composer at all, i.e. don't have a composer.json.
For MU plugins it is even more true, because WordPress allows only single files as MU plugins, but having a composer.json makes sense only if the package is placed in a separate folder.
The workflow suggested above in this comment and in the previous comment, will work for those MU plugins without support for Composer. They will need a combination of a custom Composer repositories entry + extra.installer-paths directive, but IMO that is still better to maintain a fork just to add Composer support.

Also I'm not sure whether it's a good idea to support regular plugins to be used as MU plugins. I never faced a situation where this would have been necessary.

I was in that situation, more than once actually. Last time was when I wanted to install https://github.com/bueltge/Remove-Comments-Absolutely.
The plugin is a regular plugin (containing more than one file that was a forced choice). However, that is something that regards the configuration of the whole network, and I did not wanted the client (who has admin access) to mess up with it.
This was just the last time it happened, but many times I felt the need to use regular plugins as MU plugin. Expecially when network installation is used to build multi-language site, IMO it makes a lot of sense to force anything about site configuration at network level.
Considering that the official WP repo contains only regular plugin, there are a lot of things that I would use as MU plugins, just to name very few:

https://it.wordpress.org/plugins/disable-emojis/
https://wordpress.org/plugins/disable-json-api/
https://github.com/roots/wp-password-bcrypt

Being in this situation, why don't you define your plugin as a mu-plugin?

When I write the code to solve the situation @franz-josef-kaiser pointed out, and the solution is site-specific I put the code in the "website" repository (that is the repo that requires WP Starter). In this way I don't need to require it in any way. If the code is reusable, across websites I wrote a Composer package, not a plugin nor a MU plugin, but something that just goes in vendor folder and that is available when autoloader is loaded.
So the issues stands for plugins that already exists, very often third party, which I don't control so I can't change from regular plugin to MU plugin.

Just for the sake of simplicity I would leave this out for the moment.

I agree that support regular plugin as MU plugin has some issues, expecially the avoidation of activation/deactivation hooks.
However, supporting regular plugin as MU plugin but doing nothing in the regard of support of activation/deactivation hooks, (just clearly stating in documentation that plugins that rely on activation/deactivation hook will not work) we would not actually add any complexity, in fact the necesasary code in WP Starter will be exactly the same, regardless support of regular plugin.
I think that if a developer is able to use Composer with custom installer paths to install a regular plugin as MU plugin, will be probably able to understand when a plugin relies on activation / deactivation hooks.

This issue is probably not going to happen for v2 series.
And it is addressed in version 3.
I honestly changed my mid, and turned to agree with @dnaber-de
Current v3 implementation only targets only packages with MU plugin type ignoring regular plugin. I've seen library doing this (one by @felixarntz) people can use those if they want.
I am doing a bit of cleanup of issues to move forward with shipping of version 3 so I am going to close this because it will not happen for v2 and done for v3.


multiple selections

Allowing complex selections and a single action button would be very versatile. This is a duplicate of https://github.com/wonderbit/sketch-select-similar-layers/issues/4, but I got no reply from that author.

THANNKSSSSS


gom: 0.3.3 → 0.4

Motivation for this change
Update gom & fix folks & add docs for folks.
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Just noticed gom is also being updated in 3.35 branch but it should be fine to merge this to unstable now. All gom reverse dependencies build.

Yeah, much better to merge this here. I've tried to keep regular updates out, but something needed gom-4.


NPE in ModuleVersionResolveException::getMessage when version of ComponentIdentifier is an empty string

Current Behavior
Gradle throws NPE in the reproducer below:
java.lang.NullPointerException: Cannot invoke "java.util.List.get(int)" because "path" is null
        at org.gradle.internal.resolve.ModuleVersionResolveException.getMessage(ModuleVersionResolveException.java:124)

Expected Behavior
Either error when creating Dependency via Notation string in useTarget() method call. Or NPE free call to get message of ModuleVersionResolveException.
Context (optional)
It is also a bit questionable why gradle doesn't merge dependencyConstraints with dependencies but simply iterate them as a list.
This can be observed when I put breakpoint inside dependencySubstitution all block.
As I would expected to see something like this:
classpath.resolutionStrategy.dependencySubstitution {
    all {
        val requested = this.requested
        if (requested !is ModuleComponentSelector) return@all
        requested.versionConstraint // should be set with constraint, defined in `dependenciesConstraint` block from gradle module file.

Self-contained Reproducer Project
plugins {
    `java-library`
}

repositories {
    mavenCentral()
}

dependencies {
    implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.2")
}

val classpath = configurations.getByName("compileClasspath")
classpath.resolutionStrategy.dependencySubstitution {
    all {
        val requested = this.requested
        if (requested !is ModuleComponentSelector) return@all
        if (requested.group == "org.jetbrains.kotlin" && requested.module == "kotlin-stdlib-common") {
            useTarget("org.jetbrains.kotlin:kotlin-stdlib:${requested.version}")
        }
    }
}
val av = classpath.incoming.artifactView {
    isLenient = true
}

av.artifacts.failures.forEach {
    println(it.message)
}

Note that kotlinx-serialization-json 1.7.2 is published with dependency on kotlin-stdlib-common without version but Dependency Constraint
"dependencies": [
        {
          "group": "org.jetbrains.kotlin",
          "module": "kotlin-stdlib-common"
        },
"dependencyConstraints": [
        {
          "group": "org.jetbrains.kotlin",
          "module": "kotlin-stdlib-common",
          "version": {
            "requires": "2.0.20"
          }
        }

Gradle version
8.10.1
Build scan URL (optional)
No response
Your Environment (optional)
No response

The issue is in the backlog of the relevant team and is prioritized by them.

No NPE should be thrown instead. But indeed, if the dependency declaration has no version, then at substitution time (which happens before resolution) there is no version to use.
The constraint will be used later for version resolution.


fix(runtime-core):provide added with mixin should not overrides local injections

fix #2306

It's fixed via f06518a8c9201b4fa2a956595aa9d89a192fcd20
so I close this PR.


Mark visually which films are already downloaded

It's similar to issue 144 but instead of having a dedicated list of downloaded videos (which would be nice as well though) I would propose just to have a mark or highlight on already downloaded videos / records.

This would require to save ids of downloaded shows into a database and would most likely result in a performance hit when loading the show list. Furthermore a very clear UI is required for this feature to work (e.g. mark which quality has been downloaded, check if downloaded file is still present, etc.).
I'll keep this issue, but don't expect it to be resolved any time soon.

and would most likely result in a performance hit when loading the show list

Can you elaborate this? The way I imagine this, is that the list of downloaded videos could be queried separately and querying the list shouldn't be slow, right? Also I guess that there should be an internal ID of every entry shown so there should'n be much more logic than 'is this id in the list of known, downloaded videos that we just queried'.

Furthermore a very clear UI is required for this feature to work (e.g. mark which quality has been downloaded, check if downloaded file is still present, etc.).

I agree with that. The use case (at least for me) would be to see whether I downloaded/saw something already. So I wouldn't care about the quality or presence. A checkmark (or a badge with a text 'downloaded') besides the title would do (for me).
Marking a video manually as downloaded/seen would also work for me but I guess it's easier for everyone if this would happen automatically.

I'll keep this issue

Thank you :+1:

The way I imagine this, is that the list of downloaded videos could be queried separately and querying the list shouldn't be slow, right (I agree that you might need a database for that though)?
Also I guess that there should be an internal ID of every entry shown so there should'n be much more logic than 'is this id in the list of known, downloaded videos that we just queried'.
I would have to query the downloads database for every entry inside the (visible) mediathek show list, which may change rapidly during scrolling or filtering.

On the other hand, viewing progress could be saved inside the same table or database. So this change would fix two issues.
I am a bit reluctant to introduce a database infrastructure into zapp before switching to v2 of the mediathekview api. Most likely the shows ids and some of the metadata structure will change with the switch.

Quick update: I have to introduce a database to fix #117 so this feature (or something similar) will come :-)

I just released a beta version to test this feature on a wide variety of devices. To install you have to uninstall any Zapp version from F-Droid first. Please let me know if you experience any issues!

It is working great! I like the preview image. This is a wonderful release. :heart:


[Feature][JsonSplit-api] replace projectName with projectCode for taskDefinition

#5498

Codecov Report

:exclamation: No coverage uploaded for pull request base (json_split_two@f66a166). Click here to learn what that means.
The diff coverage is n/a.

@@                Coverage Diff                @@
##             json_split_two    #5815   +/-   ##
=================================================
  Coverage                  ?   45.08%
  Complexity                ?     3680
=================================================
  Files                     ?      609
  Lines                     ?    24840
  Branches                  ?     2827
=================================================
  Hits                      ?    11199
  Misses                    ?    12564
  Partials                  ?     1077

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 f66a166...ccd861c. Read the comment docs.

There was no change. I think we can ignore it


Module resolver

Implemented a resolver that resolves thrift modules into their destination namespaces. Applied it to serializer.
Now nested structs work even across modules and namespaces.
@jparise @pguillory

Coverage increased (+3.8%) to 94.718% when pulling a008ebbbf8c526bfba3125729dabcb5ebd0c844e on scohen:module_resolver into e0057ad4bf0653a8e515ceaae7920c63ab40f94b on pinterest:pure_elixir_implementation.

Coverage increased (+3.8%) to 94.718% when pulling 432e5558bc0ea1b408b572f96845cc058fa1c1d6 on scohen:module_resolver into e0057ad4bf0653a8e515ceaae7920c63ab40f94b on pinterest:pure_elixir_implementation.

Coverage increased (+3.8%) to 94.7% when pulling 79cd08bf924a3522c15f4e1d633b5315435e5d2e on scohen:module_resolver into e0057ad4bf0653a8e515ceaae7920c63ab40f94b on pinterest:pure_elixir_implementation.

Coverage increased (+3.8%) to 94.7% when pulling edbeb412fe46fd7efc05ce2abf5b86fd70d3521a on scohen:module_resolver into e0057ad4bf0653a8e515ceaae7920c63ab40f94b on pinterest:pure_elixir_implementation.


Support for oAuth2Password authentication to OnPremise systems via Cloud Connector

Hi,
We have a use case involving an on-premise system which does authentication with oAuth2Password flow. This is introduced for external services in issue #1399 but trying this with an on-premise destination results in a "not supported"-error being thrown.
There is a forum post here with more details:
https://answers.sap.com/questions/13556967/oauth2password-authentication-in-connectivity-serv.html
We have established a workaround like this:

Create two destinations, one with NoAuthentication and one with oAuth2Password authentication
Get the oAuth2Password destination so that the code can access client secret, client id, username and password
Call the authentication endpoint using the above credentials over the "NoAuthentication" destination
Build a "Bearer ..." authentication header and call the API using the "executeHttpRequest" method over the NoAuthentication-destination.

This results in a lot of code in the application which we are hoping could be in the framework instead (handling the token provisioning, renewal tokens etc.).
Thanks in advance and for your work on this product!
Regards
//Carl

Ok!
Our timeline is Q2 this year with a productive golive.
Thanks!
//Carl

Hi @carlonnheim ,
This documentation says, on-prem system with auth type OAuth2Password is not supported.
Would you like to switch to e.g., basic auth?
Best regards,
Junjie

Hi,
Yes, a feature request and not a bug. The target system only supports oauth so I do not have a choice.
We will keep using the workaround and hoping you will consider it for your backlog.
I would also be happy to contribute a PR implementing it if you can give a high level approach and do security validation on it?
Thanks!
//Carl

Hi @carlonnheim,
In general, to make a real request to a target system you need:

[SDK] Get a destination (containing all the configuration shown in the previous link) by name provided by you.
[SDK] Retrieve a token by sending the destination configuration to the destination service on the BTP.
[Destination service] Verify the credentials info and return a valid token or error.
[SDK] Use the token from the destination service and add it to the header of the real request.

As the step 3 is handled by the destination service on the BTP. This feature request needs to be done on the BTP side.
Please consider creating an incident for SAP BTP by checking this.
On the other side, your finding makes sense and this bug is also related to cloud destination.
We will work on it.
If your workaround works, after fixing it, you can also try it with your on-prem destination.
We will let you know, once the bug is fixed.
Best regards,
Junjie

Hi @carlonnheim ,
I fixed the missing token from SDK perspective and you can test the canary version.
Please let me know whether it works for you.
Best regards,
Junjie

Since this was fixed in v1.54.0 I'll go ahead and close this issue.


No such module PlainPing

Hello,
I have downloaded your Example project and executed "pod install" in the example folder:

Analyzing dependencies
Fetching podspec for PlainPing from ../
Downloading dependencies
Using PlainPing (0.2)
Generating Pods project
Integrating client project
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 1 total
pod installed.

Afterwards I opened the example project but I'm not able to compile it. Would be really great if you could help me to find the error. Thanks a lot.

Regards,
Johannes

Hello again,
sorry for disturbing. But something went wrong the first time. Did now again clone the repo and "pod install". Now it works. Thanks.
Regards,
Johannes

It is still not working for me. still alert me "No such module PlainPing"


Mark

It seems like the deployment failed almost by the end due to ESlint:

@markwitt1 the deployment failed again but it seems like we're almost there!

The deployment worked @markwitt1!! Tomorrow (Monday) I'll test and share my feedback!

Hi @markwitt1, thank you for the valuable contributions! Since some changes break the usability or are not part of the core of the product, I started cherry-picking commits so your work can be officially recognised and visible to everyone!


fix(SidePanel): should fix focus trap which is breaking the side panel

Contributes to #434
This will hopefully fix the side panel focus trap bug that @AlexanderMelox found. Thanks @joshblack for the help 🙏
What did you change?
Line 63-66 from wrapFocus is trying to convert an array like node list to an array using Array.slice.call, but it should have been Array.prototype.slice.call, which can also be achieved by using the static method Array.from.
How did you test and verify your work?
Everything still functions as expected in the storybook for the side panel, however this bug has only been able to be reproduced when using the packaged version of the component.

Thanks @dcwarwick for the feedback. I added back the last argument for the floating menus and added the tests for this utility from carbon and made sure that everything passes (jest /utils/). I definitely agree we should have had these tests for this helper 😅


The preprocessor is very allocation heavy

The slowest part of the compiler by far is currently the preprocessor. This is due to the large amount of allocations it creates as it processes the code and stores all the tokens in a List<Token>.

The allocations are done by a lot more than just the preprocessor.


UnloadCopyUtility: NULL strings are converted to empty strings

Problem:
When migrating tables with UnloadCopyUtility all NULL strings are converted to empty strings ''.
Comment:
Root cause seems to be default behaviour of UNLOAD. One option to circumvent this problem might be setting null as '\\\N' for UNLOAD job in
https://github.com/awslabs/amazon-redshift-utils/blob/master/src/UnloadCopyUtility/util/resources.py#L273

Current code has the NULL defaulted a string value for both the UNLOAD and COPY
null as 'NULL_STRING__'
If there is a specific need to change this, then update as required for your circumstances.


This document needs to be updated for .NET Core SDK 2.1

I think this document needs to be updated for .NET Core SDK 2.1 which was released yesterday (2018.05.30)

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

ID: 9eb8b774-c6f0-8235-6964-15219baf2ea7
Version Independent ID: 6819a4a7-7527-d8c7-e132-767f7344e00e
Content: .NET Standard
Content Source: docs/standard/net-standard.md
Service: unspecified
Product: dotnet
GitHub Login: @mairaw
Microsoft Alias: mairaw

Hi @mltf, I think this document is still accurate even with the release of .NET Core 2.1 yesterday. There is no new version of .NET Standard. So I'll be closing this issue, but please let me know if I missed anything or if you have other questions.

The versioning is a bit confusing.
Are you saying there is no .NET Standard 2.1?
I was also reading up on it on https://github.com/dotnet/standard/issues/682 please let me know.
Thanks for the quick response.

Yep, no new version of .NET Standard was released yet. The latest is still .NET Standard 2.0. I think that issue you linked to is a great place to ask questions regarding this since the devs and PMs working on the product monitor that repo.


image with alpha channel is broken

I used such image - 4 rectangles filled with almost the same color but different alpha value

After it drawed on the screen it looks strange - with lines, although rectangles at the source image has solid filled alpha-channel

If you use lvgl v8 can you try lvgl master? The PNG lib was merged there:
https://docs.lvgl.io/master/libs/png.html

If you use lvgl v8 can you try lvgl master? The PNG lib was merged there:
https://docs.lvgl.io/master/libs/png.html

I use lvgl v7.6.1

One more moment. For example, I use png from this issue.
This picture have white car on a black background with blur under the car body

Alpha channel

If we bring the channels together, then the image on a white background should give a car with a shadow under it. Something like this

But on the screen I see car and dark shaddow where alpha value has

I use lvgl-settings given in this discussion. Could the LV_COLOR_DEPTH=16 have any effect on this?

I suggest taking a look at this function: https://github.com/lvgl/lv_lib_png/blob/master/lv_png.c#L214
Maybe the color channels are mixed here :slightly_frowning_face:

I suggest taking a look at this function: https://github.com/lvgl/lv_lib_png/blob/master/lv_png.c#L214 Maybe the color channels are mixed here 🙁
I tried with such pic - 64x64 px, 4 rectangles - with color 0x00FF00, but different alpha value - 0xFF, 0xBF, 0x80, 0x40

I see following images on the screen

Img_data data-dump variable data-dump before call
convert_color_depth(img_data,  png_width * png_height);
img_data_before_convert.txt
and after
img_data_after_convert.txt
It seems like colors converted correctly. But drawed image contains stripes. So it seems lvgl-image-draw worked incorrectly with img_data received from decoder.

Hmm, I'd be very surprised if LVGL had a bug in simply displaying and image.
Can you reproduce in a simulator? If so please send me the commit hash of LVGL your are using and a short codsnippet to be sure we are doing the very same thing.

I tried to debug how img_draw worked with my image.
lv_draw_map() called from lv_img_draw_core() partially blended img data with background. In my case with image is 64x64, blended area calculated as 11px height and 64px width. After that called _lv_blend_map() where
there is lines
    {
        int32_t mask_w = lv_area_get_width(&draw_area);
        int32_t i;
        for(i = 0; i < mask_w; i++)  mask[i] = mask[i] > 128 ? LV_OPA_COVER : LV_OPA_TRANSP;
    }

which resets first line of mask buffer to 0 (as if this line should be completely transparent). So after blending I see first line transparent (background color),  next 10 lines normal (as it should be in image).
The same happens for the next part of the image.

Hmm, I'd be very surprised if LVGL had a bug in simply displaying and image.
Can you reproduce in a simulator? If so please send me the commit hash of LVGL your are using and a short codsnippet to be sure we are doing the very same thing.

I tried to debug how img_draw worked with my image.
lv_draw_map() called from lv_img_draw_core() blended img data with background piece by piece. In my case with image is 64x64, blended area calculated as 11px height and 64px width. After that called _lv_blend_map() where
there is lines
    {
        int32_t mask_w = lv_area_get_width(&draw_area);
        int32_t i;
        for(i = 0; i < mask_w; i++)  mask[i] = mask[i] > 128 ? LV_OPA_COVER : LV_OPA_TRANSP;
    }

which resets first line of mask buffer to 0/255 (as if this line should be completely transparent for the top half of the image where alpha channel < 128, or  opaque for bottom half where alpha > 128). So after blending (in my case with map_normal() ) I see first line transparent/opaque (background/map color - clearly visible on a red background),  next 10 lines normal (as it should be in image).
The same happens for the next part of the image.
So in case of big picture (like in this post) image will be blended line by line and alpha channel values will be LV_OPA_COVER or LV_OPA_TRANSP.

Wow, it's really a bug if antialiasing is disabled. I've merged https://github.com/lvgl/lvgl/pull/2803 where I fixed it in this commit.
But not that with antialiasing enabled you can't draw ARGB images because the alpha channel will be rounded to 0 or 255.

Wow, it's really a bug if antialiasing is disabled. I've merged lvgl/lvgl#2803 where I fixed it in this commit.

Now, in latest commit, if antialiazing is disabled alpha channel would rounded for full blended area, and as a result for whole drawn image. And if png-image have alpha-channel those values will be ignored, isn't it ?

Not ignored but there won't be semi-transparent pixels. Only 0% or 100% alpha.
Note that even with antialising=0 ARGB images could be drawn correctly as they have nothing to do with antialiasing. But antialiasing is handled here because all drawing ends up in the to blend function and it's convenient to handle it here.
Just out of curiosity, why do you need antialaising=0?

Just out of curiosity, why do you need antialaising=0?

This option disabled by default in zephyr-config. But I didn't think it could be such important. I thought that anti-aliasing should help remove the distortion artifacts on the edges, but I ran into the PNG image losing its alpha channel on output, or drawed as broken.

Note that even with antialising=0 ARGB images could be drawn correctly as they have nothing to do with antialiasing. But antialiasing is handled here because all drawing ends up in the to blend function and it's convenient to handle it here.

By the way, in my example, the PNG image is presented in ARGB (after lodepng_decode32() decoding, a 32-bit array was obtained), but since the LV_COLOR_DEPTH is set to 16 decoder_open() converted it to 3-byte (16bit color + aplha) array, and after that image blended.


Add support for not shrinking values in GeneratorDrivenPropertyChecks

I have some custom generators for Map[String, Foo], and the default Shrink instance that forAll passes breaks the constants and causes me to lose my original error.
I saw that scalacheck has a built in Prop.forAllNoShrink method and it would help a lot to have a similar method added to scalatest's integration.

PropertyCheckConfig might be another place to add this rather than another method

Right now I'm working around this by doing
def noShrink[T](gen: Gen[T]): Gen[NoShrinkWrapper[T]] = gen.map(NoShrinkWrapper.apply)
case class NoShrinkWrapper[T](value: T)
forAll (noShrink(myGen)) { myN: NoShrinkWrapper[Foo] =>
  val my = myN.value
  my should ...
}

I was actually thinking along the same lines. I would rather not add a bunch of forAllNoShrink methods, but instead you could turn off shrinking with an implicit Shrink[T] that doesn't shrink. I hadn't had time to try that, but it seems like it should be a one-liner, and then you will be using a Shrinker for that type, but it would not  actually do any shrinking, just return an empty Stream. Do you think that might suffice?

I didn't realize I could do that -- I'll try it.

Let me know how that turns out. I am teaching today and won't have time to try it until later. It may require a helper method, but with one of those I think it should be a one liner to turn shrinking off for a type T. If that works I think it would be good to add such a helper method to ScalaTest.
Bill

  implicit val untypedMapNoShrink = Shrink[Map[String, Any]] {
    _ => Stream.empty
  }

That in scope prior to my test resolves the issue for me. A relavent oneliner here would be something like
def noShrink[T] = Shrink[T](_ => Stream.empty)
val myTypeNoShrink = noShrink[MyType]

+1

:+1:

Has this feature been added since then ?


Amplify Cli: Auto-generated DDB trigger failed to deploy lambda resource

Note: If your issue/bug is regarding the AWS Amplify Console service, please log it in the
Amplify Console GitHub Issue Tracker

Describe the bug
I followed the steps described in the Amplify docs to create a Lambda trigger for a DDB table setup using @model : https://docs.amplify.aws/cli/usage/lambda-triggers#as-a-part-of-the-graphql-api-types-with-model-annotation
The Cloudformation generated for Lambda did not have Code section.The stack creation failed with Code attribute can't be empty/null.
Generated Cloud formation template for NodeJS Lambda DDB trigger:
"LambdaFunction": {
          "Type": "AWS::Lambda::Function",
          "Metadata": {
            "aws:asset:path": "./src",
            "aws:asset:property": "Code"
          },
          "Properties": {
            "Handler": "index.handler",
            "FunctionName": {
             .....

Amplify CLI Version
You can use amplify -v to check the amplify cli version on your system
4.29.1
To Reproduce
Steps: https://docs.amplify.aws/cli/usage/lambda-triggers#as-a-part-of-the-graphql-api-types-with-model-annotation
Lambda function runtime: nodejs12.x
Expected behavior
Stack deployment succeeds without any manual changes to CloudFormation template.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. Mac/Windows/Ubuntu] - Mac
Node Version. You can use node -v to check the node version on your system. - v14.10.1

Additional context
Workaround: I manually modified the Cloudformation template to add code section,
            "Code": {
                "S3Bucket": {
                    "Ref": "s3bucket"
                },
                "S3Key": {
                    "Ref": "s3key"
                }
            },

It worked out for me.

I followed the steps in the document and I can not get the error.
The Code section is not immediately added when you run amplify function add,  it's only added by the CLI right before the push. This is not just for the lambda trigger, but also for other types of functions.
You don't have to manually add the "Code" section, just run amplify push and it will be successful.

@UnleashedMind  I am using it by referencing as a Cfn template in a CDK stack. We don't use Amplify push for deployment but use - "CDK deploy" AFAIK. What alternates we have apart from Amplify push adding it?

Currently you have to use amplify push to insert them. The logic is built into the amplify push workflow.


What is this If condition supposed to be doing in integrate()?

I'm locally failing my integration test because of this if condition. What's the purpose of it?
https://github.com/HenryGeorgist/fda-model/blob/ebfcc71321c6643f4954d7d29e99ee68be59ccd4/fda-model/paireddata/PairedData.cs#L75

well this integrate is kinda specialized. I am integrating probability from 0 to 1, this logic is checking to see if the last probability was strictly zero (since we typically do not estimate the noah event it is almost always the case that this is activated). What i do is i calculate the rectangle from the last probability to 0 (or 1) and add that area (no projection of the shape of the line because we dont know what the extrapolation should do except not decrease...

I think i pulled this from go-fda: https://github.com/HenryGeorgist/go-fda/blob/main/expectedannualdamage/expectedannualdamage_test.go
specifically from go-consequences:https://github.com/USACE/go-consequences/blob/c7b4a9fe1e1ff392ba7041f3293616c4c58cbb46/compute/simulation.go#L17
and then a test here:
https://github.com/USACE/go-consequences/blob/c7b4a9fe1e1ff392ba7041f3293616c4c58cbb46/compute/simulation_test.go#L20


[patch] Adapt some warning behaviours for reduced verbosity

Fix gpu related behaviour

For reference, the error was raised here:
https://github.com/eole-nlp/eole/blob/67ccde4340812f53f83ead412bd02d8d69f615e2/eole/config/training.py#L320-L324
The issue is that gpu_ranks is set before updating world_size, so the condition cannot pass.
Updating both values with the dedicated update method makes it work.
Another solution would be to set world_size before gpu_ranks, but using the ad-hoc function seems better to me.
Also, this whole logic might be worth a bit of reworking, as it's not super clear from a user pov why we need to update some training_config in inference_logic...

Make storage_dtype a cached_property to prevent warning for each call.


Delete stale files.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: geeknoid
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 [geeknoid]

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

? how did that show up? did I somehow commit both old and new locations?


Expose virtual columns

It would be nice if the plugin supported virtual columns in a similar way as the Kafka Table Engine. I need the key information as well as timestamp, offset and partition. As it stands currently, these values don't seem to be available.

I see this is a rather old question, but if someone will look for the same, in some cases you can try to get these columns using the InsertField transformation
    "transforms"                                 : "insertPartition,insertOffset,insertTimestamp",
    "transforms.insertPartition.type"            : "org.apache.kafka.connect.transforms.InsertField\$Value",
    "transforms.insertPartition.partition.field" : "__partition",
    "transforms.insertOffset.type"               : "org.apache.kafka.connect.transforms.InsertField\$Value",
    "transforms.insertOffset.offset.field"       : "__offset",
    "transforms.insertTimestamp.type"            : "org.apache.kafka.connect.transforms.InsertField\$Value",
    "transforms.insertTimestamp.timestamp.field" : "__timestamp"


is there a way to automate this to get always latest h5bp?

is there a way to automate this to get always latest h5bp?

No, it's dependent on the H5BP file structure, and would break if that changed. I just upgraded to latest version of H5BP. Enjoy ;)

thank you very much!

What is your process for keeping this up to date with the H5BP? We are thinking of converting a project, that we often use as a boilerplate but is also a website, into a generator. The idea being the defaults, or a fast path, would create the website. But, if we wanted to start with a boilerplate we could do that also and it would walk through all the options.
I am very curious how to best keep a generator current when dev'ing and testing the output project since it can't be fun to add new features to the output and then port them into the generator.

@steveoh As long as you're doing conditional generation, there's no way to do it fully automatically, as the conditionals depend on the source, and the source might change between versions. In this generator I just upgrade when I see a new H5BP release on Twitter or if someone requests it. If you'd want to be more proactive you could subscribe to the H5BP GitHub releases feed.


Refactor rmrk/CreateToken

Thank you for your contribution to the KodaDot - One Stop Shop for Polkadot NFTs.
👇 __ Let's make a quick check before the contribution.
PR Type

[ ] Bugfix
[ ] Feature
[X] Refactoring

Context

[X] Part of #4750
[X] Part of #6392
[ ] Requires deployment <snek/rubick/worker>

Before submitting pull request, please make sure:

[X] My contribution builds clean without any errors or warnings
[X] I've merged recent default branch -- main and I've no conflicts
[X] I've tried to respect high code quality standards
[X] I've didn't break any original functionality

Optional

[ ] I've tested it at </ksm/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Did your issue had any of the "$" label on it?

[X] Fill up your DOT address: Payout

Community participation

[ ] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

Copilot Summary
copilot:summary
copilot:poem

pay 50 usd

😍 Perfect, I’ve sent the payout
💵 $50 @ 4.57 USD/DOT ~ 10.941 $DOT
🧗 16hqk8Tjugo9AwSzKkxXc1dsRK7iJetpx1YBaoXYwdHzuNAt
🔗 0x11fa5720ef9ebe6406cbc46cc0e7c85d86ab42f1e0bdbb53c68c11745643ef4b
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues

checking, lets see if it solves #6916

@prury Sorry about that, I couldn't test it locally. Can you check if it works now?

@prury Sorry about that, I couldn't test it locally. Can you check if it works now?

i understand is a refactor, but since this functionality is not working (classic minting on rmrk1), i am not able to go further into testing.
if you folks want to maintain the refactoring for the sake of nuxt3, lets go.
if not, lmk.
wdyt @roiLeo

i understand is a refactor, but since this functionality is not working (classic minting on rmrk1

Does it work on rmrkv2? As it use the same component

if you folks want to maintain the refactoring for the sake of nuxt3, lets go. if not, lmk.

if it work on beta/canary but not on this preview then we need to fix it.
if it doesn't work for either of them, then we can fix it latter.

i understand is a refactor, but since this functionality is not working (classic minting on rmrk1

Does it work on rmrkv2? As it use the same component

yes, just minted one there(canary):
https://kusama.subscan.io/tx/0x62bfe4a6ed827515f6ac483e27c19ec1ae4473eb87681c88546996bdd49a1e44

if you folks want to maintain the refactoring for the sake of nuxt3, lets go. if not, lmk.

if it work on beta/canary but not on this preview then we need to fix it. if it doesn't work for either of them, then we can fix it latter.

was not working already, I've linked the issue few messages above

edit: more infos here

fix it later then?

@pbkompasz seems doesn't builds 👀

fix it later then?

if there is anything left, let's make follow up @prury
merging till then as it was building, only wasn't test passing but that was not working before this pr iirc


fix decimal cast bug

What problem does this PR solve?
Issue Number: close #6994
Problem Summary:
What is changed and how it works?
Fix bug in round when cast decimal as decimal
Check List
Tests

[x] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/merge


update and format docs

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 51.35%. Comparing base (e879685) to head (c82d95b).

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #413      +/-   ##
==========================================
+ Coverage   51.25%   51.35%   +0.09%
==========================================
  Files        1091     1091
  Lines       99651    99645       -6
==========================================
+ Hits        51080    51169      +89
+ Misses      48571    48476      -95

Flag
Coverage Δ

g3proxy
51.35% <ø> (+0.09%)
:arrow_up:

lib
?

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


【待拆分】Feature add undo log func

What this PR does:
add undo func
Which issue(s) this PR fixes:
issue #247

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Codecov Report

Merging #260 (1049d7f) into master (a0ed1d0) will increase coverage by 3.27%.
The diff coverage is 80.67%.

@@            Coverage Diff             @@
##           master     #260      +/-   ##
==========================================
+ Coverage   50.99%   54.27%   +3.27%
==========================================
  Files          61       64       +3
  Lines        3106     3488     +382
==========================================
+ Hits         1584     1893     +309
- Misses       1445     1514      +69
- Partials       77       81       +4

Impacted Files
Coverage Δ

pkg/common/sql/sql_data_type.go
0.00% <0.00%> (ø)

pkg/datasource/sql/at.go
4.13% <0.00%> (ø)

pkg/common/sql/sql.go
35.45% <35.45%> (ø)

pkg/common/sql/mysql_keyword_checker.go
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

PR已经拆分出去了


It is urgent to improve the debug method of all components

This is very important to use the engine, otherwise it is very inefficient to adjust to the appropriate parameters.
In the test, the debug method of many components has not been implemented. For example: Camera, Transform...

The function is on the list. We plan to make the debug function as an extension and it will be moved from the engine core. Keep you updated.


Config file: Update disabled in config. its configured!

Added the config file as described in docs.
ep.conf in	sdcard/EnergizedProtection
contains: checkHostsUpdate=true
But ep -C or ep --config-file commands does nothing.
Also at initializing: Update: Disabled in config.
Version: 6.32.08<IP_ADDRESS>.00
Build Version: <IP_ADDRESS>
Build Date: Thu, 24 Feb 22 00:18:24 +06
Version Code: 0550018

https://user-images.githubusercontent.com/5399778/155400579-51445f52-5694-4ad1-8234-762a20d34c4b.mp4
#32

I just came across this issue. I was able to add checkHostsUpdate=true to my ep.conf file and it seems to have worked, however after it checks for updates the entire script simply hangs. It never progresses any more than what you see on the below screenshot.


i would like minimize the window were is the dockpanel and leave topmost the float window

I have one problem
i would like minimize the window were is the dockpanel and leave topmost the float window , is possible this ?
if not possible i have think , that i create a secondary form Modal and put a second dockpanel
but when drag and drop one float in second windows doesnt work

#208 Drag and drop between two DockPanel instances is not supported.
About your original problem, I will do further investigation.

Visual Studio can keep float windows on top, while the main form is minimized.

yes in Visual Studio is possible

One reminder is that Visual Studio can keep a float window on top when the main form is minimized, only if this float window contains a document. Such float windows have their own icons in task bar too.
This is not yet something DPS supports.

Okay, so now I comment this too.
There are several things I found out which aren't how Visual Studio acts like (preferred 2015).
For example:

Every docking content can be a tool content and a document content. That must be changed (Add property which specifies whether pane can be docked that like a tool).
As mentioned here, the floating window isn't how it should be like.

I'm currently working out a solution for this problem, because I do not like how it's done currently.
My solution in short words:
The float window has an own (Child)DockPanel which has a reference to the (Parent)MainDockPanel.
Internaly in the docking handler there must be changed, that DockPanels, which are childs of the main dock panel are allowed to recieve panels and remove them from the main dock panel.
This also allows having a "TabPane" on a floating window.


Add some little features

Make a game using a functional component
Add styles to the elements in a seperate file
Make changes to the main file in accordance with the other changes

Try to incorporate a ping pong game next

We'll do it in another project. Something like Roblox LUA?


Labelling administrative boundaries

Style change requested
Replicate the default OSM skin's labelling of the outlines of administrative boundaries
Affected Tag or Tags
type=boundary; boundary=administrative
Where this is visible

Boundary edge labels would be very helpful for making sense of gerrymandered boundaries or boundaries that follow natural features. Unfortunately, we’re halfway through a performance optimization that makes it more difficult to implement them: https://github.com/OpenHistoricalMap/issues/issues/798#issuecomment-2146312594. Once we’re able to deduplicate neighboring boundary relations, then hopefully we’ll be able to reintroduce the necessary data for boundary edge labels.

Perhaps as a follow-up to this feature, it would be neat if the boundary edge labels could include an automatically generated suffix indicating the boundary’s start and end date, based on start_date=* and end_date=* but formatted for human readability.
/ref #793


Fix lifetimes in SignedCookies/PrivateCookies::get()

Before this commit, the Key that's passed to Cookies::signed() or Cookies::private() is forced to have a static lifetime, because the returned Cookie gets self's lifetime as its lifetime parameter.
Fix this by using the cookie name's lifetime instead, and just require it to outlive the lifetime of self.
This makes it possible e.g. to store Key in an axum Extension layer instead of a global Cell.

Would you add a test with a non-static key lifetime? Can't restricting the name lifetime cause potential problems? Wouldn't binding the returning cookie to the static lifetime be fn get(&self, name: &str) -> Option<Cookie<'static>> be enough?

Thanks for the review! Changed to use 'static lifetime, and modified the remove tests so that they fail to build without the fix.
I believe that this might also fix issue #15.


fix bug where minimum signed value was reported as 0

My own bug. Sorry about that.

@dlharmon
Thanks
Stu


CSG "union" and "intersection" operations are interchanged.

The "union" is performing the "intersection" operation and vice-versa.
bug repo: https://www.babylonjs-playground.com/#7APL95

Actually this is because your meshes are back oriented: https://www.babylonjs-playground.com/#7APL95#2


Door System UI

Hello, The door system UI seems to show up on the inside of the door on some maps and the text is really small, example: http://steamcommunity.com/sharedfiles/filedetails/?id=1325718706
Thank you for your time

Also, I can't seem to find the content pack anywhere for this, almost every playermodel is an error (i do have css)

Late response, I know. But, you can find the citizen content here: https://steamcommunity.com/workshop/filedetails/?id=1083149622
And, the printer content is here: https://steamcommunity.com/sharedfiles/filedetails/?id=597570090

This is something that I can't help because some door brushes are not placed correctly.


Remove mandatory future features

Makes absolute imports on by default. Removes code related to with_statement and unicode_literals which are already on by default.

Can you resolve the conflicts on this?


GH2201: Extend supported globber patterns

[x] Bracket wildcard

[x] Specific: ba[rz] that matches "bar" or "baz"
[x] Ranges: ba[a-zA-z] or ba[1-3] that matches "baa" or "ba1" among others

[x] Brace expansion: foo{bar,baz} that would match "foobar" and "foobaz"

No sequences though

[x] Negation in bracket wildcards (i.e [!Cc]at that would match "bat" but not "cat" or "Cat")

Closes #2201

@devlead I've added some integration tests.

@patriksvensson  your changes have been merged, thanks for your contribution 👍


Automatically adding GitHub topics

GitHub just rolled "topics", which are pretty much like npm keywords but for GitHub.  One of my first thoughts was that now I have to manage them in two places!
It would be nice if this generator automatically pulled the ones from your "keywords" in package.json, and used those.

That would be great, but it looks like GitHub hasn't exposed this on the API yet, or at least it's not documented anywhere that I can find. We're looking into now, thanks for the issue. We'll let you know if we find anything

Hmm, now that I think about it tho, how would this work from generate's perspective?  It sounds more like an update thing, because a new project might not have any keywords.

Hmm, true.I guess it depends on when you initialize a new github repo. I tend to already have most of the source files created and committed locally before I create the github repo. But still, it does seem like update would be more useful. We could do update-topics once the API for it is exposed


allow MSP430 DCO frequency to be up to 9MHz

This is a quick-and-dirty fix for msp430 Series-2 based mote (e.g. Zolertia Z1) clock speed in simulations.
For now, attempts to configure DCO frequency higher than 4.9 MHz in Cooja lead to ACLK speed being reduced to 16384. The outcome is that Contiki system clock on simulated Z1 motes runs twice slower than expected.
Due to some implementation idiosyncrasies, the problem with Z1 clock speed in simulations appeared only after applying this pull request to Contiki: https://github.com/contiki-os/contiki/pull/606 (it fixes a different clock frequency related bug):
Related: issue #35.

Great! Should also fix https://github.com/mspsim/mspsim/issues/44, right?

Hi Simon,
yes, you describe the same problem, and this patch is sufficient to get the clock speed back to normal.
issue #35 explains what exactly goes wrong.

Excellent, thank!
On 14 May 2015 10:32, "Atis Elsts"<EMAIL_ADDRESS>wrote:

Hi Simon,
yes, you describe the same problem, and this patch is sufficient to get
the clock speed back to normal.
issue #35 https://github.com/mspsim/mspsim/issues/35 explains what
exactly goes wrong.
—
Reply to this email directly or view it on GitHub
https://github.com/mspsim/mspsim/pull/38#issuecomment-101970805.

This should now be fixed by #46 so I am closing this.


Parse Excel/CSV to ontology

Goal: Import an ontology described by csv files.
Different files are describing the things and properties. The parser should import the data scheme (from meta information file name and columns) into weaviate if it does not yet exist. It should also fill the database with all the concepts described by the table rows.
@bobvanluijt

First of all, this one has low priority for me unless @michaverhagen needs this urgently.
requirements
note, the title says Excel/CSV but it should only be Excel for the concept will not work on CSV

Every tab in a workbook represents a weaviate-class.
Every column represents a weaviate-property.
Every cell the value of a weaviate property.
A cell can contain $[thing][ID] or an Excel reference which should be resolved when adding the data to a Weaviate.

@michaverhagen, can you please attach a simple example for @fefi42?

I am closing for now feel free to reopen if this needs priority.


Arabic Text in download is not formatted correctly

Arabic text in download data is not formatted correctly for some reason. The raw data on the ODK Aggregate server is ok however... if we could please look into how it is handled during download.

When downloading what data is this problem occurring and what is wrong with the formatting?

This is resolved. It was not an issue with the system itself and formatting is preserved.


Black Box Challenge.nes unsupported mapper 30

This mapper (UNROM 512) is now emulated on master, including the flashable PRG ROM behavior that this game uses to store save data


Update README.md

Description

Screenshots (if appropriate):

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have used ESLint & Prettier to follow the code style of this project.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Coverage remained the same at 93.255% when pulling dcb9bd4cfea986ccc0e5a4797689cffda7b66ea1 on nikitanamdev:master into 3f9b3c728927542d878618c05f14510566c68255 on patw0929:master.

@nikitanamdev The intension of #Hacktoberfest is to impact on open source community more frequently. Please DO NOT open an invalid PR.


Allow overriding faker method using prisma comment

Implements #12

released in https://github.com/luisrudge/prisma-generator-fake-data/releases/tag/v0.14.0


DDPG does not train

Hi,
I am using DDPG for car-racing-v0 in gym environment but it seems it does not learn at all. Do you have any idea what can be the issue?
Do you know which noise_type is more suitable for car racing?

You need to provide more information for us to be able to reproduce your error. How did you install the package? What is the exact code version you ran --- and did you change any of the hyperparameters? What is the exact command you ran?  What are the log files that you get?


Followers timeline

WIP for followers timeline - don't merge until complete

[x] add followers_timeline
[x] migration scripts
[x] add pagination to followers list

for issue #31

Ok this is good to go.  One question is that it doesn't give any indication as to the total number of followers (ie: you can't just count the number in the response) Should we expect the user to make a separate request to get follower count or include it in the response?

Ideally we'd include that in the response, but for now I can live with a separate call.  Will merge.


Support authentication via Shared Access Signatures (SAS) for Azure artifacts

Summary
Support authentication via Shared Access Signatures (SAS) for Azure artifacts
Use Cases
With argo v3.4 support for Azure artifacts has been implemented. As far as I understand, the current implementation only supports authentication via Storage Account access keys, but not via Shared Access Signatures (SAS).
I would like to be able to use SAS  for authentication, too.
@brianloss Since you worked on this feature, could you confirm that I am right why my assumption? I could not find a way to make it work with SAS tokens. (and thanks btw for implementing it!)
Me/my team would potentially be willing do this contribution.

Message from the maintainers:
Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.

@alexdittmann the underlying authentication uses the Azure SDK for Go, and the DefaultAzureCredential in particular. This supports authentication via environment variables, Workload Identity, Managed Identity, or Azure CLI. (See this learn page for more details as well.) This is all enabled by setting UseSDKCreds to true. Otherwise, the authentication method is shared access key. So, although more than just access key access is supported, SAS is not one of the supported methods. This is primarily because SAS tokens are effectively just additional query parameters added to the URL.
You could try to add the SAS token to the endpoint field and set UseSDKCreds to true to use the DefaultAzureCredential, but I'm guessing that might fail since you wouldn't actually provide any credentials. You'd likely also need to call azblob.NewContainerClientWithNoCredential instead of azblob.NewContainerClient or azblob.NewContainerClientWithSharedKey in the newAzureContainerClient method when you want to use a SAS.

I want to clarify that Workload Identity is not yet supported as of azure-sdk-for-go/sdk/azidentity version 1.2.1, which is the version argo-workflows version 3.4.5 uses at the moment.
https://github.com/argoproj/argo-workflows/blob/1322f26272b403bb300f276b808a43ba1db136dc/go.mod#L7

It's a pity. We would have used this feature with Azure ManagedIdentity very gladly. This is actually the suggested and easiest way to access storage from kubernetes.

Ah, it looks like that feature in the Go SDK is still in beta. Not sure if a PR with a beta version of identity would be accepted or not, but it would be a fairly simple change to make if anyone has time to test it out.

Hi,
I would like to bring this issue up again. We (my team) have created it in the past and would now like to look into this issue.
However, regarding contributions to the artifacts area i have one question: In the past I asked a similar question about contributing to the argo workflows artifacts codebase (see this slack thread) and from that I understood that argo wants to minimize new artifact functionality.
Now, this contribution here would only extend an already existing artifact type (azure) by an additional authentication method.
So my question is: Would such a contribution have a general chance of being accepted?
@agilgur5 maybe you can comment on this again?
Thank you and best regards
alex

Yes, as I wrote in that Slack thread too, extending existing functionality is likely to be accepted. Similarly as I wrote there, the spec etc is still important; I haven't read this issue in much detail to comment.
If we externalize artifact plugins (#5862), some may still be "core" plugins that are built-in or more closely maintained, and the main "hyperscaler" clouds are the most popular to support.

Hi @brianloss and @agilgur5 , I am a part of @alexdittmann 's team currently working on a proposal for the support of Azure SAS tokens.
Could you please quickly verify one of these approaches as possibly suitable for moving forward with this contribution?

For supporting azure SAS tokens, we do not introduce any spec changes, instead when reading the AccountKeySecret, the Azure ArtifactDriver will parse the secret string to check for query param structure (&<param-name>=<param-value>) to determine whether the provided secret is a SAS token. Is yes, the driver will internally initialize a NewContainerClientWithNoCredential.

We introduce a new boolean spec param useSASToken which the Azure artifact driver will use for determining whether to consider the contents of AccountKeySecret as a SAS token.

Hi again @agilgur5,
do you have any opinion on the query of @kavishdahekar-sap or could tell us where we could get some additional feedback?
Otherwise, as we would like to implement this soon, we just start implementing option 1.
Thank you and best
Alex

Could I get a review here please?
https://github.com/argoproj/argo-workflows/pull/13360

@kavishdahekar-sap I'm not a committer, but I can take a look.


Containers stopped building

Per https://github.com/onedr0p/containers/releases/tag/2024.4.0, there is no longer a onedr0p alpine image which breaks at least the cni-plugins container. I discovered that the 1.5.1 container image has bad cni-plugins that error with exec format issues.
In the process of copying your work to update to 1.6.1 I discovered the onedr0p issue and thought I'd pass it along.
Thanks for your contribution!

Thanks - changed to default alpine and it is working again.


Add missing type property for PacketCapture

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.ResourceManager.Network


position error

https://github.com/asavinov/intelligent-trading-bot/blob/master/common/gen_signals.py#L361
shorts.append((index, previous_price, price, profit, profit_percent))  # Bought would be
longs.append((index, previous_price, price, profit, profit_percent))  # Bought
https://github.com/asavinov/intelligent-trading-bot/blob/master/common/gen_signals.py#L374
longs.append((index, previous_price, price, profit, profit_percent))  # Sold would be
shorts.append((index, previous_price, price, profit, profit_percent))  # Sold

to fix your trouble check this click
maybe this will solve your problem.


Tweak line wrappings in the device-plugin concepts page

This PR fixes the long line problems found in the device-plugins.md page.

Preview of updated page:
https://deploy-preview-37217--kubernetes-io-main-staging.netlify.app/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/
I confirmed this PR fixes line wrappings and spacing and does not add or remove content
/lgtm
/approve


Python gRPC: AttributeError: 'LightningStub' object has no attribute 'UnlockWallet'

Background
I'm trying to connect to my LND from a Python script. As a first step, I'm following these instructions to set everything up and then execute this script line by line.
Your environment

version of lnd: lnd version 0.6.1-beta commit=v0.6.1-beta-84-gaf3b04e53f7cc2198ac41a7b6590018a2b21a599
which operating system (uname -a on *Nix): Linux 4.15.0-64-generic #73-Ubuntu SMP Thu Sep 12 13:16:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
version of btcd, bitcoind, or other backend: bitcoind v0.18.0 (regtest)
any other relevant environment details

Steps to reproduce
Install the environment as described here, then:
$ python
Python 2.7.15+ (default, Jul  9 2019, 16:51:35)
[GCC 7.4.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import rpc_pb2 as ln
>>> import rpc_pb2_grpc as lnrpc
>>> import grpc
>>> import os
>>> os.environ["GRPC_SSL_CIPHER_SUITES"] = 'HIGH+ECDSA'
>>> cert = open(os.path.expanduser('~/.lnd/tls.cert'), 'rb').read()
>>> creds = grpc.ssl_channel_credentials(cert)
>>> channel = grpc.secure_channel('localhost:10009', creds)
>>> stub = lnrpc.LightningStub(channel)
>>> password = "12345678"
>>> b_password = password.encode()
>>> request = ln.UnlockWalletRequest(wallet_password=b_password)
>>> response = stub.UnlockWallet(request)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'LightningStub' object has no attribute 'UnlockWallet'

Expected behaviour
Get some kind of "wallet unlocked" message.
Actual behaviour
AttributeError: 'LightningStub' object has no attribute 'UnlockWallet'

UnlockWallet is part of the WalletUnlocker service, not Lightning. You should be creating a stub for that instead. The service is only available until the wallet is created/unlocked. It is not available if you're running lnd with --noseedbackup.

Sorry, not sure I understand. Is the python-grpc documentation just out of date?

The guide might not be out of date, but it's assuming that the lnd node has been unlocked. You can unlock it through the CLI with lncli unlock.

I had the same exact issue and only found out I could InitWallet on WalletUnlocker based on @wpaulino comment above.
fwiw I think it's a bit much for users to figure this out on existing documentation alone.
There are 0 instances of LightningStub string outside of the documentation in docs/grpc/python.md and a mention of the WalletUnlocker service in lnrpc/README.md but it's up the the user to guess what the name of it is(f.e. not WalletUnlockerStub)

oh dear, I must have skimmed over the line a bunch of times, it indeed exists in the gRPC docs: https://api.lightning.community/?python#initwallet


predict two images

Hello.
I want to know the similarity of two images.
Your code is the evaluation output.
I want to know the code to predict.
E.g. Given two image inputs
Can you tell if this is the same or not?
Or get each features?

I will put an example in two or three days.

see demo.py

Hi, Where is demo.py?

I will add demo.py in this weekends.

I have added demo.py in demo folder. You can check it.

Great! I test it now. Thanks.


[Stepper] Docfix

[ ] I have followed (at least) the PR section of the contributing guide.

@artola What's the context for this change?

@artola What's the context for this change?

@artola It's a great first pull request on Material-UI 👌🏻. Thank you for working on it!

@artola It's a great first pull request on Material-UI 👌🏻. Thank you for working on it!


issue #847

Oups... That didn't go so well...

It kind of looks to me like the build failure is due to unrelated tests failing. I need to take a look and see if there's something broken. :/

Forgot to close this.


Add Certificate Chain

The default Certificate Hierarchy on the serverKeyStore.jks file is like below:
Gitblit Certificate Authority
|_ _ localhost
I have a trusted p12 certificate file that contains the private and public keys in it.
I'd to add it as the Certificate Chain on Gitblit Certificate Authority.
I am wondering how can I do it?

Wait, aren't running Gitblit on Azure App Service? I thought Azure terminates TLS at the entry level and it never reaches your App.
Anyway, your can import your certificates into the key store, e.g with the keytool (doc) command on the command line, or on your PC with a GUI like KeystoreExplorer. Give the certificate an identifying alias and in the Gitblit configuration set the server.certificateAlias setting to that same alias name.

Close as Done


Read Account details using Python

Code sample to read account details using Nylas Python SDK.

I'd like to work on this issue, please assign this issues to me.

@amit-ksh there you go 😄


JavaScript content check and minor example tweak

Checked the content for the JavaScript coding style page and bumped the review date.
Small change - split the naming convention example into two to make it clearer which example refers to which rule.

Don't think the date matters too much - merging


Support an ExtensionDtype and ExtensionArray

While working on #519 , I wanted to test that we could pass a user-created ExtensionDtype and ExtensionArray .  So I copied the testing code from pandas that creates a DecimalArray, and it revealed a number of issues with our type declarations.
So this PR addresses that.  Not everything is really tested in terms of all the ExtensionArray declarations, but the goal here is to see that a user-defined ExtensionArray will pass typing checks.

Thanks @Dr-Irv !


Calling getInstalledApplications returns empty list

I have this code in my widget
class _SelectCustomAppScreenState extends State<SelectCustomAppScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Theme.of(context).colorScheme.background,
      body: SafeArea(
        child: Container(
          padding: EdgeInsets.all(kScreenPadding),
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              SizedBox(height: s_4),
              HeadingText("Select Custom App"),
              SizedBox(height: s_2),
              Expanded(
                child: FutureBuilder(
                  future: DeviceApps.getInstalledApplications(
                      includeSystemApps: true, onlyAppsWithLaunchIntent: true),
                  builder: (BuildContext context, var snapshot) {
                    if (snapshot.hasData) {
                      print(snapshot.data);
                      return Center(child: CircularProgressIndicator());
                    } else {
                      return Center(child: CircularProgressIndicator());
                    }
                  },
                ),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

This should return the list of installed applications in the snapshot.data but here is the output on my console
Reloaded 4 of 698 libraries in 537ms.
I/flutter (31817): [DeviceApps] type '_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'Map<String, Object>'
I/chatty  (31817): uid=10290(me.aswinmohan.nophone) Thread-2 identical 122 lines
I/flutter (31817): [DeviceApps] type '_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'Map<String, Object>'
I/flutter (31817): []

Here is my pubspec.yaml for reference
environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^0.1.3

  date_format: ^1.0.8
  intent: ^1.4.0
  google_fonts: ^1.1.0
  tailwind_colors: ^0.1.0
  battery: ^1.0.1
  device_apps: ^1.1.1+1
  hive: ^1.4.2
  hive_flutter: ^0.3.1

dev_dependencies:
  flutter_test:
    sdk: flutter

  hive_generator: ^0.7.1
  build_runner: ^1.10.1

I have rebuilt the Application thinking that the issue was Native code not getting recompiled, but the issue is not that.

I am working on a fix right now, should be published anytime soon

Fixed in 1.1.2


MySQL collation problem with static recipients

Sending to static recipients is broken. In line 105 of class.recipientsourcestatic.php the temporary table is created without the utf8_unicode_ci collation, so the JOIN will not work if your database's default collation is different (which will be the case in most MySQL installations).

Fixed, see #22


Add "enabled" option to timelaps config

What would you like to see added?
Now it's possible to enable/disable timelaps via runtime gcode commands, (see that example), but it's not possible to set initial enabled state in .conf file (it's always enabled). Would be useful to make it configurable.

Maybe you can try this:
[timelapse]
...
manual_mode: true

the default value is False.
or you comment out the complete [timelaps] section.
I hope this helps you.

@mrodyhin
Parameter enabled is not present in the semantics of klipper configurations. Therefore, I do not plan to add this option at this time.
To disable the functionality, just comment out the corresponding section of the configuration.


Archive links doesnt works anymore

Hello sir,
This was the tuto i really needed but as soon as i typed the link.. i've seen that the url provided isnt valid anymore..
Do you have a solution maybe ? Thanks

found another link here.. i'm just trying it RN
https://mde1.androidfilehost.com/dl/6Qhf2gTdNsIx996pegAvPw/1733929570/4279422670115708683/windows10.gz

Try this link:
https://archive.org/download/windows10_202406/windows10.gz

Thanks you so much for your fast reply !!!
But I don't know why does it takes so much times? ? ?
Don't you think it's possible to DL the file and put it into another file host ?

The connection is pretty limited with archive.org but it's easy to upload and share a direct link.  For the amount of downloads it's not really worth the effort to use another file host.

I have to set up 10+ machines.. so i'm currently downloading the .gz on my machine to put it on my current ubuntu VPS. It'll be certainly faster in my case.
Anyway thanks for the readme without you I think I would already abandoned the projet :D
I let u know if the .gz u gave me is working. Thanks you again.


Develop --> Master

The other providers include test files /pkg/storage/<PROVIDER>/*_test.go alongside their storage implementations.
No harm in opening a PR, but they might want some test functions to go with it, unless there's a yet-to-be-met dependency that precludes us from doing so at this point in time.

@srcarrier This PR isn't actually pointing to the upstream repo, openshift/cluster-image-registry-operator. This is going into my master branch in my forked repo. I opened this PR just so it'll be easier to view the diff and review.


[REQUEST] Make number indicators optional.

The number indicators are very valuable for new players however I personally prefer to play without them. It would be nice if there was an option to let individual players opt out of number indicators.

I thought so too, will add to TODO 👍


Add Jenkinsfile

Closing this in lieu of https://github.com/gds-operations/vcloud-launcher/pull/124


Issue with Input Text bar

I have the below issue on converting a Tkinter application which is designed using Figma
Original Image

Issue

Can you share a link to your Figma file?

@ParthJadhav Sure this is the url :- https://www.figma.com/file/UKaEfJW50Vq4mwsXOr34oT/Untitled?node-id=0%3A1

Hey, Add a frame around your design by pressing F. This will serve you as a Figma window.

You can't add text above TextArea... if you want then you need to tweak a little with the generated design.

@Harish3055 You can close this if it's solved.

@ParthJadhav It worked.


[Bug]: Unable to join room TypeError: 'get' on proxy: property 'publishParams' is a read-only and non-configurable

What happened?
Unable to join room TypeError: 'get' on proxy: property 'publishParams' is a read-only and non-configurable data property on the proxy target but the proxy did not return its actual value (expected '#' but got '#')

How can we reproduce the bug?
Install the library @100mslive/hms-video-store and onMounted of vue3 execute join method with the config.
Here's the config I used :
config: {
userName: 'Jon Snow',
authToken: 'Taken from 100ms dashboard for host,
settings: {
isAudioMuted: true,
isVideoMuted: false
},
metaData: JSON.stringify({ city: 'Winterfell', knowledge: 'none' }),
rememberDeviceSelection: true
}
"node_modules/@100mslive/hms-video-store": { "version": "0.12.18", "resolved"<EMAIL_ADDRESS>"integrity": "sha512-PamdqLUGeAka86LppQsO+nYDVkYOqpqw7jcXTzFTO+XcjrlMMHW4tGP3mQvS3aBmFG51vhQcGlHenhf0KrwQ4g==", "dependencies": { "eventemitter2": "^6.4.9", "immer": "^9.0.6", "lodash.isequal": "^4.5.0", "reselect": "4.0.0", "sdp-transform": "^2.14.1", "ua-parser-js": "^1.0.1", "uuid": "^8.3.2", "webrtc-adapter": "^8.0.0", "zustand": "3.5.7" }, "engines": { "node": ">=12" } },
What browsers are you seeing the problem on?
Chrome

"node_modules/@100mslive/hms-video-store": {       "version": "0.12.18",       "resolved"<EMAIL_ADDRESS>      "integrity": "sha512-PamdqLUGeAka86LppQsO+nYDVkYOqpqw7jcXTzFTO+XcjrlMMHW4tGP3mQvS3aBmFG51vhQcGlHenhf0KrwQ4g==",       "dependencies": {         "eventemitter2": "^6.4.9",         "immer": "^9.0.6",         "lodash.isequal": "^4.5.0",         "reselect": "4.0.0",         "sdp-transform": "^2.14.1",         "ua-parser-js": "^1.0.1",         "uuid": "^8.3.2",         "webrtc-adapter": "^8.0.0",         "zustand": "3.5.7"       },       "engines": {         "node": ">=12"       }     },

For anyone looking for a solution. You need to call preview first and then only you can join.


Ui is not showing topic size when kafka has acl enabled and user has defined acl operations

Issue submitter TODO list

[X] I've looked up my issue in FAQ
[X] I've searched for an already existing issues here
[X] I've tried running main-labeled docker image and the issue still persists there
[X] I'm running a supported version of the application which is listed here

Describe the bug (actual behavior)
Hello,
Earlier  we were using Strimzi Kafka without allow.everyone.if.no.acl.found option added and we were able to see the topic size.
Now we have made this allow.everyone.if.no.acl.found : false and created two users one with only Read, Describe, DescribeConfig and another with Read, Describe, DescribeConfig, Write, Alter, ALterConfig
when I am deploying this UI using the SCRAM credentials for these users none of them able to show the Topic size, neither I can see the ACL tab
Can you please check if there is any issue with the UI that needs to be fixed ?
Expected behavior
ACL tabls and Topic size should  be visible in the UI
Your installation details
Taken the latest image, pulled and pushed into our own image repo, configured the helm and deployed in AWS ROSA
Steps to reproduce
Deploy a Strimzi kafka cluster with authorization: simple, authentication: scram-sha-512, allow.everyone.if.no.acl.found : false in AWS ROSA
create a user with acl : topic: * , operation: Read, Describe, DescribeConfig, Write, Alter, ALterConfig
get the jaas config
update the helm
and deploy the ui
Screenshots
No response
Logs
No response
Additional context
No response

It seems there is some issue with permission, we need to add Cluster permission in order to get these details. This is not a bug/ui issue.