runtime performance problem: math intensive test runs 3x slower using advanced-optimizations compile

This issue was imported from Closure Compiler's previous home at http://closure-compiler.googlecode.com
The original discussion is archived at:
http://blickly.github.io/closure-compiler-issues/#1226

Uploaded the provided source / test files.
MatrixSpeed.zip

Seems to have become worse. The compiled version runs in > 34 seconds on Chrome 49 and > 5 seconds on Firefox 43.

@myphysicslab @concavelenz According to V8 team's reply on https://bugs.chromium.org/p/v8/issues/detail?id=4702, the workaround is to pass "--output_wrapper=(function() {%output})()" to the Compiler. Non-toplevel code doesn't have the performance problem on either Chrome or Firefox. It is slightly faster than the uncompiled code on Chrome :)

Closing because this is technically a VM issue and there's an easy workaround.

I'll test this within next couple weeks to confirm the output_wrapper fix.

The output wrapper fix does solve the performance problem with the MatrixSpeed.zip test code.  But adding the output wrapper to my production (non-test) code results in errors at run time.
TypeError: undefined is not an object (evaluating 'goog.global.navigator')
getNavigator_PerformanceTests_en.js:117:711
getNativeUserAgentString_PerformanceTests_en.js:117:608
(anonymous function)PerformanceTests_en.js:117:809
(anonymous function)PerformanceTests_en.js:1556:112

ReferenceError: Can't find variable: myphysicslab
(anonymous function)PerformanceTests_en.html:67

Here is the compile command
java -jar ../javascript/closure-compiler/build/compiler.jar
--closure_entry_point=myphysicslab.test.PerformanceTests
--compilation_level=SIMPLE
--define=goog.DEBUG=false
'--define=goog.LOCALE='\''en'\'''
--define=myphysicslab.lab.util.UtilityCore.ADVANCED=false
--generate_exports
--js=../closure-library/
--js=src
--jscomp_error=accessControls
--jscomp_error=ambiguousFunctionDecl
--jscomp_error=checkTypes
--jscomp_error=checkVars
--jscomp_error=const
--jscomp_error=constantProperty
--jscomp_error=fileoverviewTags
--jscomp_error=globalThis
--jscomp_error=invalidCasts
--jscomp_error=misplacedTypeAnnotation
--jscomp_error=missingProperties
--jscomp_error=missingProvide
--jscomp_error=missingRequire
--jscomp_error=missingReturn
--jscomp_error=newCheckTypes
--jscomp_error=strictModuleDepCheck
--jscomp_error=suspiciousCode
--jscomp_error=typeInvalidation
--jscomp_error=undefinedNames
--jscomp_error=undefinedVars
--jscomp_error=unknownDefines
--jscomp_error=uselessCode
--jscomp_error=visibility
--language_in=ECMASCRIPT5_STRICT
--only_closure_dependencies=true
--warning_level=VERBOSE
'--output_wrapper='\''(function(){%output%})()'\'''

Are you missing an export?

You are probably missing an export.

This test it is already annotated with @export.  I don't know what else to export.
Here is most of PerformanceTest.js minus comments and requires/provides:
/**
* @constructor
* @struct
* @private
* @export
*/
myphysicslab.test.PerformanceTests = function() {
  throw new Error();
};
var PerformanceTests = myphysicslab.test.PerformanceTests;

/**
* @return {undefined}
* @export
*/
PerformanceTests.runTests = function() {
  Engine2DTestRig.startTests();
  MiscellanyTest.testPerformance();
  StraightStraightTest.testPerformance();
  PileTest.testPerformance();
  Engine2DTestRig.schedule(Engine2DTestRig.finishTests);
  Engine2DTestRig.runTests();
};

Here is most of the HTML file that runs the test:
    <script src="../../MachineName.js"></script>
    <script src="PerformanceTests_en.js">
    </script>
    <script>
      myphysicslab.test.PerformanceTests.runTests();
    </script>

Can you show me the declaration of myphysicslab?

As I understand it, myphysicslab is created as a byproduct of the various goog.provide statements. Here is the complete version of this file, minus comments:
goog.provide('myphysicslab.test.PerformanceTests');

goog.require('myphysicslab.lab.util.UtilityCore');
goog.require('myphysicslab.test.CircleCircleTest');
goog.require('myphysicslab.test.CircleStraightTest');
goog.require('myphysicslab.test.DoNothingTest');
goog.require('myphysicslab.test.Engine2DTestRig');
goog.require('myphysicslab.test.JointTest');
goog.require('myphysicslab.test.MiscellanyTest');
goog.require('myphysicslab.test.MultipleCollisionTest');
goog.require('myphysicslab.test.PileTest');
goog.require('myphysicslab.test.RopeTest');
goog.require('myphysicslab.test.SpeedTest');
goog.require('myphysicslab.test.StraightStraightTest');
goog.require('myphysicslab.test.ExpectedPerf');

goog.scope(function() {

var CircleCircleTest = myphysicslab.test.CircleCircleTest;
var CircleStraightTest = myphysicslab.test.CircleStraightTest;
var DoNothingTest = myphysicslab.test.DoNothingTest;
var Engine2DTestRig = myphysicslab.test.Engine2DTestRig;
var JointTest = myphysicslab.test.JointTest;
var MiscellanyTest = myphysicslab.test.MiscellanyTest;
var MultipleCollisionTest = myphysicslab.test.MultipleCollisionTest;
var PileTest = myphysicslab.test.PileTest;
var RopeTest = myphysicslab.test.RopeTest;
var SpeedTest = myphysicslab.test.SpeedTest;
var StraightStraightTest = myphysicslab.test.StraightStraightTest;
var UtilityCore = myphysicslab.lab.util.UtilityCore;

/**
* @constructor
* @struct
* @private
* @export
*/
myphysicslab.test.PerformanceTests = function() {
  throw new Error();
};
var PerformanceTests = myphysicslab.test.PerformanceTests;

/**
* @return {undefined}
* @export
*/
PerformanceTests.runTests = function() {
  Engine2DTestRig.startTests();
  MiscellanyTest.testPerformance();
  StraightStraightTest.testPerformance();
  PileTest.testPerformance();
  Engine2DTestRig.schedule(Engine2DTestRig.finishTests);
  Engine2DTestRig.runTests();
};

}); // goog.scope

There are a few hundred other files which are being dragged in by goog.require statements in other files.

I found this comment on stackoverflow which might be relevant?

When compiling with --output_wrapper in ECMASCRIPT5_STRICT mode, it is worth mention that this value in anonymous wrapper function shall be bind manually to a window object: (function() {%output%}).call(window). Otherwise, this is not referenced to a global object in 'strict mode'. – manakor Apr 27 '15 at 6:58

FYI, this might be a non-issue for me now.  I haven't been testing much with advanced compile for the last two years (because of this issue).  I'm trying to use advanced compile again and at least for this one test the performance is fine.  Note this is without the output wrapper because of the above issues when trying to use --output_wrapper.  I'll do some more tests using advanced compile.

Your example should work fine.
FYI, @export should not be used with other visibility modifiers like @private. We need better documentation on this. https://github.com/google/closure-compiler/issues/1543.

I am using strict mode and the solution is to provide "this" as follows:
--output_wrapper="'(function() {%output%}).call(window)'" \

With that in place it is all working now.
Is it a problem that the 'use strict' statement is no longer the first statement in the file?  It is now inside the wrapping function, so I guess that will also work.  But I think that with the flag
--language_in=ECMASCRIPT5_STRICT \

then the 'use strict' should appear outside of the wrapping function as the first statement?
Here is the start of my advance-compiled program:
(function() {'use strict';var h,aa=this;function r(a){return void 0!==a}function


Cache search better in UniqueAttributeValueConstraint

If a document happened to have a large number of elements that have the
UniqueAttributeValueConstraint validation, it will end up recalculating
the values for the constraint way too often. This was because the
constraint was generating the cached lookup with a key using the
attribute text itself. This change updates the lookup to cache all
possible duplicates for the element in question so it only has to be
searched once.
Fixes #918

/azp run


Sync haproxy manifest with salt repo

The haproxy manifest is duplicated between the salt and c-c-m repo,
sync the recent changes from the salt repo over here to keep
everything lined up.
Syncs 25c660fd92150fbf8b1a7213282d2f9ead9a67e6 from the salt repo.

There is no need to backport this one to 2.0 - as the 2.0's c-c-m doesn't include this manifest.

Ouch, I wasn't aware of this duplication. We should get rid of it. In the meantime I'll merge the PR


Can not get DefaultConfig from maven

Hi ,
when i am trying to get maven project ver 0.4.5 i do not have DefaultConfig file ( but i do see it on your GitHub solution )- can u please help me understand what i am doing wrong ?
my pom is :

jitpack.io
https://jitpack.io

<dependencies>

    <dependency>
        <groupId>com.github.jimblackler</groupId>
        <artifactId>jsongenerator</artifactId>
        <version>0.4.5</version>
    </dependency>
    <dependency>
</dependencies>

code:
Configuration config = DefaultConfig.build()
.setGenerateMinimal(false)
.setNonRequiredPropertyChance(0.5f)
.get();
SchemaStore schemaStore = new SchemaStore(true);
Schema schema = schemaStore.loadSchemaJson("{ "type": "object", "properties": { "name": { "type": "string" }, "birthday": { "type": "string", "format": "date" }, "age": { "type": "integer" } } }");
Generator generator = new Generator(config, schemaStore, new Random());
Object json = generator.generate(schema, 10);
		// sample output: {name=vxtydd, birthday=2377-03-08, age=544}
		System.out.println(json);

fail here  - DefaultConfig

THANK U !!!

Working !!! have another question related to the Schema itself - can i ask here or new item ?

New issue please!

New issue please!
On Tue, 26 Apr 2022 at 10:54, ohadabraham @.***> wrote:

Working !!! have another question related to the Schema itself - can i ask
here or new item ?
—
Reply to this email directly, view it on GitHub
https://github.com/jimblackler/jsongenerator/issues/9#issuecomment-1109593656,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFH6F2XWMP5B37XDOBGLVDVG64OBANCNFSM5UK3VJGQ
.
You are receiving this because you commented.Message ID:
@.***>


target: family: lpc5500: add support for LPC55S16

This PR adds support for NXP LPC55S16 family devices:
Flash algo and SVD: From MDK DFP v14.0.0

/azp run

Hmm, for some reason, GH isn't giving me a button to approve running CI, nor is it letting me manually run CI. I was hoping that waiting for a few days would somehow clear this up, but it hasn't. Oh well… merging anyway since the AZP tests passed. Thanks for the addition!


Fix link to the authentication with Amazon Cognito

Motivation and context

I haven't noticed that https://github.com/cvat-ai/cvat/pull/8557 broke the link to the section about authentication with Amazon Cognito service.
How has this been tested?

Checklist

[ ] I submit my changes into the develop branch
[ ] I have created a changelog fragment
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues (see GitHub docs)
[ ] I have increased versions of npm packages if it is necessary
(cvat-canvas,
cvat-core,
cvat-data and
cvat-ui)

License

[ ] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.

@SpecLad, :eyes:


LDAP authentication

I would love to use jingo as documentation platform in my team, however we would need LDAP support for authentication first.
Any plans to add it?

Hi, no at the moment I am not planning any further enhancement for the authentication subsystem. The problem is that Jingo is thought to be small and doesn't have a plugin system. Adding more authentications methods (or renderers, or themes...) would make it less stable and hard to test. Sorry!


[Feature request] Adaptive Height & Variable Width

2 really great features out of the box from slick

Adaptive Height
Variable Width

@timc13 This is a bare bones carousel and can be responsive based on how you set it up. Please see how we are using it on express.com (i.e., https://www.express.com/clothing/men/garment-dyed-cotton-short-sleeve-shirt/pro/01702747/color/DARK BLUE/size/XX Large) and adjust your browser window to see how it is built to be fit sizes and widths.

First of all. As a full time react + typescript developer i am loving the idea of react first slider implementation. I using slick at the moment but maybe want to switch to this. For our slider implementations it is important to include slides with different heights while all slides have the same height. So different width x height ratios for each slide. Is this possible at the moment and how?

I too would love to switch from react-slick to this, but that lack of variable width slides is a real deal-breaker.
To be clear, we're talking about having a mix of slides with different widths at the same time, and not to be confused with having all the widths be responsive based on viewport width.  We can already do that bit using the visibleSlides or naturalSlideWidth props.  This is talking about letting each individual slide have its own width.


fix USE_SYSTEM_SQLite3 case

This typo prevents USE_SYSTEM_LIBRARIES from enabling sqlite3 in the final build without explicitly setting USE_SYSTEM_SQLite3

Good catch for the contribution and detailed explanation :pray:


 I am looking at assigning a license to a pproject.

Great job team! Let's ship it! 🚢 👍

@fatima-cy Thanks! 👍


How curriculum learning is implemented?

We thank the authors for publishing an open-source implementation of their paper. Looking at the repo, it is not immediately clear how curricula are implemented. Can the authors please clarify this point for work on a successor paper? Thank you very much.

It is done manually. We run the commands shown here in the README in sequence, waiting for each step to finish before starting the next one. Each corresponding configuration file contains the key model_path, which either is False (for random initialization) or points to a file that stores policy network parameters obtained from the previous curriculum step. We use those parameters to initialize the network. Please let me know if you have further questions.


Optimize reverse() string function with ASCII fast path

Is your feature request related to a problem or challenge?
Part of https://github.com/apache/datafusion/issues/12306
https://github.com/apache/datafusion/issues/12306 has introduced the rationale for ASCII fast path in detail
This optimization has already been implemented on char_length() string function and got some performance improvement.
(In PR https://github.com/apache/datafusion/pull/12356)
Describe the solution you'd like
Implement ASCII fast path for reverse() function
Describe alternatives you've considered
No response
Additional context
No response

take


Not displaying info (OS X)

Using macOS 10.14, mpv build with luajit
[discord] (mpv-ipc): /tmp/mpvsocket/mpv-discord-67018
[cplayer] Set property: input-ipc-server="/tmp/mpvsocket/mpv-discord-67018" -> 1
[discord] mpv-discord v1.3.1 by tnychn
[ipc] Starting IPC master
[ipc] Could not bind IPC socket

Is this a script or mpv's problem?

You need to run xattr -d com.apple.quarantine discord first otherwise Apple block the binary from runing, but now how can I display the info in discord(I'm think the script is running properly rn?)
[discord] Opened config file script-opts/discord.conf.
[discord] (mpv-ipc): /tmp/mpvsocket
[cplayer] Set property: input-ipc-server="/tmp/mpvsocket" -> 1
[discord] mpv-discord v1.3.1 by tnychn
[ipc] Starting IPC master
[ipc] Listening to IPC socket.

If you already have active=yes set in the config, then now it should work (rich presence shows up in Discord) when you are playing something in mpv. See if the messages [discord] (discord-ipc): connected and [discord] (mpv-ipc): connected are printed to console.

Ah, I can see
[discord] Opened config file script-opts/discord.conf.
[discord] (mpv-ipc): /tmp/mpvsocket
[discord] mpv-discord v1.3.1 by tnychn
[discord] launched subprocess

but not other logs, so it's still no working?

Now if I run  ./discord /tmp/mpvsocket manually after opening mpv everything works fine.

Since you said the binary works fine when you launch it manually, the problem should be related to mpv and its LuaJIT instead. Note that the prebuilt Darwin binary you found on releases is for AMD64 Mac. Though I don't think it can work on ARM Mac.

Ok, then it's a arm problme.


[Fix] revert --ssh-port to SSH_PORT

Issue #, if available:
Description of changes:
fix the error of --ssh-port in Dockerfile.local.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

There is already an apt-get update statement in line 5. One way to resolve this would be adding docker build --no-cache -f $GSF_HOME"docker/Dockerfile.local" . -t $DOCKER_FULLNAME in the build_docker_oss4local.sh file, this will build the image without caching and will solve the problem and we would not need the update commands in line 41 and 42.

Great! changed.


Show results based on Corona variation

Out of a statistical curiosity, it would be interesting to see how much of the patients, deaths, etc. are caused by which variations (delta, omicron, etc.) Not sure if this information is provided by the available data source or not, but if it is, it would be good to be incorporated.
It would perhaps also help the public's awareness.

There isn't a lot of public information being released about variants in Estonia at the moment as far as I know, apart from limited mentions in press releases from the Health Board. I can make some enquiries and find out whether there are any plans to release such data.
In the meantime, you may find the following page of interest. There is an entry for Estonia somewhere on the page.
https://covariants.org/per-country


Docker multihost networking with overlay driver --opt encrypted : cannot join secure network: encryption keys not present

Steps to repo:

Install Docker 1.12.2
Configure Swarm multihost networking using EXTERNAL KV store like Consul(NOT Swarm mode)
docker network create -d overlay --opt encrypted my_overlay
docker create nginx
docker network connect my_overlay <container_id created above>
docker start  <container_id created above> and you will get an error:

"Error response from daemon: cannot join secure network: encryption keys not present"
Note: If you leave out the "--opt encrypted" when created the overlay network, it works fine.

--opt encrypted is a Docker Swarm-mode only feature. It's not supported in classic Swarm. The problem is classic Swarm doesn't have encryption key management. Docker Swarm-mode has built-in key management, which includes built-in CA, key distribution channel, and key rotation procedure. This is outside the scope of classic Swarm so it's not able to support --opt encrypted.


Disable graceful shutdown in embedded Micro Integrator

Description:

We need to disable graceful shutdown in Embedded Micro Integrator, since it is used only for development purposes.
We can disable graceful shutdown with the following system property.
-DgracefulShutdown=false
Affected Product Version:
IS-7.1.0-Alpha

To check the effect, invoke the following API in embedded MI.
<?xml version="1.0" encoding="UTF-8"?>
<api context="/original" name="TestAPI" xmlns="http://ws.apache.org/ns/synapse">
    <resource methods="POST">
        <inSequence>
            <log level="full"/>
            <call>
                <endpoint>
                    <address uri="http1://www.mocky.io/v2/5ed7d60932000019d9274cb8">
                        <suspendOnFailure>
                            <initialDuration>-1</initialDuration>
                            <progressionFactor>1</progressionFactor>
                        </suspendOnFailure>
                        <markForSuspension>
                            <retriesBeforeSuspension>0</retriesBeforeSuspension>
                        </markForSuspension>
                    </address>
                </endpoint>
            </call>
            <respond/>
        </inSequence>
        <outSequence/>
        <faultSequence>
        </faultSequence>
    </resource>
</api>

And then if you try to stop MI, the following error would be thrown.

Fixed with https://github.com/wso2/devstudio-tooling-platform/pull/287/commits/1bac38a14fb477ad1922a114f9c5aa39bb843d92


Math to move mouse location during pointer lock was unneeded

Center of the viewPort for the mouse is (0, 0)

This makes sense. this.viewPort.offsetWidth and this.viewPort.clientWidth will be the same.


Unable to download (beta branch)

tried to use the tool and download the changes but i think this new update has broken it . works fine if your not in the beta branch,

This should be resolved now.


dhcpd / dhcpdv6 / radvd: "none" option for DNS servers

[+] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[+] I have searched the existing issues and I'm convinced that mine is new.
Is your feature request related to a problem? Please describe.
You might not want to offer DNS in some LANs. But DHCP replies as well as Router Advertisements always include DNS server addresses, so clients unsuccessfully send DNS queries to these addresses.
Describe the solution you'd like
I would like to be able to type "none" in the DNS servers input fields in services_dhcp.php, services_dhcpv6.php and services_router_advertisements.php. Or a "None" checkbox. This would then remove the DNS servers from dhcpd.conf / dhcpdv6.conf / radvd.conf.
Describe alternatives you've considered
Disabling Unbound and Dnsmasq and not configuring any global DNS servers works, but is typically not desirable.

The RFC's for ipv6 require a mandatory DNS in the Router Announcements unless it is set as route only.  I think that opnsense already has a "router only mode"
If a router announces the prefix then it is supposed to announce the DNS via RFC 8106 IPv6 Router Advertisement Options for DNS Configuration (RDNSS).
So there should be a warning, if you select "none" that you will not be in compliance with RFC 8200 (STD: 86) Internet Protocol, Version 6 (IPv6) Specification.

If a router announces the prefix then it is supposed to announce the DNS via RFC 8106 IPv6 Router Advertisement Options for DNS Configuration (RDNSS).

Interesting, I wasn't aware that this was made mandatory. Do you know in which section of which RFC?

RFC 8504 IPv6 Node Requirements Best Current Practice 220.
RFC 8504 is a list of which items are mandatory (MUST) vs optional (SHOULD) but then you have to veer off into the RFC's themselves.  A quick search for "must" in the RFC is pretty informative.
Basically the gist, is that the host client is only required by RFC to support RDNSS, so it becomes a mandatory part of the RA that assigns prefixes.
RFC 8106 IPv6 Router Advertisement Options for DNS Configuration (RDNSS)
RFC 8106 states that Hosts conforming to RFC4861 MUST extract DNS information from the RA messages, unless static DNS has been specified by the user. If there is DNS information available from multiple RAs and/or from DHCP, the host MUST maintain an ordered list of this information as specified in RFC 8106 Section 5.3.1. This section says that the host must maintain a table of the DNS and specifies the order they should be used.
Having an option for "none" is probably acceptable if you have another router in the system doing RAs or know what you are doing.  Sometimes less choices are better.
I assume that lack of reliable DNS servers was causing vendors to hard code google and such in their devices.
Quote from RFC8504:
`8.3.  IPv6 Router Advertisement Options for DNS Configuration - RFC 8106
Router Advertisement options have historically been limited to those
that are critical to basic IPv6 functionality.  Originally, DNS
configuration was not included as an RA option, and DHCP was the
recommended way to obtain DNS configuration information.  Over time,
the thinking surrounding such an option has evolved.  It is now
generally recognized that few nodes can function adequately without
having access to a working DNS resolver; thus, a Standards Track
document has been published to provide this capability [RFC8106].
Implementations MUST include support for the DNS RA option [RFC8106].`

I agree that it generally makes sense to include RDNSS information in RAs and of course this should remain the default. But I can't find any statement that says you MUST NOT disable that. There are valid use cases for RAs without RDNSS information. One of them is having multiple routers sending RAs (which you mentioned). Another one are managed LANs which exclusively use DHCPv6 for configuring addresses and options.
The "know what you are doing" part should be self-evident. OPNsense has many advanced features and will not stop you from shooting yourself in the foot.

Implementations MUST include support for the DNS RA option [RFC8106].
The problem is that LANs which "exclusively" use DHCPv6 for configuring addresses and options is an unsupported configuration per RFC.  If the O flag is set, then a host "SHOULD" get additional information from DHCPv6.  That is also true of the "M" flag.  You can see in the RFC that support for DHCPv6 is optional and there are many hosts that do not support DHCPv6 because it isn't required.
The RFC says that if DHCPv6 is available, it "SHOULD" be used. It accommodates DHCPv6 by making it higher priority.
RFC 8106 anticipates that both can be used and provides a precedence order for the hosts.
"5.3.1. Procedure in IPv6 Hosts
In the case where the DNS information of RDNSS and DNSSL can be
obtained from multiple sources, such as RAs and DHCP, the IPv6 host
SHOULD keep some DNS options from all sources."
. . . . .
"The DNS options from RAs and DHCP SHOULD be stored in the DNS Repository and Resolver Repository so that information from DHCP appears there first and therefore takes
precedence. Thus, the DNS information from DHCP takes precedence
over that from RAs for DNS queries. On the other hand, for DNS
options announced by RAs, if some RAs use the Secure Neighbor
Discovery (SEND) protocol [RFC3971] for RA security, they MUST be
preferred over those that do not use SEND. Also, DNS options
announced by RAs via SEND MUST be preferred over those announced by
unauthenticated DHCP [RFC3118]. Refer to Section 7 for a detailed
discussion of SEND for DNS RA options."

This issue has been automatically timed-out (after 180 days of inactivity).
For more information about the policies for this repository,
please read https://github.com/opnsense/core/blob/master/CONTRIBUTING.md for further details.
If someone wants to step up and work on this issue,
just let us know, so we can reopen the issue and assign an owner to it.


Client group: Finish API Conversion

We will work to finish converting our simple working string based client to a fully functioning API client.  This involves fixing how we parse the incoming message and using demarshal for read response.

@sacul29 @jdk514

This issue can be resolved. We are waiting on a demarshall function to continue. I will close this and reopen another one.

@sacul29 @kstats @jdk514 --  remember to close/open a new one with what you have left to do

Keep pushing on this, and convert client-kv.c to an actual API. Good work so far!


Modifiable ConnectionTimeout

I really love the project, it makes my work of managing multiple nodes way easier.
One gripe i have, is that some of my nodes, when put under heavy load, seemingly dont respond properly in time to not be timed out by the 5 second timeout window.
Thats why i would love a feature that lets me modify the parameters that are added to the shell command
Thanks for your work

Yeah I can definitely see the need for that. The current timeout was somehow determined arbitrarily.

Can you try whether this works for you: https://github.com/xpipe-io/xpipe_staging/releases/tag/1.5.3 . I decided to go for a global setting for now as adjusting that on a per connection basis is quite tedious.

Yeah that seems to work nicely for me
Thanks a lot


Action is not working on Github enterpise 3.6

Hello We are trying to use this action on github enterpise but having this error when I put URL of our domain.
Invalid project URL:  https://OURDOMAIN/OURORG/OURREPO/projects/1. Project URL should match the format [https://github.com///projects/<projectNumber]

Hi @bdzanko17 .  The add-to-project action applies to the newer GitHub Projects, not GitHub Projects (classic).  GitHub Projects are not available on GHES 3.6, but will be coming to GHES in the future.


xIisMimeTypeMapping: allow to add MIME type mapping for nested paths

I want to add a MIME type mapping for a virtual directory, but currently is only possible to add to the server level. I am wondering if would be a great idea to allow passing a desired configuration path, like this:
Configuration ConfigurationTest
{
    Import-DscResource -ModuleName xWebAdministration

    xIisMimeTypeMapping MimeTypeMapping
    {
        Ensure            = 'Present'
        ConfigurationPath = 'IIS:\Sites\Default Web Site\Dir01'
        Extension         = '.dummyext'
        MimeType          = 'text/dummy'
    }
}

This is a breaking change because a new mandatory parameter would be added. I already have the code fix.
Does it make sense?

@rosberglinhares I used the updated resource in your fork and it works great.  Are you going to submit a PR for this?

Yes @regedit32, for sure! Once I have time I will do it ok?

@rosberglinhares It is a breaking change if we add another mandatory parameter. I labeled this issue as such, just prefix the PR title with 'BREAKING CHANGE:' and the change log entry the same. Looking forward to your PR! 🙂

@rosberglinhares do you mind if I take your branch and create a PR?  I have a local version that my team has been using.  I can't remember, but I think I did some cleanup as well.
@johlju In general, what is the protocol for issues/pull requests that are abandoned?  Can anyone pick it up and continue it?  I don't want to steal any credit, but I'd like some of these changes to be public.

@regedit32 Yes, anyone is allowed to pick up abandoned PR's. PR's get automatically abandoned after 14 days if there a no activity on the PR.

If the original contributor is unable to continue the work on a pull request, or if the pull request is abandoned for a long time, then there is a possibility for you to continue the work.
...
It's important that when you create a new pull request from someone else's work, that you mention the original pull request, and also acknowledge the original author and mention the work it is based on. For example mention the original author in the descriptive field when you create the new pull request.
https://github.com/PowerShell/DscResources/blob/master/GettingStartedWithGitHub.md#how-to-continue-working-on-a-pull-request-when-an-author-contributor-is-unable-to-complete-it

I see the phrasing "then there is a possibility..."  is wrong, should say "then anyone in the community can continue the work". Also, I think it should say that it is polite to tell the author that the PR is being continue by another. Opening an issue to update the text in DscResources.

@regedit32 Saw that the question was regarding issues too... I would say that the same applies here, if nothing happens for a while (2 weeks sounds reasonably), it's okay for anyone to pick up an issue an run with it, regardless of in progress.
I have recently been thinking that I should not set issues in 'In progress' until a PR is submitted. Setting it as 'in progress' was to help contributors not working on the same issues, but there are so many abandoned 'in progress' issues without PR's.

@regedit32 If you want to work on this issue and @rosberglinhares doesn't respond until tomorrow, then I say, run with this issue.


Boundary parameter in Feature context

Hello there,
first of all, thank you so much for the clean and practical example of EBI. I'm a newbie and it helps me tremendously to get started by looking at how you built this douche app :)
I have a question regarding the use of the boundary parameter in the behat.yml and in the FeatureContext, while loading the helpers.
From my newbie point of view, it seems like when the end-to-end profile is run, then the boundary is always http and not app, so I don't get why checking both for the tag @end-to-end-available and for the value of boundary.
Why not checking only (simply) for the tag?

@hub20xx been a while since I wrote that, but I think not all tests have end-to-end steps written, so when the end-to-end profile is run, it's kind of like setting the preferred boundary to http. The conditional is then doing "if they have said they would prefer http and the current scenario supports end to end, use http".

@davedevelopment Thank you for your feedback. Yes it's been a while ;)
I guess my question came from the observation, that the end to end behat profile has always the boundary set to http and always uses the @end-to-end-available tag, so it looks like checking both was kind of redundant. I could not see the use of the boundary parameter elsewhere so I was wondering if I was missing something.

Ah sorry, I see what you mean. Yes, looking at it, that check is redundant with the profiles in the setting file, but I guess I wrote it thinking it may be a possibility? I don't know :)

Thank you for your answer. I wanted to make sure I was not missing something else. :)
I'm using your code to build a small app based on EBI and I'm learning so much from reading and following the code of this doucheapp.
Thank you very much for sharing it!


➖ Remove bo4e from dependencies 🎉

projects which use bomf will most likely still use bo4e (be it directly or indirectly). but here it's not necessary as a package dependency any more.
should make dependency managment less complicated downstream

Haste etwa noch nicht auf Python 3.12 upgegraded? :P


Hide "Whoa! What's going on here?" permanently after it's been dismissed

The X seems to indicate that after you close it, it'll go away, but whenever you reload the page or open in a different window it comes back
If #1487 is done then there should be a place to access all of this still.

It shows up when you are not logged in. It's too big IMO (and not pretty enough). I needed something ASAP and that fit the bill.

We need to set a cookie saying you've dismissed it. Then it won't reopen, even if your not logged in

If login persistence was fixed 100% it would be less of an issue. ;)

On #1142 you were claiming that it's a good idea to log people out after two days, or a week, of inactivity. Wouldn't this mean they get Whoa'd whenever that happens (which will be at least once every 4 months, probably more often)?
But maybe that comment was tongue-in-cheek. Anyway, I think @zwrawr's suggestion is the way to go. Or even use local storage, because this bit of data doesn't need to travel to the server.

I think the "Whoa" is ugly, and when it's something more interesting,
that'll help.
One of the worst things on the internet is when you see an ad for the same
thing every time. Though this isn't an ad, it's similarly annoying.
On Fri, Apr 20, 2018, 04:29 Thomas ten Cate<EMAIL_ADDRESS>wrote:

On #1142 https://github.com/ludumdare/ludumdare/issues/1142 you were
claiming that it's a good idea to log people out after two days, or a week,
of inactivity. Wouldn't this mean they get Whoa'd whenever that happens
(which will be at least once every 4 months, probably more often)?
But maybe that comment was tongue-in-cheek. Anyway, I think @zwrawr
https://github.com/zwrawr's suggestion is the way to go. Or even use
local storage, because this bit of data doesn't need to travel to the
server.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ludumdare/ludumdare/issues/1488#issuecomment-383024558,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABf2CW7MabHYpdo0ZmoeZvee6iUDIumFks5tqZxpgaJpZM4Q4Ksm
.

An extremely simple stopgap to make this less jarring: remove the header "Whoa! What's going on here?", and make "We're making video games!" into a header instead.
Because when I arrive on an unknown website, "Whoa" is not usually my first reaction -- and if it is, it's usually in a bad way ;) Or if the site is saying "Whoa" because I'm visiting it -- that doesn't come across as very welcoming either :)


googlebot_site_map now only accessed via webapp server

so urls in sitemap_index.xml have been updated with weapp base urls.

👍


log: add debug logs for webhook

Codecov Report

Merging #1380 (0e50416) into main (baefae3) will increase coverage by 0.00%.
Report is 7 commits behind head on main.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main    #1380   +/-   ##
=======================================
  Coverage   99.98%   99.98%
=======================================
  Files         315      315
  Lines       22044    22064   +20
=======================================
+ Hits        22040    22060   +20
  Misses          2        2
  Partials        2        2

Files Changed
Coverage Δ

internal/blockchain/ethereum/ethereum.go
100.00% <100.00%> (ø)

internal/events/webhooks/webhooks.go
100.00% <100.00%> (ø)

... and 2 files with indirect coverage changes


[Suggestion] port to 1.15

i'd love to see this mod in 1.15
could you make it possible?

I would love to see this happen, and I'm missing the nice TPD under Forge already. :(


Deis Telegraf uses way too many Resources

This is the usage of telegraf pods in my k8s cluster, I use AWS m4.xlarge instances as nodes

We have about 25 apps in Deis and about 42.000 RPM on it.
Is it normal that telegraf pods use this much resources?

What version of workflow are you using? We fixed a memory leak this last
release.
On Oct 29, 2016 4:43 PM, "Felipe Cavalcanti"<EMAIL_ADDRESS>wrote:

This is the usage of telegraf pods in my cluster, I use AWS m4.xlarge
instances as nodes
[image: image]
https://cloud.githubusercontent.com/assets/285782/19832621/29b71b30-9e07-11e6-912f-c8f7216c090c.png
[image: image]
https://cloud.githubusercontent.com/assets/285782/19832623/371ba246-9e07-11e6-8b8e-27a909bc507a.png
We have about 25 apps in Deis and about 42.000 RPM on it.
Is it normal that telegraf pods use this much resources?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/deis/monitor/issues/159, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAaRGB3o7A_cAMJxNEsnz7yCC_MCu9S4ks5q46_tgaJpZM4KkNpP
.

ping @felipejfc, can you try upgrading to v2.8.0?

I'm going to close this ticket due to inactivity, but please re-open if this still needs to be addressed. Thanks!


Add task retry info in job detail page

Add a new page to show task attempts of a single task ({jobAttempt}/{taskrole}/{taskIndex})

Reorg the job detail page UI. Mainly in taskrole sections

Coverage remained the same at 34.276% when pulling 30cdd61d383871aadd4850438d68482d0c4321fd on mintao/task_retry into fe8d1eef5f67a018d0aac7618d80ee770af5edb0 on master.

After job submission, the waiting job detail page is empty (without any info, such as loading)

Perf test for a job with 2k tasks, 10 job attempts and each task 10 task attempts?

After job submission, the waiting job detail page is empty (without any info, such as loading)

fixed

Perf test for a job with 2k tasks, 10 job attempts and each task 10 task attempts?

This test should cop with @suiguoxin and @hzy46 . Could we put it in bug bash?

})}`;

Add seconds precision ?

Refers to: src/webportal/src/app/job/job-view/fabric/job-detail/util.js:30 in eadc3f6. [](commit_id = eadc3f6a6ca960c5aefcf38b5fdb5bfd3fae0ca0, deletion_comment = False)

})}`;

Reuse this func?

In reply to: 709839793 [](ancestors = 709839793)

Refers to: src/webportal/src/app/job/job-view/fabric/job-detail/util.js:30 in eadc3f6. [](commit_id = eadc3f6a6ca960c5aefcf38b5fdb5bfd3fae0ca0, deletion_comment = False)

return dt.toLocaleString(DateTime.DATETIME_MED);

DATETIME_MED_WITH_SECONDS

Refers to: src/webportal/src/app/job/job-view/fabric/job-detail/util.js:32 in eadc3f6. [](commit_id = eadc3f6a6ca960c5aefcf38b5fdb5bfd3fae0ca0, deletion_comment = False)

})}`;

Reuse this func?
In reply to: 709839793 [](ancestors = 709839793)
Refers to: src/webportal/src/app/job/job-view/fabric/job-detail/util.js:30 in eadc3f6. [](commit_id = eadc3f6, deletion_comment = False)

Prefer directly use toLocaleString instead of show xxx ago, this might be only useful in job detail summary

Seems this is a frontend bug. For running job: https://int-bed/job-detail.html?username=binyli&jobName=binyli_d7c19d1a, job detail page can not show.

Seems this is a frontend bug. For running job: https://int-bed/job-detail.html?username=binyli&jobName=binyli_d7c19d1a, job detail page can not show.

fixed

Add time?
See RestServer Time Mapping in 1note

Add time?
See RestServer Time Mapping in 1note

done

          </Link>

View Exit Diagnostics is from appExitDiagnostics/appExitSpec, so it is app (i.e.  job attempt level) info, so it should be moved to Job Attempt Section (i.e. under Job Attempt Index)

Refers to: src/webportal/src/app/job/job-view/fabric/job-detail/components/summary.jsx:510 in 2d2a7ff. [](commit_id = 2d2a7ffe1b9139e04390e7ebdc74185b13c924b4, deletion_comment = False)


Terms

Description
@thestarsahil
[Feature] : Design Terms Page #643
Please include a summary of the change and which issue is fixed. List any dependencies that are required for this change.
Fixes #643 (issue_no)
Replace issue_no with the issue number which is fixed in this PR
Screenshots

Checklist

[x] Tests have been added or updated to cover the changes
[x] Documentation has been updated to reflect the changes
[x] Code follows the established coding style guidelines
[x] All tests are passing

@thestarsahil
kindly please check this and merge it

/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js:87
throw new Error(
^
Error: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try npm i again after removing both package-lock.json and node_modules directory.
at requireWithFriendlyError (/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js:87:9)
at Object. (/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js:96:76)
... 3 lines matching cause stack trace ...
at Module._load (node:internal/modules/cjs/loader:1024:12)
at cjsLoader (node:internal/modules/esm/translators:348:17)
at ModuleWrap. (node:internal/modules/esm/translators:297:7)
at ModuleJob.run (node:internal/modules/esm/module_job:222:25)
at async ModuleLoader.import (node:internal/modules/esm/loader:316:24) {
[cause]: Error: Cannot find module '@rollup/rollup-linux-x64-gnu'
Require stack:

/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1145:15)
at Module._load (node:internal/modules/cjs/loader:986:27)
at Module.require (node:internal/modules/cjs/loader:1233:19)
at require (node:internal/modules/helpers:179:18)
at requireWithFriendlyError (/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js:69:10)
at Object. (/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js:96:76)
at Module._compile (node:internal/modules/cjs/loader:1358:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
at Module.load (node:internal/modules/cjs/loader:1208:32)
at Module._load (node:internal/modules/cjs/loader:1024:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/workspaces/Counsellor-Web/node_modules/rollup/dist/native.js' ]
}
}

Node.js v20.14.0
Still again >?

update the lastest branch in your system then push

ok

@thestarsahil
now you can merge this
Build Success
i removed node modules, package.json and pull from master

packjson conflict !
resolve it

@thestarsahil
now you can merge it

@thestarsahil
please  check this and merge it

Not working try again

@thestarsahil
can you please send me screenshort of deployment error ?

@thestarsahil
i pulled from upstream and it open perfectly in my browser
can you please try npm i again after removing both package-lock.json and node_modules directory in your directory
because website open perfectly in my browseer

Do one thing just pull the latest change and  create a new PR , then push all !


Urls equal to Jekyll

Generates urls exactly as Jekyll does.
It has still some drawbacks, because I use the "slugged" title and this may be different from what Jekyll does, but it will be closer.
In addition, it imports the option "PRETTY URLS"
I've increased the plugin version too.

PS. Nobody cares about plugin version.


Change color of view without using :aesthetic_ignore tag

[x] I have verified there are no duplicate active or recent bugs, questions, or requests
[x] I have verified that I am using the latest version of Aesthetic (see the README).
[x] I have given my issue a non-generic title.
[x] I have read over the documentation (before asking questions on how to do something).

If this is a feature request, you can clear everything below.
Include the following:

Affected device(s): Motorola Moto G5 Plus

Is it a way to change the color of views (text, background, hint, etc) without using :aesthetic_ignore tag?
Like finding views inside libraries view to change colors
val searchEdit = searchView.findViewById(R.id.edittext_search) as EditText
searchEdit.inputType = InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS
searchEdit.textColor = ContextCompat.getColor(this, android.R.color.black)
searchEdit.hintTextColor = ContextCompat.getColor(this, android.R.color.darker_gray)

Reproduction Steps
Try to change colors of a view without :aesthetic_ignore tag
Expected Result
The colors change
Actual Result
The colors don't change

I use a library that can take colors directly from xml but using Aesthetic changes the EditView to primary dark/light colors, but the background is always white so when my app is in dark mode the text ends in white with white background

Yes, it uses the configurable text color primary or text color secondary values by default, unless your XML specifies something different.

So in cases like this when you use a library that wrap some views instead of extending a single one?


Update Project.toml

Codecov Report

Merging #58 (264af85) into master (54d7df3) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master     #58   +/-   ##
======================================
  Coverage    0.15%   0.15%
======================================
  Files          45      45
  Lines         664     664
======================================
  Hits            1       1
  Misses        663     663

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 54d7df3...264af85. Read the comment docs.


Create components using dependency injection

From what I see, it would be changing this line: https://github.com/aspnet/Blazor/blob/5be754e75def0c4134e379a6440c6b284828f01e/src/Microsoft.AspNetCore.Blazor/Components/ComponentFactory.cs#L35
Another change would be to allow for interfaces that derives from IComponent in the language service.
The usecases are the following:

Allow for code only components to use constructor injection. The property injection support was native in Asp.Net core while it was in its early stages and was later removed to make the DI simpler and more focussed. This seems to be a step backwards.

Allow this pattern:

//In assembly A
public interface IMyComponent : IComponent { int SomeParameter{get;set;} }

//In assembly B
public class MyComponent: BlazorComponent, IMyComponent { }

//In the blazor app:

//Setting up dependency injection
class Program
{
    static void Main(string[] args)
    {
        var serviceProvider = new BrowserServiceProvider(configure =>
        {
            //Potentially load implementation dynamically here
            configure.Add(ServiceDescriptor.Transient(typeof(IMyComponent), typeof(MyComponent)));
        });
        new BrowserRenderer(serviceProvider).AddComponent<App>("app");
    }
}

//in cshtml page
<IMyComponent SomeParameter="22" />

How would this be useful: it would become possible to expose components as a contract between multiple assemblies, potentially multiple repositories. This could become the base for a micro-ui architecture where each service could expose their UI components as a contract thus removing the need for a fully pre-built application and allowing dynamically loading components for A/B testing or for testing new features behind feature flags.

We have no plans to do this for this release.


Support for Vulcan TKL

Hi,
i was wondering if u could add Support for the Vulcan TKL Keyboard?

Isn't the Vulcan TKL the same device with just different switches? doesn't the available Vulcan class work? Have you tried changing the productId to your custom device?

there was an error saying that this device is not connected, but my RoccatSense worked so i guess the TKL version needs eytra support

is your keyboard shown in one of the lists generated in Line 10 & 13 of deviceHelpers.js?

yes

hm that really looks like the TKL works differently. Since I don't own a TKL keyboard I'd suggest you clone the repository and try changing the constants for the keyboard interfaces. If it works I can add support for it :)
const VULCAN_LED_INTERFACE = 3;
const VULCAN_CTRL_INTERFACE = 1;
const VULCAN_CTRL_USAGEPAGE = 10;

sure i will give it a try :3

I tried all TKL combinations in this list but it didnt work:
(i set the VULCAN_CTRL_USAGEPAGE to the usagePage number and  VULCAN_CTRL_INTERFACE/VULCAN_LED_INTERFACE to the interface number id this is the correct approach?)
[
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_01&col04#8&72d097&0&0003#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 1,
    usagePage: 10
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_03#8&15ad6222&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 3,
    usagePage: 1
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_01&col02#8&72d097&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 1,
    usagePage: 12,
    usage: 1
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_02#8&28dd7e60&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 2,
    usagePage: 1,
    usage: 7
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_01&col05#8&72d097&0&0004#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 1,
    usagePage: 11
  },
  {
    vendorId: 7805,
    productId: 11815,
    path: '\\\\?\\hid#vid_1e7d&pid_2e27&mi_01#8&11b66868&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\kbd',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Kone Aimo',
    release: 256,
    interface: 1,
    usagePage: 1,
    usage: 6
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_01&col03#8&72d097&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 1,
    usagePage: 1,
    usage: 128
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_00#8&13a2ecd5&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\kbd',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 0,
    usagePage: 1,
    usage: 6
  },
  {
    vendorId: 7805,
    productId: 11815,
    path: '\\\\?\\hid#vid_1e7d&pid_2e27&mi_00&col01#8&3a211631&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Kone Aimo',
    release: 256,
    interface: 0,
    usagePage: 1,
    usage: 2
  },
  {
    vendorId: 7805,
    productId: 11815,
    path: '\\\\?\\hid#vid_1e7d&pid_2e27&mi_00&col02#8&3a211631&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Kone Aimo',
    release: 256,
    interface: 0,
    usagePage: 12,
    usage: 1
  },
  {
    vendorId: 7805,
    productId: 11815,
    path: '\\\\?\\hid#vid_1e7d&pid_2e27&mi_00&col03#8&3a211631&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Kone Aimo',
    release: 256,
    interface: 0,
    usagePage: 1,
    usage: 128
  },
  {
    vendorId: 7805,
    productId: 12270,
    path: '\\\\?\\hid#vid_1e7d&pid_2fee&mi_01&col01#8&72d097&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Vulcan TKL',
    release: 256,
    interface: 1,
    usagePage: 1,
    usage: 2
  },
  {
    vendorId: 7805,
    productId: 11815,
    path: '\\\\?\\hid#vid_1e7d&pid_2e27&mi_00&col04#8&3a211631&0&0003#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Kone Aimo',
    release: 256,
    interface: 0,
    usagePage: 10
  },
  {
    vendorId: 7805,
    productId: 11815,
    path: '\\\\?\\hid#vid_1e7d&pid_2e27&mi_00&col05#8&3a211631&0&0004#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Kone Aimo',
    release: 256,
    interface: 0,
    usagePage: 11
  },
  {
    vendorId: 7805,
    productId: 13371,
    path: '\\\\?\\hid#vid_1e7d&pid_343b&mi_00&col01#8&81b7a67&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    serialNumber: '000000000000',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Aimo Pad Wide',
    release: 256,
    interface: 0,
    usagePage: 1,
    usage: 2
  },
  {
    vendorId: 7805,
    productId: 13371,
    path: '\\\\?\\hid#vid_1e7d&pid_343b&mi_00&col02#8&81b7a67&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    serialNumber: '000000000000',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Aimo Pad Wide',
    release: 256,
    interface: 0,
    usagePage: 65281,
    usage: 1
  },
  {
    vendorId: 7805,
    productId: 13371,
    path: '\\\\?\\hid#vid_1e7d&pid_343b&mi_01#8&1bbbc35b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    serialNumber: '000000000000',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Aimo Pad Wide',
    release: 256,
    interface: 1,
    usagePage: 65280,
    usage: 1
  },
  {
    vendorId: 7805,
    productId: 13371,
    path: '\\\\?\\hid#vid_1e7d&pid_343b&mi_02#8&3f83716&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}',
    serialNumber: '000000000000',
    manufacturer: 'ROCCAT',
    product: 'ROCCAT Aimo Pad Wide',
    release: 256,
    interface: 2,
    usagePage: 65282,
    usage: 1
  }
]

It's a little bit tricky, since the Vulcan resolves to a control device (with interface id & usagepage) and a seperated led device with different ids (there are two slightly different methods in deviceHelpers.js).
The approach is correct, i did exactly the same.

have you tried any further? have you been successfully?

I gave up because everything i tried resulted in errors I didn't understand


error when invoking gt

Hi,
first I have to admit I'm a real newbie concerning the use of manually built libraries and commands. Nevertheless I suceeded in building gt without errors on my raspberry but now when I want to invoke gt it ends up either with "Error reading configuration /etc/gt//gt.conf". Probably some mismatch with my folders?
And one more question: my background for trying gt is that I'd like to use my raspberry simultaneously as an usb audio gadget (g_audio) and as a serial device (g_serial). Do you think this should work when I'm using gt?
Thanks and best regards,
Johannes

seems to be the same as "Silent failure if no configuration file found"

The issue you are referring to is #9 (mentioning to link up the tickets).
Your use-case sounds like it would work, I haven't tried it though.


Implement tbDEX Resource parsing

Given a JSON payload, parse into a tbDEX Resource object

we'll only currently offer parsing at the resource-kind level (offering or balance) and not at the resource level (although we could make it work, it's not what we expose in other SDKs and it's unclear if it would be valuable. closing this ticket, will open distinct tickets for the given parsers needed.


[test] Fix resolvable error

Even though test worked, it failed to resolve in eclipse and showed an error.  Adding full path to clear error.

@hazendaz ,
Could this be a plugin issue?

Not entirely sure.  This is what the error states "Select with id='selectPostsById' not found."  Once fully qualified it goes away.  I made the fix about a year ago.  I'm using latest Eclipse and everything in it is up-to-date.  The error persists and is only highlighted 'red' error in mybatis-3.
Better question: Does the test intend to test without it fully qualified on purpose?

@hazendaz ,
I checked the source and you are right.
The incorrect select reference does not seem intentional and this PR should be merged.

@harawata Thanks for confirming.  I'm merging now.


fix(react): ignore prop-types symbol check

...in config proxy, to prevent warnings concerning a missing
"@@toStringTag"-property.

bors merge


Problem when cropping + resizing + rotating

What's the correct order to get this working? I pretty much tried all variations and nothing seems to produce expected result.
The top is what the picture should look like after the operations but below is how it actually crops it.
My front end library sends this information to the back end. Without the rotate operation the cropping works perfectly.
Here is how I process this with intervention
$img->resize(840, 1002)->crop(800, 400, 13, 276)->rotate(45)
img_initial_width: 335
img_initial_height: 400
img_width: 840
img_height: 1002.9850746268656
img_y1: 276
img_x1: 13
crop_h: 400
crop_w: 800
rotate: 45

Sorry, I don't understand, what you are trying to do.

I have a JS library where the user can upload a picture.
This JS library then allows to rotate and zoom the picture so that it fits within a specific WIDTH and HEIGHT. When the user submits all this information is sent to intervention to process the image.
From the image shown above the first image is the modifications the user sees after selecting the image, zooming and rotating. The image is enclosed within this fixed WIDTH and HEIGHT rectangle.
When I sent all this information back to intervention the resize and cropping works great but as soon as I add rotation to the chain of events then everything gets messed up and I end up with the second image shown above which is not processed correctly.

Is it possible that the rotation function is Interpreted differently by the JS lib and Intervention Image? Looks like it rotates but keeps the size, while PHP rotates and resizes the boundaries.

Do you have any suggestions how I could get this working? Because the resizing and cropping of intervention given the information from the JS library works perfectly. But when I add rotation information (which is just an integer passed to intervention) representing an angle then it breaks.

i have the same isue

Unfortunately I still don't have a solution for this. It does seem like a bug to me as it's supposed to be chain able features but these two together don't work.

I was also struggling with this, but in my case the solution was surprisingly simple: first rotate, then crop.
Change
$img->resize(840, 1002)->crop(800, 400, 13, 276)->rotate(45)

to
$img->resize(840, 1002)->rotate(45)->crop(800, 400, 13, 276)

Hope it is of help to anybody!


Complete Rewrite to C#

I am planning on rewriting alt app installer to a C# (windows app sdk) app. The reason for doing this is due to the following advantages:

Improved performance
Reduced resource usage
Better API Support for windows-based tasks
More native support for arm-based devices
Easy to package and distribute

In the re-write I am planning on making alt app installer more like a store, currently we open a browser window and select the app instead I am planning on doing this via API similar to how Microsoft store does it. and introduce features like updates for installed apps etc. I am not sure how long it will take or how much of my goals are feasible. So, I won't be doing any major changes to alt app installer in the mean time but if you spot some bug feel free to open a issue, for new features if you are willing to implement them be sure to open a PR.
As mentioned above the new re-write will be much more than an installer so I am thinking of giving it a new name so if you have any name in mind share it here also feel free to give suggestion regarding new features you think will be useful.

How is "Win Store" for the name ?

What about "Macrohard" for the new name 🤭 cuz It's like the opposite of microsoft
Or instead of Windows you could call it "LoseDos"

Win Shop Channel? :>

this is great idea since python has so many errors

Will you fix the error of apps who need dependencies?

Will you fix the error of apps who need dependencies?

the dependency error is more like a warning. in most cases these dependency are already installed on the device and when alt app installer tries to install them again it fails and this error is displayed

Alt Store seems better

Alt Store seems better

there already exist an alt store i also had that name in my mind first but its taken its a store for mac apps


terraform for Morphic setup

I can prioritize this from September 4.

Kamino closed and cloned this issue to morphic-bio/data-ingestion-development


Problem with multiple hombridge instances

I use this plugin in the first instance. If i create a second hombridge instance, the plugin tryes to load the infos from the config.json. I think, it is similar to this  https://github.com/nfarina/homebridge/issues/1160 have you a solution for this?

hmm... I am not sure if I can do anything for this because the plugin just reads the config given by homebridge. So it's up to homebridge to decide how it reads the config file.

But if i start a second homebridge instance with a different path for the config.json and no dyson accessories in it, the plugin regardless tries to load the dyson device. Other plugins don‘t do this.

Thanks for the log, I think i may be able to fix this then.
Will let you know once I have a patch for this.

Thank you very much for your work.

Just tried to fix that, when you have a chance, you may try the v1.7 for that

Works now! Thank you very very much!


Dart library 'dart:html' is not available on this platform.

Today I started getting an error

• Flutter version 3.16.1
• Dart version 3.2.1
• DevTools version 2.28.3
• CocoaPods version 1.14.3

The problem was in import 'package:mobile_scanner/mobile_scanner_web.dart'
Please close issue


Make dataone-indexer work with java 11

Now when we use the indexer to index object under java 11, we get the error when the indexer tried to get the system metadata based on the dataone API call.
It seem the jaxbUnmarshaller cannot transform an input stream to a SystemMetadata object.

It turns out that java 11 removed the jar files to support jaxb and we need to add them in the pom.xml file. I tested on both java 11 and 8, and dataone-indexer worked. So now it supports both java 11 and 8.
        <!-- API, java.xml.bind module -->
        <dependency>
            <groupId>jakarta.xml.bind</groupId>
            <artifactId>jakarta.xml.bind-api</artifactId>
            <version>2.3.2</version>
            </dependency>
        <!-- Runtime, com.sun.xml.bind module -->
        <dependency>
            <groupId>org.glassfish.jaxb</groupId>
            <artifactId>jaxb-runtime</artifactId>
            <version>2.3.2</version>
        </dependency>


Add Trash tag to FoodBadRecipe

This is mainly for the deep fryer, so these waste items don't pile up.
:cl:

fix: Burned food can now be destroyed in the recycler.

I'm making a note to send this to upstream.


KeyError: '2' when executing add_graph()

Hi, I've just installed pytorch 0.4 and the demo_graph.py works normally.
When I try to use this add_graph function for my own model, the following error exists.

Thanks for your time

Hi, can you show the output of w.add_graph(actor, (dummy_input,), verbose=True) ?
I guess some operators are not supported for tracing yet.

https://github.com/pytorch/pytorch/issues/5101


Create framework for testing and releasing this as a package when new features are added

For this I would like to setup github actions to type check and validate builds and then automatically push to pipy.

Create Setup.py and other build tools to ensure it can be installed easily from pipy
Ensure everything is typed well to ensure it's easy to test for validity
Setup linting and pre-commit tooling

While I don't have a framework (waiting to implement GitHub Actions) I'll be closing this as I have a process in place now.


MP3 doesnt work.

It sais in the log that MP3 format is not available.. how to fix that?

Hello, this library is just a convenient Node.js integration for using https://github.com/yt-dlp/yt-dlp, so you should to read the doc there 🙂


NPM you cannot fetch versions for scoped packages

Easily reproduced:
git@github.com:mcollina/hello-fastify.git
cd hello-fastify
dockter compile .

This occurs with more libraries than just this one, but any fastify project will fail because of it.
oops, sorry something went wrong :(
Please help us fix this issue by posting this output to https://github.com/stencila/dockter/issues/new
  args: compile .
  version: 0.14.2
  platform: darwin
{ HTTPError: Response code 401 (Unauthorized)
    at EventEmitter.module.exports.emitter.on (/snapshot/dockter/node_modules/got/source/as-promise.js:77:19)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
  name: 'HTTPError',
  host: 'registry.npmjs.org',
  hostname: 'registry.npmjs.org',
  method: 'GET',
  path<EMAIL_ADDRESS>  socketPath: undefined,
  protocol: 'https:',
  url<EMAIL_ADDRESS>  statusCode: 401,
  statusMessage: 'Unauthorized',
  headers:
   { date: 'Fri, 22 Feb 2019 03:18:31 GMT',
     'transfer-encoding': 'chunked',
     connection: 'close',
     'set-cookie':
      [ '__cfduid=d66413d1c45fb69846449a3cd75e9aae51550805511; expires=Sat, 22-Feb-20 03:18:31 GMT; path=/; domain=.registry.npmjs.org; HttpOnly' ],
     'cf-ray': '4ace4e4f1917655d-SYD',
     'expect-ct': 'max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"',
     'npm-notice': 'ERROR: you cannot fetch versions for scoped packages',
     vary: 'Accept-Encoding',
     server: 'cloudflare' } }

@Keidrych : thanks for the bug report. Looks like we need to fetch *, instead of an explicit version, for any scoped package. e.g.

<EMAIL_ADDRESS>: fails
https://registry.npmjs.org/@types%2Fnode/* : works

See https://github.com/npm/registry-issue-archive/issues/34#issuecomment-385420471 for an example of where others have has this issue.
Should be an easy fix - if (name[0] === '@') version = '*' just before https://github.com/stencila/dockter/blob/438dcd7fee7cfdd0dc2a31db17bb201d9f5ef3c6/src/JavascriptParser.ts#L125 perhaps?

Thanks again for the bug report. A fix has been made and is available in the latest release https://github.com/stencila/dockter/releases/tag/v0.14.3


remove a StorableAccounts impl

Problem
stop mmapping storages.
Summary of Changes
For simplifying apis and optimizing implementations, remove an impl of StorableAccounts. This helps us better test and optimize the other impls.
Fixes #

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

Project coverage is 81.9%. Comparing base (f121f73) to head (683a075).
Report is 20 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #936   +/-   ##
=======================================
  Coverage    81.9%    81.9%
=======================================
  Files         853      853
  Lines      231779   231814   +35
=======================================
+ Hits       189829   189864   +35
  Misses      41950    41950


Latency collector reference implementation

Separate application that instruments a small subset of RPC calls at a 1 minute interval.

Logon
List markets
Logout

Should be installed as a windows service.
Must be autoupdatable.
Needs to serve as a reference application for other latency data collector implementations to copy.

What credentials it should use? Demo account will require periodic renewal.

XX870869 / password.
This is a test account tied to the Latency Test account operator.
It shouldn't expire.
On 27 February 2012 05:46, fandrei <
<EMAIL_ADDRESS>
wrote:

What credentials it should use? Demo account will require periodic renewal.

Reply to this email directly or view it on GitHub:
https://github.com/fandrei/AppMetrics/issues/31#issuecomment-4188371

--
David Laing
Open source @ City Index - github.com/cityindex
http://davidlaing.com
Twitter: @davidlaing


updated libs, updated styles to avoid crash of the app

Thanks for this. I'll create a release soon making sure the library is still working as intended.


Adding ability to run latest argo workflow template

Allow triggering the latest workflow of a specific project, branch or template_name_prefix.

TODO: Unit test / integration tests are still missing. I'll make sure they are added prior to merging.
Meanwhile, please let me know how you feel about the approach here.

Pending merge on integration test results.


Despite encountering the error message 'Failed while: Wait for Condition: InitialRolesPopulated: True' during the creation of downstream EKS clusters in Rancher Manager, the downstream clusters are still created in AWS

Rancher Server Setup

Rancher version: 2.6.10
Installation option (Docker install/Helm Chart): Helm

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc): RKE2

Issue Description:
The issue reported is related to the failure of creating a downstream EKS cluster from Rancher Manager. When attempting to create the cluster, the process fails with the error message "Failed while: Wait for Condition: InitialRolesPopulated: True". This issue  1 has been previously reported and is known to the Rancher Manager development team .
However, a new variation of the issue has been identified. In this case, the EKS cluster is created behind Rancher Manager without Rancher Manager's knowledge, but still shows the same error message. This presents a significant problem as it indicates that the issue is not isolated to the Rancher Manager's creation process, but also affects externally created EKS clusters.
This issue is affecting the functionality and reliability of the Rancher Manager.
Attaching Screenshots, rancher and eks controller logs.
eks-config-operator.log
Uploading rancher_pod.log…

I've transferred this issue to the rancher/dashboard repo so we can tackle it from the UI side. AKS has since been ported to the new codebase, but this bug can be reproduced there too. It looks like we need to implement something similar to https://github.com/rancher/dashboard/pull/6127 but for this wait. We should apply this fix to GKE and EKS as well

Closing as duplicate of https://github.com/rancher/dashboard/issues/9837


WIP: Move plugin to ftdetect,ftplugin

Optimize startup by delaying filetype-dependent code until the user opens a powershell file.

thanks @janlazo for the patch!
I didn't know much about the folders other than the usual plugin, autoload :)

@janlazo could you please rebase this on the latest merge? We were working on some improvements on pwsh version selection.

hmm, perhaps this can be merged directly.


%load does not work in .ipynb, equivalent actions don't work in .py

Environment data

VS Code version: 1.51.0
Extension version (available under the Extensions sidebar): v2020.10.332292344
OS and version: Windows_NT x64 10.0.17763
Python version (& distribution if applicable, e.g. Anaconda): 3.7
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): Conda
Relevant/affected Python packages and their versions: XXX
Relevant/affected Python-related VS Code extensions and their versions: XXX
Value of the python.languageServer setting: Microsoft

[NOTE: If you suspect that your issue is related to the Microsoft Python Language Server (python.languageServer: 'Microsoft'), please download our new language server Pylance from the VS Code marketplace to see if that fixes your issue]
Expected behaviour
Script Data is loaded into cell or python file verbatim
Actual behaviour
Nothing happens.
Steps to reproduce:
[NOTE: Self-contained, minimal reproducing code samples are extremely helpful and will expedite addressing your issue]

Open a fresh .ipynb or .py file.
enter the following code: %load myfile.py
Additionally this code does not work in a .py or .ipynb:

from IPython import get_ipython
ipython = get_ipython()
ipython.magic("load myfile.py")

Logs

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

XXX

Thanks for filing this issue.
I can confirm we do not support the %load magic.

Will someone be assigned to this task?

Will someone be assigned to this task?

At this stage this has not been prioritized. For such feature requests we look into user upvotes to prioritize it.
If and when this is added to our backlog we will update this issue.
In the mean time we always welcome user contributions.

Closing as duplicate of #1602


RREP issue

        A                         B                      C
-----------------         -----------------      -----------------
        |                         |                      |
    +-------+                 +-------+              +-------+
    |       |                 |       |              |       |
    +-------+                 +-------+              +-------+
        |      newpkt[B][A]       |                      |
        <-------------------------|                      |
        |                         |                      |
    +-------+                 +-------+              +-------+
    |       |                 |       |              |       |
    +-------+                 +-------+              +-------+
        |                         |     newpkt[C][A]     |
        <------------------------------------------------|
        |                         |                      |
    +-------+                 +-------+              +-------+
    |       |                 |       |              |       |
    +-------+                 +-------+              +-------+
        |                         |                      |
-----------------         -----------------      -----------------

In the first scenario a packet from B to A is followed by a packet from C to A.
when packet  from C to A, the new RREQ cannot go more than one hope, because node B now know the route to node A and it would need to send RREP in both directions to origin address and to target address, for actual the code is sending RREQ until to reach destination address, this approach overloads the network

Please reword title to Intermediate RREP implementation or some variant of it to represent the intention.

This can be closed, Intermediate RREPs pose a security risk.


Discussion: Can you specify WindowsDesktop SDK and use WinUI 3 with net5.0?

Discussion: Can you specify WindowsDesktop SDK and use WinUI 3 with net5.0?
I'm trying to make an app that creates a toolbar window with net5.0 and WinUI 3.  To do this, I need access to some of the WindowsDesktop SDK, so I set the project SDK to Microsoft.NET.Sdk.WindowsDesktop.
The rest of my project looks like this:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
	<PropertyGroup>
		<OutputType>WinExe</OutputType>
		<TargetFramework>net5.0</TargetFramework>
		<TargetPlatformVersion>10.0.19041.0</TargetPlatformVersion>
		<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
		<RootNamespace>GPS.WinUI.SideBar</RootNamespace>
		<ApplicationManifest>app.manifest</ApplicationManifest>
		<Platforms>x64</Platforms>
		<SelfContained>true</SelfContained>
		<RuntimeIdentifier>win-x64</RuntimeIdentifier>
		<Nullable>enable</Nullable>
		<UseWindowsForms>true</UseWindowsForms>
	</PropertyGroup>
	<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|net5.0|x64'">
	  <DefineConstants>TRACE;DEBUG;DISABLE_XAML_GENERATED_MAIN</DefineConstants>
	</PropertyGroup>
	<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
	  <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
	</PropertyGroup>
	<ItemGroup>
		<PackageReference Include="Microsoft.VCRTForwarders.140" Version="1.0.6" />
		<PackageReference Include="Microsoft.WinUI" Version="3.0.0-preview2.200713.0" />
		<PackageReference Include="PInvoke.User32" Version="0.6.49" />
		<Manifest Include="$(ApplicationManifest)" />
	</ItemGroup>
	<ItemGroup>
		<None Update="App.xaml">
			<Generator>MSBuild:Compile</Generator>
		</None>
		<None Update="MainWindow.xaml">
			<Generator>MSBuild:Compile</Generator>
		</None>
	</ItemGroup>
	<ItemGroup>
		<Page Update="App.xaml">
			<Generator>MSBuild:Compile</Generator>
		</Page>
		<Page Update="MainWindow.xaml">
			<Generator>MSBuild:Compile</Generator>
		</Page>
	</ItemGroup>
</Project>

Compiling this results in this error set:
2>C:\Program Files\dotnet\sdk\5.0.100-preview.5.20279.10\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(356,5): error NETSDK1082: There was no runtime pack for Microsoft.WindowsDesktop.App.WindowsForms available for the specified RuntimeIdentifier 'win10-arm'.
2>C:\Program Files\dotnet\sdk\5.0.100-preview.5.20279.10\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(356,5): error NETSDK1082: There was no runtime pack for Microsoft.WindowsDesktop.App.WindowsForms available for the specified RuntimeIdentifier 'win10-arm-aot'.

I haven't filed a bug report because I'm wondering if this combination is intended to be supported.
Related Links

@fabiant3 @stevenbrix FYI

@sharpninja, this is definitely not intended to be supported, but we do want to help you be successful, what exactly are you trying to accomplish?

I am building an app that sits on the left or right edge of the screen, consuming enough space to leave a 4:3 area available for other apps to utilize.  I have previously done this with a WinForms host and Xaml-Islands content, but I was hoping to simplify the solution with WinUI 3.

Hi, any word on how I should approach this?

@sharpninja thanks for the ping. I don't think this works today, @marb2000 can provide more information on when we plan on supporting this configuration in a natural way.


Fix issues found at insight.sensiolabs.com

Development moved to presentation/grids, now only bugfixes in this repository.


Introduce a Middleware trait.

The Middleware trait abstracts the composition of services and
middleware. Rather than each middleware component taking its upstream
service in its own manner, all of them receive a reference to an
upstream service as a part of their definition of call.
Some notes about this design:
The Middleware is parametric over Service, which allows users to
specify which sorts of Service their Middleware can wrap (for example,
if they need to implement another trait, or need to have a particular
Request, Response, or Error type).
The Middleware receives its upstream Service as an &Arc<S>. The inner
Service is stored in an Arc so that it can be cloned and returned as
part of the state of the future returned by this middleware (e.g. by
moving it into an AndThen call). However, it is passed by reference,
so that reference count need not be incremented.
For convenience, Middleware, Service, and their factory traits all have
a pre-implemented wrap method, which takes this middleware or service
and its corresponding pair, and construct a new service which wraps
the middleware around the service.  The return value of wrap implements
Service or NewService appropriately, so that it can continue to be
subjected to wrapping actions.
This allows users to conveniently write middleware chains, as in:
some_service.wrap(middleware1).wrap(middleware2).wrap(middleware3)

This is a pretty big API increase & may not be a slamdunk. I don't imagine it'll be merged quickly, just wanted to open a PR to see the design in code.
I've been using it in my own work on higher level frameworks & it has seemed successful to me.

Nice! I'm sure @aturon would love to take a look at this as well, and he should be back soon.
In the meantime, could you describe a bit how you envision this being used for further abstractions? E.g. do you have something like a middleware builder in mind which is more powerful that would be possible today?
Also as a question, your example of service.wrap(...).wrap(...) would allocate multiple Arc instances, right? Was the intention to only have one?

In the meantime, could you describe a bit how you envision this being used for further abstractions? E.g. do you have something like a middleware builder in mind which is more powerful that would be possible today?

One example of how this is useful to me is that by having all middleware share this interface, the code to bind middleware to services can be automatically generated. For example, I am working on a DSL for describing routes, in which middleware could be applied to an endpoint like so:
#[middleware(Timeout, OAuth)]
resource User {
     ...
}

Any type that implements Middleware<S> can be included verbatim in that middleware attribute, and the code generator can just call user_endpoint.wrap(OAuth).wrap(Timeout) and so on.

Definitely an interesting proposition. I think that there will be some sort of strategy (trait based or otherwise) for making writing middleware easier. I haven't dedicated the cycles to thinking about it yet. I'll definitely take time to go over this carefully soon though.

So I've realized this can let clients decide how they receive the type using an associated type without duplicating the wrapper code. Middleware just needs a fifth associated type.
trait Middleware<S: Service> {
    type Request;
    type Response;
    type Error;
    type Future: Future<Item = Self::Response, Error = Self::Error>;
    type Accessor: From<S>;

    fn call(&self, req: Self::Request, service: &Self::Accessor) -> Self::Future;
}

struct WrappedService<S, M> where
    S: Service,
    M: Middleware<S>,
{
    middleware: M,
    service: M::Accessor,
}

impl<S, M> WrappedService<S, M> where
    S: Service,
    M: Middleware<S>,
{
    fn new (middleware: M, service: S) -> WrappedService<S, M> {
        WrappedService {
            middleware: middleware,
            service: service.into(),
        }
    }
}

Updated this PR to use the trick described above to avoid unnecessary Arcing.

Learning some stuff tonight - specifically about chaining middleware without the final service available yet, please don't merge.

@alexcrichton and I talked about this PR some yesterday, and @alexcrichton raised an interesting idea.
A lot of middleware is either pure "before" or "after" middleware, where the relationship to the "main" service is important, but the relationship to other before/after middleware is less so (any ordering is fine). Ideally, there would be a way to compose such middleware without introducing an Arc layer between each instance -- instead, having one Arc for all of the before middleware, where that sequence of middleware is essentially executed in sequence prior to the actual service.
I think it's not hard to create a concrete "before middleware container" that has this property. But the deeper challenge would be to allow composing arbitrary middleware, but automatically group before/after middleware to coalesce them. It's possible that we could do this using specialization, without any change to the trait, but I'm not positive.

To be clear though I wouldn't put so much emphasis on "a lot", I've just seen it as a common pattern that comes up. I also don't think it necessarily blocks this per se because it could always be built around it! (I believe)

@alexcrichton I'm not sure whether it can be built around, or needs to be part of the trait -- that's part of why I was raising it.

When we talked about this PR, @aturon, I mentioned that one thing one would like is for it to be possible to compose two middleware and get a middleware out of it, without having the concrete service present (essentially a Middleware  ∘  Middleware combinator). What I've concluded is that this design doesn't allow for that, and the reason is the accessor/Arc issue.
I feel like this may relate to the before/after middleware distinction you've raised but I'm not certain. In any event I'm exploring other ways of encoding middleware to see if this can be resolved.

Ideally, there would be a way to compose such middleware without introducing an Arc layer between each instance -- instead, having one Arc for all of the before middleware, where that sequence of middleware is essentially executed in sequence prior to the actual service.

I think the current design is actually the best case here. The issue is specifically before middleware which performs an async operation. Every time we need to sequence two async operations, the state needed for the second operation needs to be owned (whether shared ownership or moved somehow). We can only have a single Arc around the service for the before middleware if only 1 of the before middleware performs an async operation.

I've been trying out a design with three traits - Before, After, and Around. These are the definitions I started with:
trait Before<S: Service> {
    type Request;
    type Error: From<S::Error>;
    type Future: Future<Item = S::Request, Error = Self::Error>;

    fn before(&self, request: Self::Request) -> Self::Future;
}

trait After<S: Service> {
    type Response;
    type Error: From<S::Error>;
    type Future: Future<Item = Self::Response, Error = Self::Error>;

    fn after(&self, response: S::Response) -> Self::Future;
}

trait Around<S: Service> {
    type Request;
    type Response;
    type Error;
    type Future: Future<Item = Self::Request, Error = Self::Error>;
    fn around(&self, req: Self::Request, service: &S) -> Self::Future;
}

Around is essentially the same as Middleware without the ability to Arc the inner service.
If you look at Before and After, you notice that S is only used for one of its associated types in each of its definitions. In fact, upon closer examination they are actually just more unwieldy synonyms for the original Service trait: Before is Self::Request -> Future<S::Request> and After is S::Response -> Future<Self::Response>.
If you wanted to be able to compose two Befores together to create a new Before (and the same for After), I found you would actually need to define them identically to Service.
Moreover one would wish to be able to abstract over all three of these kinds of middleware to build up a middleware blob in a generic fashion. However, in order to do that we'd need some shared behavior implemented between them. This leads immediately to overlapping impls & another clear use case for mutual exclusion.
Lastly, After is rather problematic because it has sort of the inverse of the accessor problem - you need to Arc the non-wrapped state in order to move it into the stack of the future after the service's call. Chaining Afters or implementing Middleware for them seems intractible without abandoning the &self receiver.

I haven't really reached a conclusion but these are things that I've learned.

Okay, here is a solution which meets all of the requirements:

It supports wrap/apply (Service, Middleware -> Service)
It supports chain/compose (Middleware, Middleware -> Middleware)
It has a distinct definition for Before/Around/After
Users only have to implement one trait for one type for each middleware they want to write.

Of course, it does have coherence issues and therefore won't compile today.
The code can be perused here.
There are some ways in which it isn't ideal, setting aside the coherence issues. In particular it is optimal for middleware which is in fact "before" middleware to be implemented as "Around" middleware if that middleware doesn't perform any async operations.

Every time we need to sequence two async operations, the state needed for the second operation needs to be owned (whether shared ownership or moved somehow). We can only have a single Arc around the service for the before middleware if only 1 of the before middleware performs an async operation.

I think this is only true if we are implementing the middleware as wholly abstract layers of around middleware. My point is that if you have before middleware that doesn't need access to the underlying service, you can stack up a whole sequence of them, and execute them as independent futures, prior to executing the inner service.
My instinct here is to try implementing this idea via structs rather than traits. That is, we have a single generic middleware trait, and structs for (at least) pure before and after middleware. If you set this up such that you can specialize composition, then you should be able to detect when e.g. two before middlewares are being layered and combine them in some more optimized way (that does not require an Arc). This may work best if before middleware doesn't transform the request, but instead is given a reference to it and a mutable reference to a TypeMap (if we go that route).
(Sorry I don't have time to explain this more clearly right now, but maybe that will spark some further thoughts...)

My point is that if you have before middleware that doesn't need access to the underlying service, you can stack up a whole sequence of them, and execute them as independent futures, prior to executing the inner service.

That makes sense, I'd need to think about how it would access and mutate the request, though.

This may work best if before middleware doesn't transform the request, but instead is given a reference to it and a mutable reference to a TypeMap (if we go that route).

This would absolutely be necessary. They can't all share knowledge of the Request unless they receive an &Request. And they can't all share a mutable reference to its extensions - that would require some sort of interior mutability.
I can't imagine how this would work. We would have the same problems we have today resulting from the &'a Service -> 'static Future signature, only now its &'a Request -> 'static Future, meaning we'll be introducing reference counting and interior mutability for each request rather than each connection.
I think what you are proposing is distinct from before middleware, I would call it Beside middleware. I think a signature something like this (setting aside that I've proposed it as a trait instead of a struct as you suggest):
trait Beside<S: Service> {
    type Future: Future<Item = (), Error = S::Error>;
    fn beside(&self, req: &S::Request) -> Self::Future;
}

This works for things like timeouts.

Not closing yet, but I've come to dislike this approach and prefer the approach in #19.

Closing in favor of #21


Ensure we use the same GRPC version everywhere

Description
Ensure we use the same GRPC version everywhere
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #1136
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[x] Code compiles correctly
[ ] Created/updated tests
[ ] Extended the documentation

@artursouza and @cicoyle this another tiny PR that should make our life easier, since having two GRPC versions on the classpath can lead to "interesting" issues.
If everything looks good, please approve and merge.
Thank you 🙇

@salaboy @cicoyle @artursouza I have addressed the PR comments. Could you please take another look. Thank you!

@artursouza @salaboy and @cicoyle the build is finally 🟢 could you please approve and merge.
Thank you! 🙇


ESR, Section Assumptions: merge physical assumptions

Section Assumptions
OLD

Physical security appropriate to the value of the SDN Controller and the data it contains is provided.
An SDN Controller is protected from physical attacks by the wider environment."

CHANGE TO (NEW)

Physical security appropriate to the value of the SDN Controller and the data it contains is provided.  An SDN Controller is protected from physical attacks by the wider environment."

Rationale
I think this is the same topic.

That is make, it one bullet point instead of two.

Thanks for that insight. Will request the Edit Team to apply your suggested changed below:
Edit Team, please make the change, verbatim, as provided in the issue above (creditted to HolgerBlasumSYSGO). Thanks,

change made 11/29, will be reflected in latest build


added option to build kmyth logger features into separate shared library

Added "logger-lib" target to the Makefile, so that a shared library containing only the logger functionality can be optionally built. This is not a requirement for kmyth, but provides a way to build a kmyth-logger library so that the logger functionality can be exported, potentially, to other applications.
Moved build directory creation out of the "pre" target and implemented instead with makefile rules.
Moved a few things around in an attempt to make the grouping more logical.
Re-implemented the "delete back-ups" (i.e., file names ending in tilde) with a call to find.
Added a short blurb about how to build the "logger only" library to the INSTALL.md file.

This pull request adds the ability to build/install a kmyth-logger library that contains only the logging features. Originally, this was just an additional option, either in addition to or in lieu of the kmyth-tpm library that incorporated both the TPM utility and logging features.
With the most recent commit, the build process instead splits the functionality across the two libraries. Thus, the TPM-based functionality in the kmyth-tpm library requires the logging functionality in the kmyth-logger library. There are now basically three build options:

make or make all will build both libraries and all three applications
make logger-lib will build only the kmyth-logger library
make tpm-util-lib will build both libraries, but not the applications (e.g., kmyth-seal, kmyth-unseal, kmyth-getkey)

The install target (i.e., running sudo make install) now includes conditional logic to only install the files that correspond to what has been built.
The INSTALL.md file has be updated to reflect this new approach.

I think I fixed the problem with make test failing by adding the 'bin' directory as a order-only pre-requisite for the rule to build the kmyth-test executable (i.e., have make test create the bin directory if it wasn't created by the make tpm-util-lib)

As part of this pull request, we moved making the build directories out of the phony 'pre' and 'pretest' targets and instead made non-phony directory targets with a 'mkdir -p' recipe and then made these directory targets order-only prerequisites to the appropriate higher-level targets so that the directories are created when needed.
For make doc, however, we still had the 'mkdir -p $(DOC_DIR)' as part of the doc target's recipe. Therefore, the last commit changes this to be consistent with how this is done elsewhere in the makefile.


Consider use specific compression algorithms for different columns

Enhancement

When persistent on disk.
When transmit through network.

I think @fuzhe1989 filed this issue for the compression algorithm on the specified data type. For example,  run-length encoding on integers, Gorilla on floating numbers ClickHouse/src/Compression/CompressionCodecGorilla.cpp

@JaySon-Huang yes, e.g.

https://github.com/lemire/FastPFor
https://github.com/lemire/streamvbyte


Update the previous comment with non-default github-token

https://github.com/MishaKav/pytest-coverage-comment/blob/6c38c5d4c7683b4292d253822b1dc40909bc3a85/src/index.js#L216-L219
According to above snippet, pytest-coverage-comment only can find the previous comment named by github-actions
However when I give custom github-token of my app, the name of comment changes and pytest-coverage-comment can't find it so it creates new comment on every commits.
Should I give up updating comment when I using custom github-token?

I added support for this and release a new version, which you can use:
- name: Pytest Coverage Comment
  uses: MishaKav/pytest-coverage-comment@main

or use a specific version
- name: Pytest Coverage Comment
  uses<EMAIL_ADDRESS>