ingress-nginx on bare metal does support layer-4 contrary to the docs

https://rancher.com/docs/rancher/v2.x/en/k8s-in-rancher/load-balancers-and-ingress/load-balancers/#support-for-layer-4-load-balancing
Suggests that no layer4 ingress is supportet for example on "RKE on Custom Hosts
(e.g. bare-metal servers)".
However after reading and testing (on my bare-metal rke provisioned node) this suggestion
https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/
I found it works like a charm out-of-the-box to just add appropriate lines to the "tcp-services" config-map through ranchers-UI (no kubectl hacking required!).
I think this option is well worth mentioning in the documentation, especially as the NodePort alternative has a limited port-range

That's not really what is meant there.  Yes there is some capability in nginx-ingress, and it was going to be removed entirely but it appears they've walked that back.
But it does not help with services of type LoadBalancer that you're going to find in helm charts and such, which is what people are generally taking about when they say L4 LB.
(It should probably mention MetalLB though..)

Firstly: Thanks a lot for pointing out metalLB to me, that was clearly a piece of the puzzle that was missing to me.
Now to my suggestions about the documentation.
There is something missing when the docs don’t give a way into a metal-cluster for anything other than http(s) and the (range-limited) node-ports. I now (thanks to your help!) understand the problem (I think), and I have tried to boil down what I was missing in the docs that caused me (and other too, judging by posts at stackoverflow etc.) to take a painful wrong turn on the first read.
The docs about #ingress says:

“As mentioned in the limitations above, using a load balancer per service can be expensive. You can get around this issue using an ingress.”

That is in my opinion only part of the truth, the addition of the following points would help clarify I think:

Ingress (better thought of as http-ingress) solves the problem of multiple web-services in the cluster sharing the same exposed cluster-level nginx (and related privileged node-ports: 80,443). Ingress does not solve any other form of entry into the cluster, such entry is a job for the LoadBalancer.

Each kubernetes Ingress resource corresponds conceptually roughly to a file in /etc/nginx/sites-available/ containing a server{} stanza. They play nicely together without having to know about eachother.

The docs about LoadBalancers unfortunately mix and mash the concepts and calls “Nginx ingress controller” a load-balancer even though it has nothing to do with the kuberenetes koncept serviceType=LoadBalancer. But the bitter reality of concept-names clashing is what it is.
Because “Nginx Ingress Controller” is listed as a L7 loadbalancer here: #support-for-layer-7-load-balancing
it would follow the pattern and give very practical help to the reader to also mention the:

limited L4 support given by the global config-map (even though the drawbacks you mentioned about helm packets etc.)
third party MetalLB (Thanks alot for pointing that out to me)
In the table here: #support-for-layer-4-load-balancing

I.e: Instead of “Not supported” it the table entries it could say

“Limited nginx ingress* or 3rd party https://metallb.universe.tf/”

And the asteirsk explained below the table as:

*) Through a single globally managed config-map, see: https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/

Closing this issue because https://github.com/rancher/docs/pull/1964 was merged


test PR with Github API

Please pull this in!

Docs Build status updates of commit bb1b93e:
:warning: Validation status: warnings

File
Status
Preview URL
Details
Dependent Files

sdp-test/page-model-documents/Tutorial.yml
:warning:Warning

Details

sdp-test/index.md
:white_check_mark:Succeeded

sdp-test/page-model-documents/Tutorial.yml

[Warning] Unable to find uid "challenge-uid".

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Fix segfault in pathing algorithm

Had a crash when path was null, so simply added a conditional to check whether
it is null before use. Believe it occurred because a target had no path
due to other npcs blocking the way.

Much easier to view diff with https://github.com/GrognardsFromHell/TemplePlus/pull/294/files?w=1 fyi

Do you know how it happens that it is null in the first place? The action code is quite complex and I don't know it enough. Are we masking an underlying issue by inserting this null check here?

Do you know how it happens that it is null in the first place?

No, all I know is my conjecture in the initial post. I'm even not sure what the consequences are to this workaround beyond avoiding the crash. Unfortunately, running a program in wine in a debugger behaves rather poorly, so I didn't dig that deep into the issue.

Are we masking an underlying issue by inserting this null check here?

Probably

I've done this a little differently, but thanks for the attempt nevertheless.

Question: might you have been using Ready Vs. Approach when this happened?


Ensure ManagedCluster finalizer removed if add-on does not exist

The submarinerAgentController assumes the submariner ManagedClusterAddOn exists when cleaning up on ManagedCluster deletion. However, if it doesn't, cleanup never completes and the finalizer is not removed from the ManagedCluster. This shouldn't normally happen since the controller aso adds a finalizer to the ManagedClusterAddOn but this scenario was observed in a real installation
(see https://issues.redhat.com/browse/ACM-5381).
Signed-off-by: Tom Pantelis<EMAIL_ADDRESS>(cherry picked from commit 4685987c45ba1364a9687d57bb0740274314c6cc)

/cc @MaxBab @sridhargaddam @tpantelis

/lgtm

/lgtm

/approve


Icon component

Closes #178 includes docs.  Replaces all <i /> with <Icon /> and updates classes.

Went to do this then pushed it back again.  Wanted to get some perspective though. How would you add a on click callback then? Do we parse props and only turn boolean props into classes? Spreading the rest?


refactor(tinylicious-client): Clean up package exports

This package's primary export TinyliciousClient (as well as its related types) have all been made internal. Unfortunately, a bug in API-Extractor related to how it resolves export default statements was causing the TinyliciousClient type to appear in API reports when it shouldn't have.
Additionally, this package was re-exporting a couple of telemetry types to make use by external users more convenient (so they wouldn't have to import the core-interfaces package). But since this entire package is effectively internal-only now, these don't serve much purpose. I have removed them.

Looks fine. Do we know if TinyliciousClient was ever public? Is there already an old changeset when we first made it internal explicitly, or should we add that here?

Git blame shows it being internal since our initial tagging pass. So, it has never been explicitly marked as public. I think we're probably okay.


http filters: use new style names

Modifies the well-known-names of the built-in http filters
to use the same names as the extension build system.
Handles transition of per-filter-configs and dynamic
metadata as well.
Risk Level: low, previous name is still accepted
Testing: existing tests + deprecated tests for old names
Docs Changes: updated names
Release Notes: updated
Deprecated: old names are logged as deprecated
Signed-off-by: Stephan Zuercher<EMAIL_ADDRESS>

Awesome, this is great. LGTM. @kyessenov would you mind doing a pass over this also given your work in this area?

Last failure was just coverage, so merged master. 🤷♂

Oops looks like this needs a master merge. :(
/wait


Site jumps weird on images and some collapsed elements

By clicking on picture or solution which includes a picture, site is jumping to the top.... or somewhere...
See for example https://de.serlo.org/58876

The problem with solutions seems to be introduced by #174. Can anybody remember why we implemented this feature? Or what we were trying to accomplish? Otherwise I'll just delete it, it's really messy in combination with loading images and rendering of MathJax.


Move remaining tests on Travis CI to Github Actions

Summary:
Travis CI recently changed their free tiers a bit: https://blog.travis-ci.com/2020-11-02-travis-ci-new-billing
I am not sure if the /stan repo can hit the limits here, but I would still think we want to move the remaining few tests to Github Actions. GA is native to Github and both Math & Cmdstan use it, so it makes it easier for developers with fewer different CI types.
The tests are on linux using clang++ 6. Just the following suffices:
./runTests.py src/test/unit
That is it.
@serban-nicusor-toptal do you want to handle this one? This is not urgent in any way.
Current Version:
v2.24.0

@rok-cesnovar I can help with GitHub Actions. I've done some projects using GitHub Actions and also I hosted a webinar at my university teaching students on how to use it. I need some information:

When will the tests run? Every commit on develop branch? Every pull request? I can also set a cron job for once every X days/week etc.
What kind of machine will it be run? I can use a docker image and sudo apt-get install the clang++ 7 and python3 (or 2?) to run the ./runTests.py src/test/unit

PS: regarding the limits. GitHub Actions is "limitless" for public repositories. We can how many jobs we want (a job must have a maximum of 6h running time) and an action (.yml file) must have a maximum of 72h runtime.

Hey I must have not gotten a notification for this, right now I'm working on some Github Actions for cmdstanpy so I can take this one too.

@serban-nicusor-toptal let me know if you need any help

Sure will do, thanks @storopoli !

Thanks to both!

When will the tests run? Every commit on develop branch? Every pull request? I can also set a cron job for once every X days/week etc.

Every pull request or push (both to either develop or master).
Prior to the tests, it should install clang++-6.0, set "CXX=clang++-6.0" and run runTests.py src/test/unit . Not sure how much time these take, but I think it should not be more than an hour.

What kind of machine will it be run?

Using ubuntu-latest should be fine (+ installing clang++-6.0).

How do I configure the tests?
./runTests.py src/test/unit
make: *** No rule to make target 'test/test-models/expressions/simple_udf.hpp'.  Stop

Make sure you have cloned the submodule as well. I think if you dont clone math that pops up.

Great, I think I got it working now!
Just one more thing. The ubuntu-latest GitHub machine has 2 cores, seeGitHub Documentation here:

Hardware specification for Windows and Linux virtual machines:
2-core CPU
7 GB of RAM memory
14 GB of SSD disk space
You want -j 2?

Yeah, though 7GB of RAM for 2 processes is on the limit.


Provide specific field to accept depfiles in target class

Description
This removes the error condition where a depfile is accidentally included in only one of inputs and outputs, leading to accidental missed dependencies.

Its treated as if it were a missing input, meaning the target will rerun each time.


[modify] update deprecated github actions

Coverage decreased (-31.3%) to 52.807% when pulling 1f27c072ed35a33f29e7ffee566626d8a8b22fb4 on pr-deprecated-github-actions into fb750fa10ea313aafafaec102b4c0449a29ea957 on master.


Flaky tests on 1.0.6

My tests have gotten flaky since going to 1.0.6 (the version wasn't locked, so I'm not sure what version I was running before, but it was about 2 weeks ago they were last being run).
Before, collection hooks weren't being called at all, and now suddenly they are being called. But since I typically don't want these hooks to be called when running unit tests (well, except if I'm testing the hook itself), I changed all my insert/update/remove calls to be on the .direct collection.
And while the changelog says these should also be stubbed, the behavior seems to be very flaky.
It seems to run correct on the first run, but on a rebuild (e.g. when changing a test) things seem to go wrong every so often and in random ways.
Errors coming from npm-mongo on collections that should have been stubbed, like:
‣
Error: E11000 duplicate key error collection: meteor.meetings index: _id_ dup key: { : "aaa" }WriteError({"code":11000,"index":0,"errmsg":"E11000 duplicate key error collection: meteor.meetings index: _id_ dup key: { : \"aaa\" }","op":{"_id":"aaa","state":2,"endDate":"2017-11-28T17:52:37.668Z"}})
    at Function.MongoError.create (

And find-s that seems to not find results that have clearly been inserted.

Interesting, thanks for the heads up @sebakerckhof. Sounds like we need to take https://github.com/hwillson/meteor-stub-collections/pull/21 a bit further. For now pinning to 1.0.3 should let you move forward. Thanks!

I've seen the same behavior, took me a while to track it down to this package, was pulling my hair out as the failure counter on my tests would change every time I refresh the page!!


InventoryCollection::Scanner refactoring

InventoryCollection::Scanner refactoring, moving all related
scanner features under the scanner class.

@miq-bot assign @agrare
@miq-bot add_label refactoring


[azservicebus] Adding in the associated-link-name to all management link operations.

The associated-link-name property let's Service Bus know that a link is active, even if there is no direct activity on it.
For instance, when doing lock renewals you use the management link, but the associated receiver link is what you want to keep alive. We now pass this for all management related operations - scheduling messages, "backup" message settlement, lock renewal for messages and sessions, and session-state operations.
Fixes #16205

/azp run go - azservicebus


Fix adaptive icon scaling in latest release

The companion's rounded icon on SDK 26+ seems too "zoomed in". After reviewing the Android adaptive icon documentation, I have updated the scaling ratio needed for the icon foreground. I also updated the icon to use a 1024x1024 rather than 48x48.
Change-Id: I43c94d0c8c099174b10914b189e52afbf63f0ac3

Tested, and works properly:
Before                      After


Extra _ref variable created for no reason

If I compile this with the latest version of CoffeeScript:
Array.isArray ?= (object) ->
    Object.prototype.toString.call(object) is '[object Array]'

I get this:
var _ref;

if ((_ref = Array.isArray) == null) {
  Array.isArray = function(object) {
    return Object.prototype.toString.call(object) === '[object Array]';
  };
}

Which has an extra _ref variable that is never used.  Probably should just simplify that to:
if (Array.isArray == null) {
  Array.isArray = function(object) {
    return Object.prototype.toString.call(object) === '[object Array]';
  };
}

Confirmed. Minimal test case: a.b ?= c
var _ref;

if ((_ref = a.b) == null) a.b = c;

The above commit should fix this case -- where the existential assignment occurs at the top level, we know that there's no need to cache the ref.


[Bug Report] Not returning to start

I saw this was already an issue but I have tried all the suggestions to fix and it still is not working I am using the program on Stoneblock 3 modpack so I changed the stone check to oak planks but the turtle is geting to the last row and trying to keep going foward
video of issue:https://www.youtube.com/watch?v=RwQCe-vjupE

Sorry for being late to the party, would try to fix.


[Bug] Regex is not working on className in object

Description
Almost everyone uses className prop as a root prop.
(<Component className="blabla" />)
but, I'm using it in a object as shown below.
(<Component objectProp={{ className="blabla" }} />)
It makes regex confused and the extension is not working in a good manner.
you can check below screenshots.
Problem screenshot

Original

Did you also encounter this issue in the previous version?

Did you also encounter this issue in the previous version?

I installed previous version (v0.1.0), it works greate on usual usual className usecase but not on usecases like className in an object or className starting with prefixes (twMerge, cn, clsx etc..)

I think the RegEx should ignore strings that contain a newline char completely?


spaces between badwords pass

example "e f f w o r d"

also can anyone contribute to your dictionary? I work on a childrens website and want to use this but I have a lot of bad words i would like to contribute to your json file first.

@Leahelisabeth looks like the algorithm is based on case-insensitive string equality. It gets complicated if you want to account for all the other $hit people could type 😄. Though if one really wanted to accept a small number of false positives, an algorithm that scans a spaceless version of text would work, albeit a good (maybe acceptable) amount slower.


Wrong indent rule for tag

Reproduction:
Start with a new buffer, set ft=vue, insert following:
<transition>
<router-view></router-view>
</transition>

Select and type ==
Expected behaviour:
<transition>
    <router-view></router-view>
</transition>

Actual behaviour:
<transition>
<router-view></router-view>
</transition>

Description:
"<transition>" is invalid in html5, Maybe need a option to add custom tagnames in vue, or use xml indent rule instead, as vue documentation allow that use  PascalCase in single file components.

XML indentation sounds like a good idea since that would also correctly indent self-closing tags.

Unfortunately vim's XML indent script looks at the syntax group of the tags, so it doesn't work with HTML tags.

You can use the html_indent_inctags variable to get the indentation of <transition> (or any other custom tag) to work correctly.
One way to do this is to add this to your .vimrc:
let g:html_indent_inctags = "transition"

We could add transition and other vue-specific tags to b:html_indent_inctags, although this issue will then still exist for any custom component name.


XML Schema's not present at specified URL for Spring Configuration.

As given in the documentation

xmlns:metrics="http://www.yammer.com/schema/metrics"
xsi:schemaLocation="http://www.yammer.com/schema/metrics http://www.yammer.com/schema/metrics/metrics.xsd"

Do not exist.
Using the example provided at http://metrics.codahale.com/manual/spring/
Results in the expception : https://gist.github.com/1934563

@ryantenney, this is all yours.

Actually, considering this a dupe of #162.

The problem is actually with the XML namespace beans, as I omitted the schemaLocation for the spring-beans xsd.
xsi:schemaLocation="
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.yammer.com/schema/metrics http://www.yammer.com/schema/metrics/metrics.xsd">

The XML in the manual was intended as an example of the XML the should be added to your Spring application's existing applicationContext.xml.  If it is added as a separate file, it will not have any effect.

Thanks. Works now.
Missed the spring bean part.

Though I get a null pointer exception in my app now which looks like https://gist.github.com/1934852
Can you just have a look at it.Please, pretty please.

When I wrote this, I actually had ruled out the possibility of this error occurring...  Is healthAsHTML the method that you have annotated with @Timed?  Could you give me some more information about the class that this method belongs to?  It seems to implement an interface, does that interface define the healthAsHTML method?

healthAsHTML is part of an interface.
Here are my code snippets of HealthCheck inteface and its implementation.
https://gist.github.com/1935181

healthAsHTML is part of an interface.
Here are my code snippets of HealthCheck inteface and its implementation.
https://gist.github.com/1935181
-Abhishek Kona
On Wed, Feb 29, 2012 at 2:34 AM, Ryan W Tenney <
<EMAIL_ADDRESS>
wrote:

When I wrote this, I actually had ruled out the possibility of this error
occurring...  Is healthAsHTML the method that you have annotated with
@Timed?  Could you give me some more information about the class that this
method belongs to?  It seems to implement an interface, does that interface
define the healthAsHTML method?

Reply to this email directly or view it on GitHub:
https://github.com/codahale/metrics/issues/169#issuecomment-4225453

Thanks!  I'll run some tests to see if I can replicate this issue.

Good news, I was able to reproduce this problem!  I'll look into whether it is possible to fix this, but in the meantime, you can avoid this issue by annotating the implementation of healthAsHTML in the class HealthCheckImpl, instead of annotating the method in the interface HealthCheck. (see https://gist.github.com/1935505 )

Annotating the method in HealthCheckImpl does not time the method and no stats are collected.
I already had annotated asJSON method in the Impl but no stats are collected for it.

Ok my bad. The data is getting collected, it is available as a JMX Bean, but to get the data out on Graphite, do I need to configure something else in the bean?
Right now I am initializing the Graphite Reporter in code and not in XML.

Looks like I cannot initialize the graphite reporter in XML, how Do I access the registry defined in XML in Code?

Right now, if you're calling GraphiteReporter.enable(long period, TimeUnit unit, String host, int port), it tries to use the default MetricsRegistry, which is not the same as the one created by this module.  The MetricsRegistry created by this module is made available as a candidate for autowiring, so you can create a class like the one below and create it as a Spring bean:
public class EnableGraphiteReporter {

    @Autowired
    MetricsRegistry metricsRegistry;

    @PostConstruct
    public void init() {
        /* pass metricsRegistry into GraphiteReporter.enable(), like so: */
        GraphiteReporter.enable(metricsRegistry, 1, TimeUnit.MINUTE, "graphite-server", 8080);
    }

}

Right, this worked for me. but get a lot of Null Pointer errors. The @Timed annotation can be safely used in the higher Layers of Jersey

I spent some time playing with the Guice module, and it seems that it also does not recognize annotations on interfaces.  I'll put in a patch to prevent the NullPointerExceptions, but I think that the behavior should remain consistent with that of the Guice module.


Rework checker to not require DefAlloc by tracking all vregs on each alloc.

The symbolic checker currently works by tracking a single symbolic vreg label for each "alloc" (physical register or stack slot). On definition of a vreg into an alloc, the label is updated to the new vreg's name.
This worked quite well when the regalloc was simpler, but in the presence of redundant move elimination, it started to become apparent that the analysis has a shortcoming: when multiple vregs have the same value, and the regalloc has deduced this, it can make use of an alloc that is labeled with one vreg but use it as another vreg and the checker will not validate the use.
In other words, the regalloc became smart enough to avoid emitting unnecessary moves, but the checker was relying on those moves to know the most up-to-date symbolic name for a value in a physical location. In a sense, a register or stackslot can contain both vreg1 and vreg2, and the regalloc can use it as either.
The stopgap measure of emitting more DefAllocs as part of the redundant move elimination never quite sat right with me. It works, but it's asking too much of the regalloc to prove why its moves are correct. We should rely less on the regalloc and on complex built-just-for-the-checker plumbing; we should instead improve the checker so that it can prove on its own that the result is correct.
This PR modifies the checker so that its basic abstraction for an alloc's value is a set of virtual register labels, rather than just one. The transfer function is a little more complex, but manageable: a move keeps the old label(s) and adds a new one; redefining a vreg into one alloc needs to remove that vreg label from all other alloc's sets.
This completely removes the need for metadata from the regalloc (!); all we need is the original program (pre-alloc, with vregs), the set of allocations, and the set of inserted moves, and we can validate the result. This should mean that we trust our checker-validated allocation results more, and should result in less complexity and maintenance going forward if we improve the allocator further.

@Amanieu would you be willing to review this?
Fuzzer status: it Hasn't Crashed Yet(tm) after ~1h of CPU-time; I'll let it run overnight to see if that holds.

(CI build failure is rustdoc not liking my fancy Unicode symbols in the doc-comment; will figure out how to suppress that...)

Addressed all comments, thanks!


feat: Add experimental unstable_portal prop to Tooltip

This PR adds an unstable_portal prop to Tooltip so we have the option to render tooltips without Portal. A use case was raised by @lxcid here: https://spectrum.chat/reakit/general/i-was-wondering-if-can-hide-portal-of-tooltip-when-conditionally-rendered~4e05ffe1-93e8-4c72-8c85-eccb1c3f2ff1
Does this PR introduce a breaking change?
No

Codecov Report

Merging #440 into master will decrease coverage by 0.25%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master    #440      +/-   ##
=========================================
- Coverage   95.55%   95.3%   -0.26%
=========================================
  Files          94      94
  Lines        1418    1426       +8
  Branches      443     446       +3
=========================================
+ Hits         1355    1359       +4
- Misses         63      67       +4

Impacted Files
Coverage Δ

packages/reakit/src/Popover/PopoverState.ts
84.61% <100%> (-7.23%)
:arrow_down:

packages/reakit/src/Tooltip/Tooltip.tsx
100% <100%> (ø)
:arrow_up:

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 f6f4359...1d50dcb. Read the comment docs.


Create memory table with target partitions

Describe the bug
When we create table inside slt, it is created with MemoryExec (Memory table). But it seems like the partitions is always one. If we want to create table with multiple partitions, we need to create multiple table and union with them.
To Reproduce

statement ok
create table t1(a int, b varchar) as values
(1, 'a'),
(1, 'a'),
(1, 'a');

statement ok
create table t2(a int, b varchar) as values
(2, 'b'),
(2, 'b'),
(2, 'b');

query TI
With T as
 (select * from t1 UNION ALL select * from t2)
select b, sum(DISTINCT a) from T group by b;
----
a 1
b 2

query TT
explain With T as
 (select * from t1 UNION ALL select * from t2)
select b, sum(DISTINCT a) from T group by b;
----
logical_plan
01)Projection: t.b, sum(alias1) AS sum(DISTINCT t.a)
02)--Aggregate: groupBy=[[t.b]], aggr=[[sum(alias1)]]
03)----Aggregate: groupBy=[[t.b, CAST(t.a AS Int64) AS alias1]], aggr=[[]]
04)------SubqueryAlias: t
05)--------Union
06)----------TableScan: t1 projection=[a, b]
07)----------TableScan: t2 projection=[a, b]
physical_plan
01)ProjectionExec: expr=[b@0 as b, sum(alias1)@1 as sum(DISTINCT t.a)]
02)--AggregateExec: mode=FinalPartitioned, gby=[b@0 as b], aggr=[sum(alias1)]
03)----CoalesceBatchesExec: target_batch_size=8192
04)------RepartitionExec: partitioning=Hash([b@0], 4), input_partitions=4
05)--------AggregateExec: mode=Partial, gby=[b@0 as b], aggr=[sum(alias1)]
06)----------AggregateExec: mode=FinalPartitioned, gby=[b@0 as b, alias1@1 as alias1], aggr=[]
07)------------CoalesceBatchesExec: target_batch_size=8192
08)--------------RepartitionExec: partitioning=Hash([b@0, alias1@1], 4), input_partitions=4
09)----------------RepartitionExec: partitioning=RoundRobinBatch(4), input_partitions=2
10)------------------AggregateExec: mode=Partial, gby=[b@1 as b, CAST(a@0 AS Int64) as alias1], aggr=[]
11)--------------------UnionExec
12)----------------------MemoryExec: partitions=1, partition_sizes=[1]
13)----------------------MemoryExec: partitions=1, partition_sizes=[1]

statement ok
set datafusion.execution.target_partitions = 2

statement ok
create table t(a int, b varchar) as values
(1, 'a'),
(1, 'a'),
(1, 'a'),
(2, 'b'),
(2, 'b'),
(2, 'b');

query TI
select b, sum(DISTINCT a) from T group by b;
----
b 2
a 1

query TT
explain select b, sum(DISTINCT a) from T group by b;
----
logical_plan
01)Projection: t.b, sum(alias1) AS sum(DISTINCT t.a)
02)--Aggregate: groupBy=[[t.b]], aggr=[[sum(alias1)]]
03)----Aggregate: groupBy=[[t.b, CAST(t.a AS Int64) AS alias1]], aggr=[[]]
04)------TableScan: t projection=[a, b]
physical_plan
01)ProjectionExec: expr=[b@0 as b, sum(alias1)@1 as sum(DISTINCT t.a)]
02)--AggregateExec: mode=FinalPartitioned, gby=[b@0 as b], aggr=[sum(alias1)]
03)----CoalesceBatchesExec: target_batch_size=8192
04)------RepartitionExec: partitioning=Hash([b@0], 2), input_partitions=2
05)--------AggregateExec: mode=Partial, gby=[b@0 as b], aggr=[sum(alias1)]
06)----------AggregateExec: mode=FinalPartitioned, gby=[b@0 as b, alias1@1 as alias1], aggr=[]
07)------------CoalesceBatchesExec: target_batch_size=8192
08)--------------RepartitionExec: partitioning=Hash([b@0, alias1@1], 2), input_partitions=2
09)----------------RepartitionExec: partitioning=RoundRobinBatch(2), input_partitions=1
10)------------------AggregateExec: mode=Partial, gby=[b@1 as b, CAST(a@0 AS Int64) as alias1], aggr=[]
11)--------------------MemoryExec: partitions=1, partition_sizes=[1]   <- It is still 1

Expected behavior
I hope we can create arbitrary partitions with setting instead of creating the test with union.
Additional context
I think batch size doesn't not change the MemoryExec too, but I'm not sure about the intended behaviour

take

I tried to implement this in a naive way by just adding the following code:
let target_partitions = self.state().config_options().execution.target_partitions;

let physical = DataFrame::new(self.state(), input);
let batches: Vec<_> = physical
    .repartition(Partitioning::RoundRobinBatch(target_partitions))?
    .collect_partitioned().await?;

to https://github.com/apache/datafusion/blob/fc703238b1d7794bd132a7fb6b97cad9ba4c7446/datafusion/core/src/execution/context/mod.rs#L795
But I found that doing Repartition on top of a simple Projection gets overridden by physical optimization: https://github.com/apache/datafusion/blob/fc703238b1d7794bd132a7fb6b97cad9ba4c7446/datafusion/core/src/physical_optimizer/enforce_distribution.rs#L975
PS: When I skip remove_dist_changing_operators, the behavior still looks weird. The number of partitions matches target_partitions, but the data isn’t distributed properly. There’s one partition with all the data and others are empty.
@jayzhan211 Would appreciate any ideas.

I'm thinking about make ValuesExec partitioned

Unassigning, no longer working on this.


Get awscli from pip instead of Ubuntu

This will get the most recent version of awscli from pip. Fixes #9

Thanks!


Getting error in generating content: preferred resources: unable to retrieve the complete list of server APIs`

After switching to master, I started seeing this error on our development cluster:
2021-01-04T11:03:26.210-0700`	ERROR	api/content_manager.go:154	generate content	{"client-id": "34d14e10-4eb5-11eb-98b7-f45c89abd6ef", "err": "generate content: preferred resources: unable to retrieve the complete list of server APIs: metrics.k8s.io/v1beta1: the server is currently unable to handle the request", "content-path": "overview/namespace/milan"} github.com/vmware-tanzu/octant/internal/api.(*ContentManager).runUpdate.func1 	/Users/milanklanjsek/workspace/octant/internal/api/content_manager.go:154 github.com/vmware-tanzu/octant/internal/api.(*InterruptiblePoller).Run.func1 	/Users/milanklanjsek/workspace/octant/internal/api/poller.go:86 github.com/vmware-tanzu/octant/internal/api.(*InterruptiblePoller).Run 	/Users/milanklanjsek/workspace/octant/internal/api/poller.go:95 github.com/vmware-tanzu/octant/internal/api.(*ContentManager).Start 	/Users/milanklanjsek/workspace/octant/internal/api/content_manager.go:128
Based on brief discussion from todays standup, it might be related to #1721

This was re-introduced here: https://github.com/vmware-tanzu/octant/commit/dcb101861ff11cd521317464d29d81ed1b9047eb

This was re-introduced here: https://github.com/vmware-tanzu/octant/commit/dcb101861ff11cd521317464d29d81ed1b9047eb

This error is coming from https://github.com/vmware-tanzu/octant/blob/master/internal/printer/customresourcedefinition.go#L113
We've fixed similar errors in the past by explicitly checking for the metrics failure explicitly, https://github.com/vmware-tanzu/octant/blob/master/internal/queryer/queryer.go#L319
I'm not sure if that is the correct approach we want to also use here, or if there is some better way to more generically solve this problem.

This error is coming from https://github.com/vmware-tanzu/octant/blob/master/internal/printer/customresourcedefinition.go#L113
We've fixed similar errors in the past by explicitly checking for the metrics failure explicitly, https://github.com/vmware-tanzu/octant/blob/master/internal/queryer/queryer.go#L319
I'm not sure if that is the correct approach we want to also use here, or if there is some better way to more generically solve this problem.


raise ParserError

Gonna look for this, thanks for the info.

Fixed in release v0.2.0, update your zippyshare-downloader


419 response after updating session driver to database

Laravel Version: 5.7.15
PHP Version: 7.2.2-1+ubuntu16.04.1+deb.sury.org+1
Database Driver & Version: mysql 14.14 Distrib 5.7.21, for Linux (x86_64) using EditLine wrapper

Description:
I'm developing on a vagrant homestead box v6.3.0 and I updated the session driver from file to database. I have already migrated the sessions table as instructed in the docs. When I try to log in (I've already used make:auth), I'm receiving a 419 error. The form uses @csrf and works fine if I revert the session driver to file. I upgraded my vagrant box to v6.4.0 with the same results.
Steps To Reproduce:

Migrate sessions table
Set SESSION_DRIVER=database in .env

Hi there,
Welcome to Laravel and we are glad to have you as part of the community.
Unfortunately this GitHub area is not a support area for general application issues. This is only for issues/bugs with the framework code itself.
I will be closing your ticket here. Instead please try asking your question on one of the many great community support areas that will likely give you a better answer more quickly:

Laravel Slack (https://larachat.co/)
Laravel.io Forum (https://laravel.io/forum)
Laracasts Forum (https://laracasts.com/discuss)
StackOverflow (http://stackoverflow.com/questions/tagged/laravel)

If you feel I've closed this issue in error, please provide more information about how this is a framework issue, and I'll reopen the ticket.
Thanks in advance.


Flutter crashes in release mode, but not debug

Steps to Reproduce
Run my application with flutter run --release. The app works fine in debug (checked) mode.
Flutter Doctor
[✓] Flutter (on Linux, channel master)
    • Flutter at /media/jimbe/mojossd/sysui/src/third_party/flutter
    • Framework revision 5b8677d15d (3 days ago), engine revision 7fab0c350b

[✓] Android toolchain - develop for Android devices (Android SDK 23.0.2)
    • Android SDK at /usr/local/google/home/jimbe/Android/Sdk
    • Platform android-23, build-tools 23.0.2
    • OpenJDK Runtime Environment (build 1.8.0-google-v7-121669373-121622544)

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

Logs and Crash Reports
E/flutter : Class '_ExternalBuffer' has no instance setter 'data='.
E/flutter :
E/flutter : NoSuchMethodError: method not found: 'data='
E/flutter : Receiver: Instance of '_ExternalBuffer'
E/flutter : Arguments: [ExternalTypedData]
E/flutter : #0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart)
E/flutter : #1      _startMicrotaskLoop (dart:async/schedule_microtask.dart)
E/flutter : [ERROR:dart_error.cc(17)] Unhandled exception:
E/flutter : Class '_ExternalBuffer' has no instance setter 'data='.
E/flutter :
E/flutter : NoSuchMethodError: method not found: 'data='
E/flutter : Receiver: Instance of '_ExternalBuffer'
E/flutter : Arguments: [ExternalTypedData]
E/flutter : #0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart)
E/flutter : #1      _startMicrotaskLoop (dart:async/schedule_microtask.dart)
E/flutter : [ERROR:dart_error.cc(17)] Unhandled exception:
E/flutter : Class '_ExternalBuffer' has no instance setter 'data='.
E/flutter :
E/flutter : NoSuchMethodError: method not found: 'data='
E/flutter : Receiver: Instance of '_ExternalBuffer'
E/flutter : Arguments: [ExternalTypedData]
E/flutter : #0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart)
E/flutter : #1      _startMicrotaskLoop (dart:async/schedule_microtask.dart)
E/flutter : [ERROR:dart_error.cc(17)] Unhandled exception:
E/flutter : Class '_ExternalBuffer' has no instance setter 'data='.
E/flutter :
E/flutter : NoSuchMethodError: method not found: 'data='
E/flutter : Receiver: Instance of '_ExternalBuffer'
E/flutter : Arguments: [ExternalTypedData]
E/flutter : #0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart)
E/flutter : #1      _startMicrotaskLoop (dart:async/schedule_microtask.dart)
E/flutter : [ERROR:dart_error.cc(17)] Unhandled exception:
E/flutter : Class '_ExternalBuffer' has no instance setter 'data='.
E/flutter :
E/flutter : NoSuchMethodError: method not found: 'data='
E/flutter : Receiver: Instance of '_ExternalBuffer'
E/flutter : Arguments: [ExternalTypedData]
E/flutter : #0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart)
E/flutter : #1      _startMicrotaskLoop (dart:async/schedule_microtask.dart)
3 items2 processeslib/reporting_page.dart57:64
LFUTF-8Dartteams1 update

This would presumably a snapshotting issue?  @johnmccutchan @jason-simmons.  Probably need to repro on someone else's Linux machine first.

@rmacnak-google This looks like it might be the tree shaker dropping the setter for the data field  of the class _ExternalBuffer in sdk/lib/io/secure_socket.dart. Maybe we are missing some roots?

iOS on-device is crashing on master as well (but not alpha) presumably the same or similar bug.

Looks like the entry points list provided to the tree shaker for Flutter is missing a bunch of entries for dart:io. I'll put together a CL after I get back from an appointment.

Related: https://codereview.chromium.org/2005293002/

Reopened the issue because the flutter tools need to be updated too

This has landed: https://github.com/flutter/flutter/pull/4257


Keypress triggered multiple unfocused handlers

Thanks for maintaining this great library.
We’ve encountered a case in our app where a single keypress event gets sent to several unfocused <HotKeys> instances.
This happens for a specific master-detail style set of views, as the following example illustrates.
Example:
See this example functioning: https://codesandbox.io/s/m55x8x1jnj (using latest version of this library, 1.1.4).

We have a list of <Item>s in a parent component
The parent component defines an activeItemIndex
Only one <Item> has isActive at a time (when its index in the list equals activeItemIndex)
Each <Item> internally has a <HotKeys>, attached to window, but only focused if isActive.
On d press, an isActive <Item> asks the parent component to remove it

Expected behavior:

The hasActive <Item> is removed from the list when d is pressed

Actual behavior:

The hasActive <Item> is removed from the list when d is pressed, as well as all items following it 😱

Just want to double check this isn’t somehow intended behavior. Happy to take a look at fixing this if you agree it’s a bug!

Hey @greena13, any chance you could confirm that this is a bug?

Hey, @steobrien. Thanks for the clear write-up.
focused is unfortunately one of the features of this library that I think could have been implemented better. It was added, I believe, as a way to attach global handlers, but was given an unfortunate name. It's one of the things I want to remove in the next major version of the package (I'm still struggling to find the time to finish the damn thing off).
Basically the code you have used will add a global listener for every <Item> you mount to the DOM. So, when you press d once, the handler is called the first time and correctly unmounts the intended <Item>. Now the <Item> after the active one, is in the active one's place in the list. The handler is called a second time (assuming you have more than 1 <Item> in your list) - and this next Item is (incorrectly) removed. This repeats until all of the <Item>s that follow the active one have been removed (and then continues for however many items were before it in the list, but this effectively is a no operation as there are no more <Item>s left to occupy the active place).
If you must use focused (i.e. you need a global hotkey without selecting anything in the DOM and you can't programmatically set the focus on mount for some reason) I'd recommend placing a single <HotKeys> on the parent instead of one on each <Item>. This will bind a single global listener and should function as intended.
An alternative - which is superior if your use-case allows it - is to not use focused, and instead programmatically focus the parent on mount. You should still move to a single <HotKeys> on the parent, regardless of which approach you choose.

Thanks @greena13, much appreciated. We’ll migrate away from using focused on sibling-children, and reconsider using it entirely.


Monitoring - Upgrading k8s version causes the metrics API Server Request Rate missing

This is found during validating this issue: https://github.com/rancher/rancher/issues/26985#issuecomment-634315808
how to reproduce:

run rancher v2.4-head or master-head
edit the system chart to point to branch dev-v2.5
provision a cluster with k8s 1.16
enable the cluster monitoring 0.1.1
upgrade the k8s version to 1.17 or 1.18

results:

we expected to see the metric API Server Request Rate under the Kubernetes Components Metrics section but it is gone along with some others

here is the reason for the above behavior:
We added a new logic in the monitoring chart 0.1.1 to use different sets of APIs for different k8s versions, which is calculated and applied at the time of enabling the cluster monitoring.
Upgrading the k8s version of a cluster does NOT cause apps to be re-deployed.
So, if we enable monitoring in the k8s 1.16 cluster and then upgrade the k8s to 1.17 or 1.18, the monitoring apps will still try fetching data from deprecated APIs, which of course will NOT work.
The workaround is to disable and re-enable the cluster monitoring.
Since we support multiple k8s version in one release, for example, 1.16, 1,17, and 1.18, there should be no need to re-install the monitoring if we just upgrade the k8s version of a cluster.

@maggieliu @deniseschannon
This issue is due to the fact that we don't automatically redeploy system charts when user upgrades k8s cluster. This behaviour is normal and doesn't need to be changed. But in our monitoring chart we detect k8s version to decide if it should apply specific manifests, which is broken in upgrade case. Th e workaround will be redeploying monitoring charts(doesn't have to disabled and re-enable). I would suggest that as a manual workaround to fix rather than putting the fix into rancher since it is too hacky to deal with that.

This issue is closed since we have a workaround.


DNM: quick-fixes

testable here: http://kasperpeulen.github.io/dart-pad/

Sadly, we're not going to be able to take this until https://code.google.com/p/dart/issues/detail?id=23103 gets fixed.
@scheglov

Hm.. the old wrench seems to look a little bit better to me tbh:

vs the new one:

Lots of comments! And some confusion on my part. I think this PR will be simplified a bit by merging to master; it'll pick up some overlapping changes as well as the new services code.

see #273

I've tried storing information in the codemirror editor as fields, or private fiels, but this informatotion get lost, as there is new instance created of the editor at the beginning of the completionhelper. Therefore I think we must store it to the jsobject instead.

That sounds like a bug in the dart codemirror library, or our codemirror abstraction in dartpad. Possibly here: https://github.com/dart-lang/dart-pad/blob/master/lib/editing/editor_codemirror.dart#L98 ? I'll take a look -


Update Composer dependencies (2021-11-29-21-12)

Created multidev environment pr-23 for circleci-orb-demo-d82.

Visual regression test passed!
View the visual regression test report


New version: Insecure.Nmap version 7.94

Pull request has been created with Komac v1.11.0 :rocket:

Resolve: #130062

Microsoft Reviewers: Open in CodeFlow

For moderators
This account is automated by Github Actions and the source code was created by CoolPlayLin. If you have any questions about any pull request, don't hesitate to ping @Exorcism0666, I'll get a notification.

[!important]
Please recheck these Pull Request carefully before merging. If it is a incorrect-removing Pull Request and the URLs don't have any issue while manual checking, please close this Pull Request directly(It's best to let Exorcism0666 know).

良い一日をお過ごしください！

Automatic Validation ended with:

Installation failed with exit code -1978334972

(Automated response - build 530.)

Hi @Exorcism,
Manual Validation ended with:

Is there an installer switch to bypass this and complete the install automatically?

 💀

URL:
Status Code: 200
(Automated message - build 543)

This might be a user-agent block of the WinGet package manager specifically.


Live Demo (https://cdn.statically.io/screenshot/) not working

The https://cdn.statically.io/screenshot/ URL is not working, from the Docs https://statically.io/docs/using-screenshot/.
Example: https://cdn.statically.io/screenshot/dev.to
Example result:

(Resolves to https://cdn.statically.io/gh/staticallyio/screenshot/main/public/error-500.png)
Please check, thank you.

looks like the tool is not working at all for any URL it is changing the URL to https://cdn.statically.io/gh/staticallyio/screenshot/main/public/error-500.png to show the user that there was a problem with requesting the screenshot.

Same for me

@fransallen not sure if everything is fine with the server?

Same there!

Is there any plan to resolve this issue? As Cyberpanel makes use of the function in it's website list, I'm staring at rows of these images every time I enter my hosting control panel. I realise this is freely distributed but it's obvious that it affects many people. You have the entire Cyberpanel user base at a bare minimum ;D

still same

same here

Wow it's been this way for over a year? What the heck?

This is because Frans Allen died, programmatically. R.I.P

Interested. Where can I find more info?


Add inverse of waitForSelector visible: true (waitForNotSelector?)

It would be very useful to test when a selector is no longer visible. For instance, I'm waiting for a certain container not to have a loading class and then assert things.
Would you accept a PR for this? It wouldn't be tough to implement. If so, what should the API look like?
As it stands now, it's necessary to do some dance with waitForFunction.

As it stands now, it's necessary to do some dance with waitForFunction.

If I understand correctly, this behavior is easily implementable with waitForFunction:
// wait for ".box" to disappear
await page.waitForFunction(() => !document.querySelector('.box'), {polling: 'mutation'});

@aslushnikov Yeah, I did something similar. I didn't even need to specify the polling option and it worked just fine.
Still, seems like it would be a very useful utility. If it's worth adding to the API, just needs bikeshedding.

Closing this for now. We'll add this to the API if there are many clients who demand this and who are not satisfied with the one-liner for some reason.

Closed with PR #967


Help regarding hosted payment sim

Hello i am using hosted payment SDK i have setup all the thing but not able to understand how to use hosted-payment-sim and how to use x_signature in case of if i have accept all the post request parameter and after success full transaction what i need to do to redirect to shopify store

Hi @satyendrakumarsingh you should pass all of the parameters received in the POST request from shopify that have a prefix of "x_" apart from the "x_signature". All the params should be merged into a string that's sorted alphabetically with the format "keyvaluekeyvalue...". This string should then be signed using  HMAC-SHA256 with the HMAC key set to the password you enter for your gateway in your shops payment settings, as can be seen under "Gateway Signing Mechanism" here. The result of this signing can then be compared against the x_signature parameter passed from Shopify.
When responding you'll need to redirect the customer to x_url_complete with all the values shown here as query parameters appended to the complete url. Meanwhile creating an async POST request to x_url_callback with the request body set to the same query params you passed in the x_url_complete redirect.
I know this is only repeating what's in the docs but sometimes a second explanation can help, and hopefully this helps you.

Thanks Dan! Just to add to this Satyendra, you can check out the docs over at https://docs.shopify.com/api/sdks/hosted-payment-sdk/develop-gateway to see a detailed example of this signing mechanism. The relevant example is about halfway down the page.

@DanWebb , I've same problem in my payment gateway have some required field, But I don't know how to pass shopify required field with my payment required field, Kindly let me know you idea I'm using rails app to develop my payment...Thanks

Hi @prasanthrubyist when shopify store redirect to hosted payment gateway shopify store sends  post(http method) request parameters you have to receive that post request and process all the needed request parameters and after that its up to you that how you can use that request parameters with your payment processor. After that you have to return post(http method) response parameters to the given x_url_complete , x_url_callback. So that shopify store update the order status based on the payment status.

thank you so much! @satyendrakumarsingh


Turn it into a game

https://discord.com/channels/413438066984747026/413438067471548427/825867082733322300

Am I...? I think I'm missing something here.
Turn what into a game, exactly? The game client?

It's indeed a bad practice to link to discord only.
Can you copy the relevant information here @AwesomestCode ?

I'm gonna go out on a limb and say no, he can't 😐
I'm still super confused what "turn it into a game" even means


lxc copy error can result in invalid container on dst due to security.protection.delete flag

Ubuntu 20.04, snap lxd 4.7
Server A and Server B are identical in terms of hardware, os and software.

Containers storage are using DIRFS
Src container profile and dst profile have security.protection.delete set to true.
ServerB: lxc copy ServerAIp:c1 c1
after a few seconds of copy over tcp, rsync fails for whatever reason
ServerB now attempts cleanup due to failed lxc copy. (partial success)
ServerB is able to remove all the partial copied container files from storage/containers folder (success)
ServerB is unable to delete the container registry in lxd db due to security.protection.delete true flag. (fail)
ServerB now has an empty shell c1 container that is unusable. There are no files for c1 in any storage as they were correctly cleaned/deleted in step 6.

I am not including logs here since the steps are very straightforward.
security.protection.delete flag should be ignored if lxc is performing delete operation due to a failed migration cleanup.

I remember observing that before and it unfortunately not being trivial to resolve but I'll take another look :)


fix: The translate directive inside html tags

Part of #86

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Document the 'Tab Limit' feature

Add a description for the new 'Tab Limit' feature.

CC: @quinntracy , I made some small changes here.


Pulumi Cloudflare v5.39.1 is broken

I installed new versions of the providers today and I think version 5.39.1 the pulumi-cloudflare is broken with SST. Downgrading to 5.39.0 made it work.
Error:
|  Error
|  TypeError: pulumi.runtime.invokeOutput is not a function
|      at Module.getZoneOutput (/Users/danrodriguez/code/inmatura/lapalabradeldia.com/.sst/platform/node_modules/@pulumi/getZone.ts:133:27)
|      at infra/dns.ts (file:///Users/danrodriguez/code/inmatura/lapalabradeldia.com/infra/dns.ts:11:32)
|      at init_dns (file:///Users/danrodriguez/code/inmatura/lapalabradeldia.com/.sst/platform/sst.config.1727319069633.mjs:21:56)

Another minor bug, when setting the version to a wrong value (for example for pulimi cloudflare v5.39.0 and running bun run dev it got stucked into the installing providers... even after I CTRL+C it.
Thanks for all the work guys, love the idea and product :D

same here, wondering how can i have a fixed pulumi version?

I've had a similar situation, also using cloudflare.
BUT for me cloudflare 5.39.1 worked; what was causing trouble was aws provider 6.53.0.
Pinning aws to 6.52.0 made it work in my case

I've had a similar situation, also using cloudflare. BUT for me cloudflare 5.39.1 worked; what was causing trouble was aws provider 6.53.0. Pinning aws to 6.52.0 made it work in my case

Same as me, setting version to 6.52.0 fixed it. In case somebody else needs to know how to use a fixed version:
// noinspection JSUnusedGlobalSymbols
export default $config({
  app(input) {
    return {
      name: "....",
      removal: isDeveloperStage(input?.stage) ? "remove" : "retain",
      home: "aws",
      providers: {
        aws: "6.52.0",
      }
    };
  },
  async run() {
    ...
  },
});

Fixed in the latest release.
Please re-open if issue persists.


this work with meters - digital or non-digital?

I friend, interesting your solution, I have this cuestion:
https://www.reddit.com/r/computervision/comments/lkqxbx/how_get_digits_recognize_from_electric_meter_with/
and I get this suggets:
"You can try tensorflow lite. Take a pretrained mnist model. And divide your photo such that there is one digit in every cropped image"
Your think that I can use your model for my case?

Yes, of course you can use it. However, the numbers are not recognized automatically. Currently, a crop area is defined manually in the configuration file where the corresponding number is located. In my use case, the camera always photographed the electricity meter from the same position, so automatic detection was not necessary for me. These scripts can also be helpful to classify the images manually. As for your use case, there are certainly better ways to implement it. I wrote this code at the beginning of my studies, today I would probably build it a bit differently.
As for the trained model, I'd recommend trying it with an MNIST dataset (e.g. https://www.tensorflow.org/quantum/tutorials/mnist) or manually classifying some of your images of the electricity meter if necessary. My model is probably only fit to my data set, unfortunately. Also, I didn't use any data augmentation methods at the time. The model in the repository is only based on a few thousand images specifically from my use case.

thank for your answer,  It will be really helpfull, I am looking for and reading various things the problem is that I am from Cuba and I have internet limitations and it is more complicated.
thank for you suggets...


Set default EBS size for new cluster via AWS installer.

The default size for EBS blocks seems to be 50gigs. I'd love to set it at the minimum of 20 gigs (or any other size).

Duplicate of #2350.


Android Support?

Any plans to support Android?

@zoeitsolutions Feel free to fork this repository and PR back android support if you need it 👍

Added https://github.com/triniwiz/nativescript-star-ratings/commit/b0075fe04049c9c30db19149f1d071aa9e544aa1


Block Breakdown calculation seems off

There is an entry that shows 15 votes in a block, but the block breakdown shows a 50:50 split, which is not possible.

It's possible if Jo Jorgenson received an odd number of votes

Yea, The latest data block  showed 15 votes changed, but the absolute number of votes for Biden and Trump stayed the same (which would mean all 15 votes went to third party candidates).


dedicated public static IP

Would be great if you could provide a public static IP, such as what is offered here: https://www.ovpn.com/en/features/public-ipv4 and https://hoppy.network/ . This would really enable a lot of things to be easily self hosted and a lot of remote control of hardware in the physical world (such as http://andyschroder.com/DistributedCharge/) over a variety of internet connection types. I know that at https://github.com/LightRider5/lnvpn#can-i-use-this-vpn-for-my-lightning-node you suggest tunnelsats.com, but that is a specialized service that only seems to give users access to specific ports, not an entire IP address for using for whatever you want.

Also, tunnelsats.com does not provide a nice API like you do, so it's much less desirable from an automation standpoint. Having a simple daemon running that auto-renews (if you fix https://github.com/LightRider5/lnvpn/issues/22) would be great.

If you add this and https://github.com/LightRider5/lnvpn/issues/26, I'd recommend doing a small subnet for IPv6 so that multiple services can be hosted.

Also, if you implement this feature, it would be nice to have some "low bandwidth plan" options. Many people might use the VPN only to accept incoming connections for self hosted services that are used sparingly. Also, they might want to be able to pre-pay something far in advance to lease a consistent IP, but they won't know for how much data they are using until testing for a few months. Such a flexibility would depend on https://github.com/LightRider5/lnvpn/issues/28 and https://github.com/LightRider5/lnvpn/issues/22 .


Tutorial?

Tutorial please

Wiseguy is working on writing build instructions and general explanations on how to use this tool.
Please note that there won't be a simple step by step tutorial on how to use this tool given that programming knowledge and reverse engineering knowledge are required to know what to do and how to do it.

Oh ok, I know how to program but I have no idea how to reverse engineer, I just want to port a obscure n64 game to PC.

There is a semi-decompiled source code of the game but it's not finished and slowed down 3 years ago due to it being obscure, but maybe it could help.

You could try using that decomp project as an starting point.
You can try building that project and using the generated elf file, which is what you need to recompile the game. Please note recompiling the game is just one step, is not the whole process.
This elf may have functions marked properly but it may not, and if the project is abandoned it may have not even all the functions figured out. If the elf is missing information you would need to learn how to fill the gaps by reverse engineering the game and learning about the elf format. We can't really help you with that since the Recomp project expects some prior knowledge users can use it properly.


Job Type (Accace Senior Internal Accountant)

ENVIRONMENT: production
URL: https://firme.peviitor.ro/
Browser: Chrome
Device: Laptop
OS: Windows 11 Pro
STEPS TO REPRODUCE:

Open the URL: https://peviitor.ro/

Type "Accace"

Press enter

Check the job position: Senior Internal Accountant

Check the job type:

Press ''Vezi postul'' and check the job type on the website page

EXPECTED RESULTS:
The job type in the search should correspond to the one from the website.

fixed


Error: Cannot find module '@sparticuz/chromium

I followed the instruction to create layer and attach it to the lambda function however I am still getting following error.
Test Event Name
event

Response
{
  "errorType": "Runtime.ImportModuleError",
  "errorMessage": "Error: Cannot find module '@sparticuz/chromium'\nRequire stack:\n- /var/task/index.js\n- /var/runtime/index.mjs",
  "trace": [
    "Runtime.ImportModuleError: Error: Cannot find module '@sparticuz/chromium'",
    "Require stack:",
    "- /var/task/index.js",
    "- /var/runtime/index.mjs",
    "    at _loadUserApp (file:///var/runtime/index.mjs:951:17)",
    "    at async Object.UserFunction.js.module.exports.load (file:///var/runtime/index.mjs:976:21)",
    "    at async start (file:///var/runtime/index.mjs:1137:23)",
    "    at async file:///var/runtime/index.mjs:1143:1"
  ]
}

Function Logs
Unknown application error occurred
Runtime.ImportModuleError
2022-10-08T07:11:45.439Z	undefined	ERROR	Uncaught Exception 	{"errorType":"Runtime.ImportModuleError","errorMessage":"Error: Cannot find module '@sparticuz/chromium'\nRequire stack:\n- /var/task/index.js\n- /var/runtime/index.mjs","stack":["Runtime.ImportModuleError: Error: Cannot find module '@sparticuz/chromium'","Require stack:","- /var/task/index.js","- /var/runtime/index.mjs","    at _loadUserApp (file:///var/runtime/index.mjs:951:17)","    at async Object.UserFunction.js.module.exports.load (file:///var/runtime/index.mjs:976:21)","    at async start (file:///var/runtime/index.mjs:1137:23)","    at async file:///var/runtime/index.mjs:1143:1"]}
2022-10-08T07:13:35.744Z	undefined	ERROR	Uncaught Exception 	{"errorType":"Runtime.ImportModuleError","errorMessage":"Error: Cannot find module '@sparticuz/chromium'\nRequire stack:\n- /var/task/index.js\n- /var/runtime/index.mjs","stack":["Runtime.ImportModuleError: Error: Cannot find module '@sparticuz/chromium'","Require stack:","- /var/task/index.js","- /var/runtime/index.mjs","    at _loadUserApp (file:///var/runtime/index.mjs:951:17)","    at async Object.UserFunction.js.module.exports.load (file:///var/runtime/index.mjs:976:21)","    at async start (file:///var/runtime/index.mjs:1137:23)","    at async file:///var/runtime/index.mjs:1143:1"]}
START RequestId: 688c27ef-4936-4ebb-b55b-4f03edaad219 Version: $LATEST
END RequestId: 688c27ef-4936-4ebb-b55b-4f03edaad219
REPORT RequestId: 688c27ef-4936-4ebb-b55b-4f03edaad219	Duration: 1426.51 ms	Billed Duration: 1427 ms	Memory Size: 128 MB	Max Memory Used: 12 MB
Unknown application error occurred
Runtime.ImportModuleError

Request ID
688c27ef-4936-4ebb-b55b-4f03edaad219

Can you look at the layer and show me what it looks like, or post the zip?

Since file size is more than 25MB limit sharing link for same
https://www.transfernow.net/dl/20221008TdSJ3dRD

It looks like somehow you're layer got an extra zip inside of it. (Left is mine, right is yours, I downloaded right from the Lambda layers page on AWS)

You just want to upload the chromium.zip and it should just have the nodejs folder inside of it. I'm not sure how the chromium.zip file got added to another zip file. Did you download a Github CI Build artifact, or follow this?

I had the same issue. Moving the package from dev-dependencies to dependencies inside package.json resolved it.

@Sparticuz
To fix this issue, I manually copied the node_modules folder under nodejs folder and the zip it.
I will give it try again using the CI Build artifacts once I get time.
@oantyneskul
I verified package.json and everything is under dependencies section
{
  "dependencies": {
    "@sparticuz/chromium": "^107.0.0",
    "axios": "^1.1.2",
    "playwright-core": "^1.27.0",
    "puppeteer-core": "^18.1.0"
  }
}

You just want to upload the chromium.zip and it should just have the nodejs folder inside of it. I'm not sure how the chromium.zip file got added to another zip file. Did you download a Github CI Build artifact, or follow this?

I followed the new section which linked to the CI runs. The artefact I download from https://github.com/Sparticuz/chromium/actions/runs/3191558127 is the one that includes an extra chromium.zip
After correcting the zip, I'm still getting an error in AWS
2022-10-16T22:01:08.190Z	xxxxxxxxxxxxxxxx	ERROR	[Error: ENOENT: no such file or directory, open '/var/bin/chromium.br'] {   errno: -2,   code: 'ENOENT',   syscall: 'open',   path: '/var/bin/chromium.br' }
I'm deploying via terraform rather than your aws cli commands, but I'm pretty sure its all connected up correctly. I'm not sure if its related to the final comment in #1? but the path I'm getting is different to the one in his error.

You just want to upload the chromium.zip and it should just have the nodejs folder inside of it. I'm not sure how the chromium.zip file got added to another zip file. Did you download a Github CI Build artifact, or follow this?

I followed the new section which linked to the CI runs. The artefact I download from https://github.com/Sparticuz/chromium/actions/runs/3191558127 is the one that includes an extra chromium.zip
After correcting the zip, I'm still getting an error in AWS
2022-10-16T22:01:08.190Z	xxxxxxxxxxxxxxxx	ERROR	[Error: ENOENT: no such file or directory, open '/var/bin/chromium.br'] {   errno: -2,   code: 'ENOENT',   syscall: 'open',   path: '/var/bin/chromium.br' }
I'm deploying via terraform rather than your aws cli commands, but I'm pretty sure its all connected up correctly. I'm not sure if its related to the final comment in #1? but the path I'm getting is different to the one in his error.

I followed the new section which linked to the CI runs. The artefact I download from Sparticuz/chromium/actions/runs/3191558127 is the one that includes an extra chromium.zip

Ah, ok. It looks like github is adding an extra zip layer. I wonder if they just zip up all artifacts. The correct file to use as the lambda layer is the chromium.zip INSIDE of the github artifact. I will make a note about this.
Also, yes, changing to a regular production dependency will work just fine because then you are packaging the binaries directly with your code, but many of us run into deployment limits because it's over 50 megs.

I followed the new section which linked to the CI runs. The artefact I download from Sparticuz/chromium/actions/runs/3191558127 is the one that includes an extra chromium.zip

Ah, ok. It looks like github is adding an extra zip layer. I wonder if they just zip up all artifacts. The correct file to use as the lambda layer is the chromium.zip INSIDE of the github artifact. I will make a note about this.
Also, yes, changing to a regular production dependency will work just fine because then you are packaging the binaries directly with your code, but many of us run into deployment limits because it's over 50 megs.

I'm on a mac and it unzipped both of them, which is why it took me a while to stumble into this issue.
For a split second I can see both of them expanding

If I go to the terminal and use unzip chromium.zip -d temp it will only unzip the first one.

After many tries, I successfully run a sample code (create PDF from URL) in AWS Lambda.  I am not a JS developers so I am not 100% understand the process yet, I will do more tries to confirm my process.  Here I just list what I did for now that may be helpful if you got trouble at lambda deployment:

Whatever I use CI (gitlab) or run my local, it seems double  zipped.  It is pretty hard to figure out if you are using Mac as it will automatically unzip twice. Try  @Gonzalo8642 tip: unzip chromium.zip -d temp to confirm your zip is correct.
If I directly deployed the zip from default make as lambda layer (after fix double zip), I got two issues:

the  puppeteer-core cannot be found
It reports Cannot find module<EMAIL_ADDRESS>
To fix these issues, I commented this line in make file
# npx clean-modules --directory nodejs --include "**/*.d.ts" "**/@types/**" "**/*.@(yaml|yml)" --yes
I also run npm install puppeteer-core in a separated empty folder,  then copy this project node_modules to overwrite(you cannot install puppeteer-core in current nodejs folder as it will overwrite some files in this projects node_modules)
The final layer zip is about 60M.

The last thing worth to note,  Lambda nodejs must be > 14.x.

I'm on a mac and it unzipped both of them, which is why it took me a while to stumble into this issue. For a split second I can see both of them expanding
If I go to the terminal and use unzip chromium.zip -d temp it will only unzip the first one.

Use zipinfo chromium.zip to check if the zip downloaded from Github actions contains a nested chromium.zip or whether it contains a nodejs.
If it contains a nested zip, AWS lambda layer will not extract this!

I'm going to close this issue as it's easily solved by following these instructions.
https://github.com/Sparticuz/chromium#aws-lambda-layer


task 10 failed - "invalid 'times' argument"

hi here is my workflow
fungi <- read.table("Normal.txt", sep="\t", row.names=1, header=T)
res_2 <- func.EM(m, ncpu=4)
and following is the error
############# Run for iteration 1: #############
E-step: estimating scaled parameters...
Error in { : task 10 failed - "invalid 'times' argument"
attached i s the input file
please help me solve this
Normal.txt

Hi
I am not sure what m is. But in your input data, there are rows with only one non-zero entry, which is insufficient for the inference.
You can remove rows (taxa) with low abundance in many samples, and I have implemented an assertion to check this in the latest commit.
In addition, I think 36 samples might not be enough for accurate BEEM-static analysis.
Chenhao

Feel free to reopen if it doesn't solve the problem.


re-submission v2.0

Another attempt.

Hello Evgeny ... thank you for this. It scores 0.561 this time.


Sorting a column shows "Loading variables" but they're already loaded

Testing #10170
This causes a flicker which doesn't look good

This also happens when opening the webview, it would be better to only show loading variables after some reasonable time where a user may start to wonder why it's not working (500ms?). That way the flicker can be avoided

https://github.com/microsoft/vscode/issues/165445


KAFKA-5655: materialized count, aggregate, reduce to KGroupedTable

Add overloads of count, aggregate, reduce using Materialized to KGroupedTable
deprecate other overloads

@guozhangwang, @bbejeck, @mjsax

Should aggregate on line 788 be marked as @deprecated ?
Otherwise LGTM.

retest this please

Merged to trunk


Fix the docs

The docs on docs.rs are currently broken, because of the changes with the removal of the dox feature. Once a new version of the gtk crates was released, they need to be used and then the build should succeed again.

Done, the new gtk4 crates got rid of the dox feature and the new release builds just fine


Conflict with Unity's Nuget.Newtonsoft.Json implementation

[x] I am at the right place and my issue is directly related to ROS#. General technical questions I would post e.g. at ROS Answers or Stack Overflow. For library-specific questions, I would look for help in the corresponding library forums.
[x] I have thoroughly read the Contributing Guideline and writing this issue is the right thing to do in my case.

I found a bug!

[x] I am using the latest ROS# version available here on the master branch.

[x] I am adding all the required information, code and data files, screenshots and log files so that you can reproduce the problem.

My OS is: Windows 10 Pro Version: 1903 OS build: 18362.592

My Unity Version is: Unity 2019.3.13

My ROS Distribution is: ROS Melodic Morenia

My Build Target Platform is: Windows

Here is my bug description:
The Unity DOTS packages now include Unity's implementation of Newtonsoft.Json and because of that I get errors in Unity, this is a recent development that occurred with new Unity package updates.
If I have the Ros# Newtonsoft.Json.dll in the Plugins folder I get an error that there cannot be two identical assemblies, so it is clashing with the Unity's one, but if I delete Newtonsoft.Json.dll assembly then I get an error that the Newtonsoft.Json.Bson.dll cannot find Newtonsoft.Json.dll, so it doesn't recognize Unity's implementation of Newtonsoft.Json.dll.
Perform the following steps to reproduce the bug:
Create a new empty Unity project, paste the latest Ros# code from GitHub into the Assets folder. Everything should work fine, then open Package Manager and install preview package called Collections (version preview.5-0.8.0). There will be an error saying there cannot be two identical assemblies in the Unity, if you delete the assembly then the error says that the Newtonsoft.Json.Bson.dll cannot load of find file or assembly Newtonsoft.Json which it should since Unity has its own implementation included under assemblies.
Observed results:
After installing Collections package:

After removing the Newtonsoft.Json.dll:

Expected results:
The Newtonsoft.Bson.Json.dll should be able to find the Newtonsoft.Json provided by Unity instead.

Hi @coldwarrior5 ,
please re-complie the VS solution RosSharp.sln with the dlls that work with your Unity project.
Alternatively (or for fast testing) you can copy the sources of the projects RosBridgeClient, MessageGeneration and Urdf directly into your Assets folder.
Please also check out the ISerializer interface. We designed it such that you can easily plug-in the Serializer of your choice.
Please let me know what worked best for you,
Martin

Hi @MartinBischoff,
thank you very much for your fast reply, I have been trying all of your solutions from yesterday but I wasn't successful.

If I copy the sources RosBridgeClient, MessageGeneration and Urdf to the Asset folder there is still issue with Newtonsoft.Json.dll and System.Runtime.CompilerServices.Unsafe.dll because Unity uses different versions and it disallows multiple instances of the same .dll. There are no problems with your RosBridgeClient.dll, MessageGeneration.dll, and Urdf.dll that you provide in Unity folder of your project.
If I try to overwrite the .dll in Unity's /Library/PackageCache/com.unity.collections@ with the ones that you provide the Unity overwrites it back to the original version.
If I try downgrading the System.Runtime.CompilerServices.Unsafe in your source by using Nuget the code no longer compiles since it requires some functionality from newer version of Unsafe.dll.
I tried importing Unity's Newtonsoft.Json.dll but it simply doesn't work with the other libraries, they might have changed something to work with Mono.
ISerializer interface is extremely useful however it does not help with the library requirements, even if I try to remove Newtonsoft.Bson.Json and Newtonsoft.Json the code breaks because some classes depend on it and Unity does not allow two instances of the same libraries.

I discovered that other developers had the same issue I am having however, there doesn't seem to be any clean and nice solution currently (Unity forum thread).
Thank you for your help, hopefully this will help you with your next version of Unity asset. When might we expect the next release in the Unity's Asset Store.

Thanks to Unity's community I was able to find a solution, but I think it is the Unity's bug.
The solution to this particular problem is to manually add the "com.unity.nuget.newtonsoft-json": "2.0.0" to the manifest.json file since Unity doesn't do it automatically. The manifest.json file is located under the Project folder\Packages. Then you can safely delete the Newtonsoft.Json.dll from the Assets\RosSharp\Plugins\External folder and use the Unity's implementation. The Newtonsoft.Bson.Json.dll no longer complains about lack of Newtonsoft.Json.dll.
I think this is Unity's problem because for every other package that is shown in the Package manager there is an entry in the manifest.json, but for these "hidden" packages used in some of the global ones there is no entry in the manifest.json and because of that other .dll will no see it and thus there was an error in the Newtonsoft.Bson.Json.dll.
However, since Unity didn't implement specific package for System.Runtime.CompilerServices.Unsafe.dll the same cannot be done for that specific .dll but I will notify them about the issue.

I found the solution for the second issue with the System.Runtime.CompilerServices.Unsafe.dll.
The sort of solution which is by no means ideal is to move the com.unity.collections@<version> folder from the Project folder\Library\PackageCache to Project folder\Packages, which makes that particular package a development package. Once copied over, we can now replace the System.Runtime.CompilerServices.Unsafe.dll in that folder with the newer version required by the Ros#.
Hope this will help you with the Unity development, I will notify Unity that they should expose the dll as a package the same way they did for the Newtonsoft.json.dll.


Access decorator (internal/public)

Clear and concise description of the problem
It's a pretty consistent need in the client emitter world, to be able to indicate that an operation or a model should have be exposed as internal or public. By default, client emitters will generate all operations as public, and automatically solve the set of public models by verifying what is used by operations (and hiding the rest). There are a few scenarios where the "access" override was useful:

Want to generate an operation as internal (to allow a customization as public to call the internal operation).
A model is added for customization purposes, and is not used by generated code (therefore hidden by default).
A model only SDK will generate nothing by default (EventGrid).

TCGC related doc: https://azure.github.io/typespec-azure/docs/howtos/Client Generation/03convenient#make-methods-privateinternal
Comments about what TCGC team uncovered:

Marking an operation "internal" should propagate it to the models used by that operation (with of course some resolution if part of those models are used by other operations)
Marking a based class as internal, should mark all subclasses as internal
Explicitly marking a model with an access should be more important than any automatic resolution
Conflict may happen, and may be treated as "garbage in, garbage out" or raised as linter, or error (TBD)

Checklist

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Current access logic in TCGC:

SdkOperation, SdkModel, SdkEnum has access attribute, the value is either public or internal, and the default value is public
User could use @access in TCGC to override the access, and the decorator could be added to namespace, operation, model, enum, union as enum
@access override should be wider from outside to inside, else a warning is added to diagnostics, for example, if you set @access(public) for an operation, you should not set @access(internal) for the namespace own that operation
The calculation logic for access:

For all @access set on operation or operation's namespace,

Types referred by any operation with public override, set public to the types and do propagation, return
Types referred only by operation with internal override, set internal to the types and do propagation, return

For all @access set on model or model's namespace,

Set override value to the types and do propagation, return

Set public to the rest models and enums without access override
If any conflict happens in this process, a warning is added to diagnostics

Override on namespace should not conflict with the override on operation or model
Override on model should not conflict with the override from other propagation

Propagation logic:

For array or record, propagate to value type
For union, propagate to all union variants type
For enum value, propagate to its enum type
For nullable, propagate to its inner type
For model

Propagate to all properties type
Propagate to additional properties type
For discriminated base type, propagate to all its sub types
For sub type, propagate to its base type, but not propagate to any other siblings

Wondering here if that should not just be combined with a language feature to mark things as internal/private(syntax or decorator) but where you then cannot reference private/internal elements from another libraries in TypeSpec itself either.

Wondering here if that should not just be combined with a language feature to mark things as internal/private(syntax or decorator) but where you then cannot reference private/internal elements from another libraries in TypeSpec itself either.

Since the setting is emitter specified, I believe scope could resolve this concern.

access real example here: https://github.com/Azure/azure-rest-api-specs/blob/57cbfdb4deb7ce06476022bcc18d32cddd83c2a0/specification/translation/Azure.AI.DocumentTranslation/client.tsp#L68


ISPN-7234 SuccessfulResponse can be externalized more efficiently

https://issues.jboss.org/browse/ISPN-7234

Integrated, thx @rvansa


MATH-1477: fix reordering check in MillerUpdatingRegression.regress

Test and fix for MATH-1477

Coverage decreased (-0.002%) to 90.175% when pulling 55fbf2dc6e85c63fbfb8693789ec45d44f4976d5 on cheesinglee:bug-MATH-1477 into 286ab7c6dd4c4aae0b0290517ea3508487438d01 on apache:master.


flash script to put cash on dispute window

test redeeming participation tokens need to have dai (fees) on dispute window. Having a simple script to put dai on a dispute window would be convenient.

we can move cash to window manually. don't need a flash script


Module not found: Can't resolve 'encoding' in 'path/node_modules/node-fetch/lib'

Hi Im using graphql-request with next 13.1 however it throw this warning which is related to this package:
Module not found: Can't resolve 'encoding' in 'path/node_modules/node-fetch/lib'

Import trace for requested module:
./node_modules/node-fetch/lib/index.js
./node_modules/cross-fetch/dist/node-ponyfill.js
./node_modules/graphql-request/dist/index.js
./src/lib/gql/getClient.ts
./src/app/panel/page.tsx

I'm using node v18.

I ran into this too.
It's an optional dependency that's loaded by. node-fetch:
https://github.com/node-fetch/node-fetch/blob/2.x/src/body.js#L13-L14
However, this has been removed in v3 of the same library. It looks like cross-fetch needs to update the dependency:
https://github.com/lquixada/cross-fetch/blob/main/package.json#L69
There is a PR open for this: https://github.com/lquixada/cross-fetch/pull/144
But there has been no activity in the last 9 months on the repo. I'm not holding my breath.
Perhaps a different library handles this better?

I have the same issue with graphql-request with next 13.1.
Any temporary solutions?

I thought the error was with the GraphQLClient, but the error seems the with the gql. I tried to just use the fetch and keep the gql queries and it worked on the dev but was still getting the same error. I am using it for a simple use case wrote a generic fetch function
export const HygraphClient = async (query: string, variables = {}) => {
	const response = await fetch(process.env.HYGRAPH_ENDPOINT as string, {
		method: 'POST',
		headers: {
			'Content-Type': 'application/json',
			Accept: 'application/json',
		},
		body: JSON.stringify({ query, variables }),
	});
	const { data } = await response.json();

	return data;
};

And on pages call it like this
const projectQuery = `query GetProject($slug: String!) {
	project(where: { slug: $slug }) {
		name
		client
		slug
		description
		tags
		demo
		sourceCode
		video
		projectThumbnail {
			url
		}
		image {
			url
		}
	}
}
`;

export default async function Page({
	params,
}: {
	params: { slug: string } | undefined;
}) {
	const { project }: { project: Project } = await HygraphClient(projectQuery, {
		slug: params?.slug,
	});

Me too, I have no idea how to fix it.

It sounds like this library should reconsider its dependencies?

@jasonkuhrt looks like that library is not maintained anymore.

Maybe we can use https://github.com/developit/unfetch/tree/main/packages/isomorphic-unfetch

@jasonkuhrt as long as you're okay with the limitations of Unfetch on the client side, yep.

@jasonkuhrt as long as you're okay with the limitations of Unfetch on the client side, yep. isomorphic-unfetch is an alias of<EMAIL_ADDRESS>in Node.

I would imagine that most client side users are going to be getting the native fetch at this point?
In a year or two I would be inclined to dropping polyfillijg entirely from this library and defaulting to leveraging node and client shared base of wg fetch spec. Maybe when node 16 is end of life.
Im not familiar with this corner of the ecosystem. Am I thinking about this wrong your in opinion?

I don't face this issue at latest canary, but want to point out that you've to pass fetch to GraphQLClient (like it's a custom fetch) to cache static pages correctly:
const client = new GraphQLClient(process.env.MIDDLE_URL, {
  headers: {
    ...
  },
  fetch
});

Following @pavelliolia advice, it looks like running npm install encoding will resolve the issue.
However, we are installing a dependency that is not directly imported in our code, which can be misleading when managing dependencies.
@jasonkuhrt any update on this issue?

Hi, also experiencing this warning with latest next. Installing encoding did removed the warning, but is there any update on a permanent solution? Thanks
$: node -v
v16.18.0

  "dependencies": {
    "graphql": "^16.6.0",
    "graphql-request": "^6.0.0",
    "next": "13.4.2",
  },
  "devDependencies": {
    "encoding": "^0.1.13"
  }

This error still exists for anyone who stumbles upon it,a combination of installing encoding  and @knenkne's suggestion fixes it (Nativescript in my case)


KVM-VDI client area SPICE console

Is it possible to use/configure the spice console and not the HTML5 console inside the client area?

You will automatically use SPICE client when using kvm-vdi thin client application. If you access client area via browser - then you will be automatically provided with HTML5 client.

Yes I now.
But I want use the client area via browser, but with the SPICE client (html5 is slow).
It would be useful if you have a choice inside the client area via browser. ;-)

There is no available solution for this because of architecture of KMV-VDI and the needing for client to send heartbeats to server. Thus for SPICE client you need to use GTK frontend.

I thought it might be easy to do. Because you have the choice in the admin section.
Too bad that it can not. But thanks for your reply.

SPICE console from admin panel takes machines directly. Not from pool. This means, that its possible for this channel to be overtaken by client, - if KVM-VDI decides to provide that machine for him and machine is not in maintenance mode.
When user accesses machine via client area, KVM-VDI must receive heartbeats from client to know, that the machine is still in use. Having web portal + non-HTML5 client will abuse this, because when browser window is closed, client will still have his console via SPICE client, but will send no heartbeats.

I understand why it's not possible.


Issue/#2

Please consider the request.I finished work on issue: "Translate all texts to english".

Thanks!


feat: run remote repo in kpm run

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[ ] N
[x] Y

fix: #184

2. What is the scope of this PR (e.g. component or file name):

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[x] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[x] Unit test
[ ] Integration test
[ ] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[ ] Other

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

-13 of 45 (71.11%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.5%) to 41.15%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/runner/entry.go
2
5
40.0%

pkg/client/client.go
16
20
80.0%

pkg/cmd/cmd_run.go
0
6
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.5%

Covered Lines:
1632

Relevant Lines:
3966

💛  - Coveralls


call Chart.js methods

In the doc you are saying:

Chart instance. You can call Chart.js methods via this member.

What this supposed to mean? There is no chartComponent available

Please refer to this.
See section Parent interacts with child via a local variable and Parent calls a ViewChild.

Could you please provide an example? I still don't understand how to apply prototype methods.

From one of the other issues:
You should use ChartComponent

import { ChartComponent } from 'angular2-chartjs';

//...

@ViewChild(ChartComponent) chart: ChartComponent;

//...

this.chart.chart.update();

But this doesn't work when you have two charts on the same page.

@maikeldotuk  Sure, in case of multiple components @ViewChildreb() should be used. See https://angular.io/api/core/ViewChildren


More unnecessary promotions to highp

Using the attached source shaders and the following optimization passes (which are lifted straight from Optimizer::RegisterPerformancePasses()), I notice several unnecessary promotions to highp.
The fragment shader uses a default precision of mediump and there are a couple of notable promotions.
Here _857 promotes the alpha component of _708 to highp but is used only in a mediump expression/assignment:
    vec4 _708 = textureLod(postProcess_colorBuffer, vertex_uv, 0.0);
    highp float _857 = _708.w;
    // ...
    float _725 = // ...
    float _728 = // ...
    float _748 = max(_725, _857) - min(_728, _857);

Later something similar happens:
highp float _867 = _828.w;
// _728 is mediump
bool _832 = _867 < _728;

A mediump vector is assigned to a highp vector and later mixed with a mediump vector to be stored in a mediump:
        highp vec4 _876;
        if (_840)
        {
            vec3 _846 = _821.xyz * 0.5;
            // _828 is mediump
            _876 = vec4(_846.x, _846.y, _846.z, _828.w);
        }
        else
        {
            // _828 is mediump
            _876 = _828;
        }
        // _877 and _708 are mediump, but _876 is highp
        _877 = mix(_876, _708, vec4(0.25));

And at the end of the shader. fragColor should be mediump but a promotion happens anyway:
highp vec4 _871 = _877;
_871.w = 1.0;
fragColor = _871;

Optimized shaders compiled back to GLSL with spirv-cross:
fragment-unnecessary-highp.vkglsl.txt
Shaders:
postprocess.frag.txt
postprocess.vert.txt
Optimization passes:
optimizer
            .RegisterPass(CreateMergeReturnPass())
            .RegisterPass(CreateInlineExhaustivePass())
            .RegisterPass(CreateAggressiveDCEPass())
            .RegisterPass(CreatePrivateToLocalPass())
            .RegisterPass(CreateLocalSingleBlockLoadStoreElimPass())
            .RegisterPass(CreateLocalSingleStoreElimPass())
            .RegisterPass(CreateAggressiveDCEPass())
            .RegisterPass(CreateScalarReplacementPass())
            .RegisterPass(CreateLocalAccessChainConvertPass())
            .RegisterPass(CreateLocalSingleBlockLoadStoreElimPass())
            .RegisterPass(CreateLocalSingleStoreElimPass())
            .RegisterPass(CreateAggressiveDCEPass())
            .RegisterPass(CreateLocalMultiStoreElimPass())
            .RegisterPass(CreateAggressiveDCEPass())
            .RegisterPass(CreateCCPPass())
            .RegisterPass(CreateAggressiveDCEPass())
            .RegisterPass(CreateRedundancyEliminationPass())
            .RegisterPass(CreateSimplificationPass())
            .RegisterPass(CreateVectorDCEPass())
            .RegisterPass(CreateDeadInsertElimPass())
            .RegisterPass(CreateDeadBranchElimPass())
            .RegisterPass(CreateSimplificationPass())
            .RegisterPass(CreateIfConversionPass())
            .RegisterPass(CreateCopyPropagateArraysPass())
            .RegisterPass(CreateReduceLoadSizePass())
            .RegisterPass(CreateAggressiveDCEPass())
            .RegisterPass(CreateBlockMergePass())
            .RegisterPass(CreateRedundancyEliminationPass())
            .RegisterPass(CreateDeadBranchElimPass())
            .RegisterPass(CreateBlockMergePass())
            .RegisterPass(CreateSimplificationPass());

Looks like convert-local-access-chains is dropping the relax precision decoration.
Before
OpDecorate %448 RelaxedPrecision
...
%447 = OpAccessChain %14 %397 %38
%448 = OpLoad %6 %447

after
%594 = OpLoad %9 %397
%595 = OpCompositeExtract %6 %594 3

No decorations for %594 or %595.

Thank you!

This change fixes some of the promotions, but not all. The following still happen:
A mediump vector is assigned to a highp vector and later mixed with a mediump vector to be stored in a mediump:
        highp vec4 _876;
        if (_840)
        {
            vec3 _846 = _821.xyz * 0.5;
            // _828 is mediump
            _876 = vec4(_846.x, _846.y, _846.z, _828.w);
        }
        else
        {
            // _828 is mediump
            _876 = _828;
        }
        // _877 and _708 are mediump, but _876 is highp
        _877 = mix(_876, _708, vec4(0.25));

And at the end of the shader. fragColor should be mediump but a promotion happens anyway:
highp vec4 _871 = _877;
_871.w = 1.0;
fragColor = _871;

There are a few optimization that need changes:

the return var holding the return value created by merge return.
the OpPhi results generated by the ssa rewriter.
More changes to convert-local-access-chain.

That is all I found so far.