[FLINK-23246][table-planner-blink] Refactor the time indicator materialization

What is the purpose of the change
The pr aims to refactor the time indicator materialization, including:

split Match_ROWTIME return type converter into a separator class which works before DEFAULT_REWRITE which contains rules to convert windowProperties
Move time_indicator materialize after logical_rewrite phase, which is closely before the physical optimization
Port RelTimeIndicatorConverter from SCALA to JAVA
Refactor RelTimeIndicatorConverter to match FlinkLogicalRel

Brief change log

Split Match_ROWTIME return type converter into a separator class named MatchRowTimeConverter
Introduce FlinkMatchRowTimeConvertProgram which call MatchRowTimeConverter. It works just before DEFAULT_REWRITE which contains rules to convert windowProperties
Move time_indicator materialize after logical_rewrite phase, which is closely before the physical optimization
Port RelTimeIndicatorConverter from SCALA to JAVA
Refactor RelTimeIndicatorConverter to match FlinkLogicalRel
Update LogicalWindowAggregateRuleBase#getOutAggregateGroupExpression because after moving time_indicator materialize after logical_rewrite phase, LogicalWindowAggregateRuleBase should handle time indicator case
Update updated xml for plan test which are expected because moving time_indicator materialize after logical_rewrite phase, which is closely before the physical optimization

Verifying this change
Existed UT/IT
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

cc @twalthr Please have a review when you have time, thanks a lot.

@flinkbot run azure


Chunk for Storage Actuator not loaded

How do I load chunks for the storage actuator for me to access the storage anywhere in the world?

Occultism does not come with a chunk loading mechanic. Please instead use a dedicated chunk loading mod, such as the one from FTB, as it allows server admins to configure limits


No pre-compiled binary error on Node 8.2.0

throw new Error('Compilation of µWebSockets has failed and there is no pre-compiled binary ' + Error: Compilation of µWebSockets has failed and there is no pre-compiled binary available for your system
I started receiving this error after upgrading to node 8.2.0; reverting to node 7.10.1 resolved the issue. Does this node_module not have node 8 support?
OS X
Node
Release v0.14.0 (issue replicated on master)

I confirm. Works for 7.10.1 and below. Doesn't work for 8.0.0+
Win10 x64 here.

What C++11 compiler do you guys have installed?


plasma on wayland: legacy X11 apps fail to autostart due to missing X11 server but start flawlessly after plasma gets initialized

Sometimes all the legacy X11 apps from my .desktop files in the XDG autostart directory fail to start when I log into a plasma wayland session due to missing X11 server:
Apr 10 18:19:18 pavel-nix systemd[3812]<EMAIL_ADDRESS>Failed with result 'core-dump'.
Apr 10 18:19:18 pavel-nix element-desktop[152129]: [152129:0410/181918.273372:ERROR:ozone_platform_x11.cc(239)] Missing X server or $DISPLAY
Apr 10 18:19:18 pavel-nix element-desktop[152129]: [152129:0410/181918.273423:ERROR:env.cc(255)] The platform failed to initialize.  Exiting.
Apr 10 18:19:18 pavel-nix element-desktop[152129]: The futex facility returned an unexpected error code.
Apr 10 18:19:18 pavel-nix systemd-coredump[152385]: [🡕] Process 152129 (.electron-wrapp) of user 1000 dumped core.

Though I can flawlessly launch them manually.
Probably either DISPLAY environment variable isn't being initialized or there is some kind of a race condition/missing dependency.
Usually everything works well after reboot but doesn't work after I log out of the session and log in back, so I'm inclined to think that that's a race condition.
 - system: `"x86_64-linux"`
 - host os: `Linux 6.1.23, NixOS, 23.05 (Stoat)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.13.3`
 - channels(root): `"nixos-21.11pre333218.263ef4cc414, home-manager"`
 - channels(pavel): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Did you disable services.xserver.desktopManager.plasma5.runUsingSystemd?

I didn't change that setting. Should I?

Hmm. It definitely looks like setting this option to false fixes the issue. Is it something expected/well known?.. Why it's not a default value then?

I was more expecting it to work with systemd, but not with the old startup code. AFAIK systemd startup is also the upstream default.

I wonder if this is similar to the issues I've had with applications that use a tray icon not working if they're autostarted, as the system tray doesn't exist yet. The Qt docs suggest that that shouldn't be an issue, but no idea.

¯_(ツ)_/¯


document when keyword interface is required

According to this comment interface is not required in some cases:

The interface keyword is implied for function signatures.

Since you cann't declare properties without curly brackets, interface is not needed to declare a type/interface:
interface UserInstance {
  username: String,
  credentials: String
}

could also be written like this
UserInstance {
  username: String,
  credentials: String
}

Please clarify/document when the keyword interface is required?

The interface keyword is primarily useful to provide visual contrast between function signatures and other types, since function signatures play such a critical role in documentation, and they need to presented as directly as possible (without additional syntax / keyword noise).
Hence, we intentionally make the other type declarations a little more noisy in order to draw the distinction.
It's probably true that non-callable interfaces could be recognized without the interface keyword, if it were allowed, but currently, it is not. Hence:
// Error: Missing function signature.
UserInstance {
  username: String,
  credentials: String
}

type would probably have been better but less encompassing.
Are there things not covered by regular function signatures that require the usage of interface?

Everything that is not a function signature requires the interface keyword.

Then function don't need to have another way of being expressed. It can be an internal thing not exposed to the user.
Which means that interface can only be contrived to describing user defined types, correct?
If that's the case why didn't you pick type as the keyword instead of interface?
I have shown a friend of mind a documentation in Rtype and his first question was "What's interface?"; it wouldn't have happened if it was called type…

Then function don't need to have another way of being expressed.

Function signatures are a type of interface, and the interface keyword is currently the only way to express polymorphic signatures and properties attached to the function object.

Good point about TypeScript.
But I am still favouring dropping the use of interface for functions, externally, since it's not granting the user anything more than he could using the lighter signature. It just complicates things further: KISS.
So for example I would remove the examples that use ({…}) in the beginning of the README. Why it's also valid is never explained to the user: it's confusing and an unnecessary complication. Unless you have a really good reason to maintain that ambiguity, Ill make a PR this week.

But I am still favouring dropping the use of interface for functions

How would polymorphic functions be expressed?

I would remove the examples that use ({…}) in the beginning of the README

Which examples, specifically?

Which examples, specifically?

ctrl-f ({ the first 3

How would polymorphic functions be expressed?

That's off topic. I don't want to derail this issue. Polymorphism is pretty rare IMHO. Since I can't come up with real use cases I am not qualified to answer it anyway.
Polymorphic functions have a named interface, which purpose is to be reused, I suppose. If you are using that function only once could the interface be nameless?

Which examples, specifically?

Sorry I didn't read carefully enough. Those are destructuring examples.

How would polymorphic functions be expressed?

That's off topic. I don't want to derail this issue. Polymorphism is pretty rare IMHO. Since I can't come up with real use cases I am not qualified to answer it anyway.
Polymorphic functions have a named interface, which purpose is to be reused, I suppose. If you are using that function only once could the interface be nameless?

I'm confused. What is it exactly that you want to change? You want to make it illegal to use the interface keyword to describe functions? That won't work because the interface keyword is currently the only way to express:

polymorphic signatures and
properties attached to the function object

I shouldn't have hijacked his issue. I was just saying that having two ways of doing the most common use case is probably wrong. Since you worked your way to the simpler signature and not the other way around, it makes sense that you consider the duality a necessity.

I was just saying that having two ways of doing the most common use case is probably wrong.

That's not what we have. What we have is a long-form form that works for everything, and a shortcut for the most common use-case. Getting rid of the shortcut is a bad idea, IMO, and we can't get rid of the long-form because it's necessary for the extra features it provides.

https://github.com/ericelliott/rtype/issues/65#issuecomment-175301426
https://github.com/ericelliott/rtype#function-interface


[0.7-M5] Question: How to retrieve only visible text

Is there any API to retrieve only the text that is visible on-screen along with the indices of it's beginning and end in a larger document?
The use case for this would be editing long documents within a virtual scroll pane. For example, languagetool can be used to check for spelling and grammar problems in a doc being edited. Real-time checking works fine for short documents, but analysis becomes too long as the document grows. An alternative would be to do analysis after a period of inactivity, like StackOverflow handles syntax highlighting, for example. But it would be better to be able to do the analysis as the text is entered.
Analyzing only the portion of the document shown on screen would be perfectly acceptable and performant if there were a way to get it programmatically.

At this time, no. This is something that would need to be exposed in Flowless before it could be exposed in RichTextFX. The real solution would be to show which paragraphs are visible (whether partially or not) on top of which you could then implement that feature.

I'm currently adding support for this in #501. Part of me feels like I should expose the ParagraphBox as well because then one could do bounds-related things, but I think that would need further discussion from more people.

This is now possible via #501. You can use getVisibleParagraphs().map(Paragraph::getText)


proxywasm.GetProperty([]string{"request", "path"}) got an empty result and and error in the response processing phase

If you are reporting any crash or any potential security issue, do not
open an issue in this repo. Please report the issue via emailing
<EMAIL_ADDRESS>where the issue will be triaged appropriately.
Title: One line description
Description:

Describe the issue.

zh_CN: 我想获取到上游服务接收到的 request path (被重写后的 path), 但是我用 proxywasm.GetProperty([]string{"request", "path"})  只得到了一个 空的结果和一个 error.
en: I want to get the request path (rewritten path) received by the upstream service, but I use proxywasm.GetProperty([]string{"request", "path"})  and I only get a empty result and an error.
the error:
error status returned by host: not found

[optional Relevant Links:]

Any extra documentation required to understand the issue.

which version of Envoy are you using ?

The header name of request path is ":path", not the "path". There is a colon.


[Event Change Request] Codeunit 7312 "Create Pick" - OnBeforeTempWhseActivLineInsert

Describe the request
I want to overwrite the TempWarehouseActivityLine "Shelf No." when the WhseSource2 equals Assembly. Therefore, I request to add WhseSource2 as a new Parameter to the OnBeforeTempWhseActivLineInsert event:
procedure CreateTempActivityLine(
	LocationCode: Code[10]; BinCode: Code[20]; UOMCode: Code[10]; QtyPerUOM: Decimal; QtyToPick: Decimal; QtyToPickBase: Decimal; ActionType: Integer; BreakBulkNo: Integer; QtyRndPrec: Decimal; QtyRndPrecBase: Decimal)
var
	WhseSource2: Option;
	ShouldCalcMaxQty: Boolean;
begin
	// ...
	TransferItemTrkgFields(TempWarehouseActivityLine, TempWhseItemTrackingLine);

	if (BreakBulkNo = 0) and (ActionType <> 2) then
		TotalQtyPickedBase += QtyToPickBase;
	// NEW BEGIN
	OnBeforeTempWhseActivLineInsert(TempWarehouseActivityLine, ActionType, WhseSource2);
	// NEW END
	TempWarehouseActivityLine.Insert();
end;

[IntegrationEvent(false, false)]
local procedure OnBeforeTempWhseActivLineInsert(var TempWarehouseActivityLine: Record "Warehouse Activity Line" temporary; ActionType: Integer; WhseSource2: Option)
begin
end;

Additional context
I want to overwrite the TempWarehouseActivityLine "Shelf No." when the WhseSource2 equals Assembly.
Internal work item: AB#544583

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 23054.


Even with CNI enabled the istio-init container is being injected

Installed with
$ istioctl manifest generate --set profile=demo --set cni.enabled=true --set cni.components.cni.enabled=true --set values.cni.cniBinDir=/var/lib/cni/bin --set values.cni.cniConfDir=/var/run/multus/cni/net.d --set hub=gcr.io/istio-prerelease-testing --set cni.components.cni.namespace=kube-system

Installation went fine.
Deployed bookinfo and noticed the init container was being auto injected.
Looked at config map:
$ kubectl -n istio-system get cm istio-sidecar-injector -o yaml | grep istio_cni
I see within values field: "istio_cni":{"enabled":false}
That seems to be what is causing the init container to be injected: https://github.com/istio/installer/blob/master/istio-control/istio-autoinject/files/injection-template.yaml#L3

There are a couple of problems afaics: per prior comments, it should not be necessary to set both feature and component flags, only feature. Also, setting this should reflect in values.cni.enabled, which it doesn't seem to be the case.


typo

in auto/make line 20:
if [ $RTE_ODP ];
then
    ODP_PATH=$RTE_ODP
else
    echo "Please define RTE_SDK environment variable"
    exit 1
fi

echo should be echo "Please define RTE_ODP environment variable"

Yes, and all environment variables used should be checked !


Machine mac-6 lost external connection from iPhone device.

Machine mac-6 lost external connection from iPhone device.

The external connection has been restored by rebooting machine win-6.


Fixed Best detail header file indclusion issue.

Codecov Report
Attention: Patch coverage is 71.92982% with 48 lines in your changes are missing coverage. Please review.

Project coverage is 89.30%. Comparing base (30eb0bc) to head (a3a3e74).

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #223      +/-   ##
==========================================
- Coverage   89.68%   89.30%   -0.38%
==========================================
  Files         127      128       +1
  Lines       11061    11231     +170
==========================================
+ Hits         9920    10030     +110
- Misses       1141     1201      +60

Files
Coverage Δ

include/async_mqtt/util/utf8validate.hpp
100.00% <100.00%> (ø)

include/async_mqtt/util/detail/utf8_checker.hpp
71.25% <71.25%> (ø)

... and 1 file with indirect coverage changes


Feature/generic lists asset metadata json

Fixes #2479

Pull Request Test Coverage Report for Build 6190

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 55.474%

Totals

Change from base Build 6187:
0.0%

Covered Lines:
15910

Relevant Lines:
28680

💛  - Coveralls


 This will need Blink.jl master for now due to the use of a new eval util as well as the new promise support.

serious concisification ;)

Awesome changes! Thank you for cleaning this up. It is much much better now.

Looks great, thanks for the cleanup


private or protected?

Shouldn't the protected functions be private?

Maybe...
I made them protected to keep the public API as small as possible.
I did not made them private so I could test the method seperatly by extending class for UnitTests:
https://github.com/axyr/silverstripe-ideannotator/blob/master/tests/DataObjectAnnotatorTest.php#L163
Maybe not the way to go, but it works :)

You can easily mock privates, So it shouldn't be a blocking?

I think this is a minor... closed for now...


fix: change deprecated function to one supported by django 3

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Provide option to replace schema resources

A GraphQlSourceBuilderCustomizer might need to replace the default schema resources, e.g. https://github.com/spring-projects/spring-graphql/pull/218#issuecomment-997296408.

I've isolated the PathMatchingResourcePatternResolver in a native application to better understand the issue. This is exactly what Josh hinted at: the resolver is resolving resources from the classpath and then trying to consider them as files. Resources in a native image are not files, folders up in the hierarchy are not added to the image. Even if we add them manually, they're not considered as files so the resolver cannot list resources under them.
I don't think the issue is about replacing resources - as this happens only in JVM mode since both scanned schema resources and resources manually set with a customizer are present, leading to duplicates. In native mode, this doesn't happen since the first set of resources are not discovered.
The code snippet listed in https://github.com/spring-projects/spring-graphql/pull/218#issuecomment-997296408 looks fine to me - and this should actually be quite close to what we should do in the future: an AOT processor should discover those resources at build time, register them as resources against the native image, and then generate code that does such manual registration.
In summary, I don't think we need to change the current behavior.

I've created spring-projects/spring-boot#29291 to follow up on this.
Note that Spring GraphQL doesn't offer a Jakarta variant for now, so support for this project is not yet available in the Spring Boot 3.x branch.

After a team discussion, I'm reopening this issue to also improve the situation for Boot 2.7.
@joshlong pointed out in https://github.com/spring-projects/spring-graphql/pull/218#issuecomment-997296408 that using GraphqlSourcebuilderCustomizer almost works, except that on the JVM you end up with duplicate resources. We can explicitly protect against this by checking for and ignoring duplicate registrations. This should help for this case, but also shouldn't hurt generally since there should be no reason for the same resource to be added twice.


Organization onboarding cleanup

Is there a better way to onboard an organization? The current onboarding process is a bit lengthy and technical.

No longer pursuing this. Closing.


user filter doesn't work

I tried using the filter plugin, and putting users in whitelist and blacklist and nothing seems to work.  I am putting userids in the blacklist and every message still gets forwarded..


omni 0.3.1 collect to one acctount

Hello guys!
In 0.3.1 was realized function for collect all amount to once main wallet address? How use this?

Hi @igorbiliba,
there is the sendall transaction, which allows to send the whole balance from one source to another:
https://github.com/OmniLayer/omnicore/blob/master/src/omnicore/doc/rpc-api.md#omni_sendall


Migrate xfstests cases (Part 1)

Thanks for your time, please hold on this PR review.

Split it to multiple commit, so it can explain changes on each tool.

@squirrelsc please help review, thanks!


EditorPlugin handle(object) function called 2 or 3 times when select node or switch scene tab

Godot version
3.5.1stable(Steam Version)
System information
Windows 10
Issue description
When switch between scene tabs, EditorPlugin handle() will be called twice if no nodes selected in new opened scene, and be called 3 times if nodes selected in new opened scene(select a node then open another scene and then switch back).
When select a new node, if the new node is the root node, handle() will be called twice.
Steps to reproduce
Open the project, switch between scenes, and nodes. Check the output print.
Minimal reproduction project
PluginHandleTwice.zip
https://user-images.githubusercontent.com/9168814/195263763-be38bdd4-b4a7-4297-93be-743b76ea83de.mp4

Before this bug been fixed , you can this code to fix the issue:
var last_handle = null

func handles(object):
	if object is GDScript:
		return
	if object == last_handle:
		return
	last_handle = object
	print("_______________HANDLES!__"+str(object))
	if object is Node2D:
                #do something
		pass
	else:
	        #do something
		pass

Hello , can I be assigned with this issue sir?

@tanush2508 Godot engine repository does not practice assigning issues to people. You're welcome to try a PR anyway without assigning


not working

working with webpack+angular 5.
adding popper with yarn, importing it in app.modules.ts, adding it to imports.
added the html example tooltip,
just plain html, nothing works, no errors.

any ideas?

sorry my bad .. using ng-upgrade and it didnt work because i didnt downgrade.. and i cant downgrade beacuse its a directive, so i will use yours for ng2 and the old wrapper for ng1
thx.


Replace info banner for Dappcon 23

When you spin the wheel, a
Please collect it at
Level Coworking Cafe
11 Rue de l'École Polytechnique,
75005 Paris, France

is still shown. Can you fix that as well?

Nice catch. Will do.


Validate only a String

Hi,
I haven´t found any solution if I would like to check only a String?
E.g. I want to check:
String myString = "TEST = TEST"
How is this possible?

You can do this with a custom string compare function, because strings are only supported in function parameters.
Example: https://github.com/uklimaschewski/EvalEx#custom-functions-with-string-parameters

Thanks... but then I need something like:
STRINGEQUAL("String1", "String2")
Is there no possibility to check it like:
"TEST = TEST"
Thanks in advance

Please see also Java Thread:
https://www.java-forum.org/thema/string-expression-mit-java-validieren-true-false.192890/#post-1261836

@uklimaschewski do we need to open this again?


[CSS/SVG] anim and input

need to tinker css/svg more so can use it for animations
should try for day/night

the time for the almighty grug is apon us


Error when running second controller.

Hi, when I run main with controller 2, the dynamic parsing array is empty and cannot be indexed, so what is the problem?Thanks for your answer

Could you elaborate more details about it?

Hi, when I run controller2, I directly modified Solving Dynamical Equations[t,x] in mian.m to control2, is it correct to run this way? And after doing so it suggests that the array index must be a positive integer or a logical value, and neither Ind nor J in the workspace can be calculated. Thanks for the answer.

Hi, how do I run it with controller 2?


initial preferred affinity implementation

The user can optionally specify a node affinity.  this will be used as a "Preferred" strategy.
example spec in the new config/samples yaml in this PR.
example result in the generated deployment:
affinity:
        nodeAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
            - weight: 1
              preference:
                matchExpressions:
                  - key: node.kubernetes.io/instance-type
                    operator: In
                    values:
                      - m5.2xlarge
            - weight: 50
              preference:
                matchExpressions:
                  - key: node.kubernetes.io/instance-type
                    operator: In
                    values:
                      - m5.xlarge

Please don't merge yet.  this code is bad because I didn't put the array in the correct place in types, so it only supports an array of size 1 for now.

Implements #20


DTLS alert insufficient security with libdatachannel

Your environment.

Version: v2.0.8

What did you do?
Running the libdatachannel client in https://github.com/sipsorcery/webrtc-echoes/pull/28 against the Pion echo server.
What did you expect?
The peer connection should succeed, in particular, the DTLS handshake should succeed.
What happened?
The Pion echo server sends a DTLS alert "insufficient security" in response to the DTLS Server Hello from libdatachannel. This behavior happens with both libdatachannel DTLS backends OpenSSL and GnuTLS.
I've no idea if the issue comes from Pion DTLS or not for now.
The DTLS server (libdatachannel side) chooses the cipher suite TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, sends an ECDSA certificate with curve secp256r1, sets up ECDH key exchange with secp256r1, and requests a client certificate.
The Server Hello looks OK to me on first sight:
  DTLSv1.2 Record Layer: Handshake Protocol: Server Hello
        Content Type: Handshake (22)
        Version: DTLS 1.2 (0xfefd)
        Epoch: 0
        Sequence Number: 0
        Length: 101
        Handshake Protocol: Server Hello
            Handshake Type: Server Hello (2)
            Length: 89
            Message Sequence: 0
            Fragment Offset: 0
            Fragment Length: 89
            Version: DTLS 1.2 (0xfefd)
            Random: [...]
            Session ID Length: 32
            Session ID: [...]
            Cipher Suite: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (0xc02b)
            Compression Method: null (0)
            Extensions Length: 17
            Extension: renegotiation_info (len=1)
                Type: renegotiation_info (65281)
                Length: 1
                Renegotiation Info extension
            Extension: ec_point_formats (len=4)
                Type: ec_point_formats (11)
                Length: 4
                EC point formats Length: 3
                Elliptic curves point formats (3)
            Extension: extended_master_secret (len=0)
                Type: extended_master_secret (23)
                Length: 0
    DTLSv1.2 Record Layer: Handshake Protocol: Certificate
        Content Type: Handshake (22)
        Version: DTLS 1.2 (0xfefd)
        Epoch: 0
        Sequence Number: 1
        Length: 310
        Handshake Protocol: Certificate
            Handshake Type: Certificate (11)
            Length: 298
            Message Sequence: 1
            Fragment Offset: 0
            Fragment Length: 298
            Certificates Length: 295
            Certificates (295 bytes)
                Certificate Length: 292
                Certificate: [...] (id-at-commonName=libdatachannel)
                    signedCertificate
                        version: v2 (1)
                        serialNumber: 0x009aff
                        signature (ecdsa-with-SHA256)
                        issuer: rdnSequence (0)
                        validity
                        subject: rdnSequence (0)
                        subjectPublicKeyInfo
                            algorithm (id-ecPublicKey)
                                Algorithm Id: 1.2.840.10045.2.1 (id-ecPublicKey)
                                ECParameters: namedCurve (1)
                                    namedCurve: 1.2.840.10<IP_ADDRESS> (secp256r1)
                            Padding: 0
                            subjectPublicKey: [...]
                    algorithmIdentifier (ecdsa-with-SHA256)
                    Padding: 0
                    encrypted: [...]
    DTLSv1.2 Record Layer: Handshake Protocol: Server Key Exchange
        Content Type: Handshake (22)
        Version: DTLS 1.2 (0xfefd)
        Epoch: 0
        Sequence Number: 2
        Length: 157
        Handshake Protocol: Server Key Exchange
            Handshake Type: Server Key Exchange (12)
            Length: 145
            Message Sequence: 2
            Fragment Offset: 0
            Fragment Length: 145
            EC Diffie-Hellman Server Params
                Curve Type: named_curve (0x03)
                Named Curve: secp256r1 (0x0017)
                Pubkey Length: 65
                Pubkey: [...]
                Signature Algorithm: ecdsa_secp256r1_sha256 (0x0403)
                Signature Length: 72
                Signature: [...]
    DTLSv1.2 Record Layer: Handshake Protocol: Certificate Request
        Content Type: Handshake (22)
        Version: DTLS 1.2 (0xfefd)
        Epoch: 0
        Sequence Number: 3
        Length: 66
        Handshake Protocol: Certificate Request
            Handshake Type: Certificate Request (13)
            Length: 54
            Message Sequence: 3
            Fragment Offset: 0
            Fragment Length: 54
            Certificate types count: 3
            Certificate types (3 types)
                Certificate type: RSA Sign (1)
                Certificate type: DSS Sign (2)
                Certificate type: ECDSA Sign (64)
            Signature Hash Algorithms Length: 46
            Signature Hash Algorithms (23 algorithms)
                Signature Algorithm: ecdsa_secp256r1_sha256 (0x0403)
                Signature Algorithm: ecdsa_secp384r1_sha384 (0x0503)
                Signature Algorithm: ecdsa_secp521r1_sha512 (0x0603)
                Signature Algorithm: ed25519 (0x0807)
                Signature Algorithm: ed448 (0x0808)
                Signature Algorithm: rsa_pss_pss_sha256 (0x0809)
                Signature Algorithm: rsa_pss_pss_sha384 (0x080a)
                Signature Algorithm: rsa_pss_pss_sha512 (0x080b)
                Signature Algorithm: rsa_pss_rsae_sha256 (0x0804)
                Signature Algorithm: rsa_pss_rsae_sha384 (0x0805)
                Signature Algorithm: rsa_pss_rsae_sha512 (0x0806)
                Signature Algorithm: rsa_pkcs1_sha256 (0x0401)
                Signature Algorithm: rsa_pkcs1_sha384 (0x0501)
                Signature Algorithm: rsa_pkcs1_sha512 (0x0601)
                Signature Algorithm: SHA224 ECDSA (0x0303)
                Signature Algorithm: ecdsa_sha1 (0x0203)
                Signature Algorithm: SHA224 RSA (0x0301)
                Signature Algorithm: rsa_pkcs1_sha1 (0x0201)
                Signature Algorithm: SHA224 DSA (0x0302)
                Signature Algorithm: SHA1 DSA (0x0202)
                Signature Algorithm: SHA256 DSA (0x0402)
                Signature Algorithm: SHA384 DSA (0x0502)
                Signature Algorithm: SHA512 DSA (0x0602)
            Distinguished Names Length: 0
    DTLSv1.2 Record Layer: Handshake Protocol: Server Hello Done
        Content Type: Handshake (22)
        Version: DTLS 1.2 (0xfefd)
        Epoch: 0
        Sequence Number: 4
        Length: 12
        Handshake Protocol: Server Hello Done
            Handshake Type: Server Hello Done (14)
            Length: 0
            Message Sequence: 4
            Fragment Offset: 0
            Fragment Length: 0

Full packet capture:
libdatachannel_pion_handshake_failed.zip

Woot, so excited to see this interop happening :)
I was able to reproduce, should have an answer real quick.

The issue is that the ServerHello doesn't contain a use_srtp extension. These are the entries in our ClientHello.
Extension: use_srtp (len=7)
    Type: use_srtp (14)
    Length: 7
    SRTP Protection Profiles Length: 4
    SRTP Protection Profile: SRTP_AEAD_AES_128_GCM (0x0007)
    SRTP Protection Profile: SRTP_AES128_CM_HMAC_SHA1_80 (0x0001)
    MKI Length: 0

Oh thanks, I missed it. The issue is that libdatachannel does not negotiate SRTP if media support is disabled, a behavior browsers are fine with but is actually not correct.


Error: $ operator is invalid for atomic vectors

Hello, I met this bug when trying to run your code "02_SmapCoef.R".
Error in smapc.res[[1]]$smap_coefficients :
  $ operator is invalid for atomic vectors

Manual trace-back:

Functions_2_SmapCoefPara.R - near line 95:
smapc.res <- block_lnlp(block, method = "s-map", tp = smapc.tp,
theta  = best.th, num_neighbors = 0, silent = T,
save_smap_coefficients = T)
smapc.tmp <- smapc.res[[1]]$smap_coefficients

02_SmapCoef.R - line 42:
smapc.res <- SmapCFunc(new.nums, smapc.tp = 1, stats.output = T,
embedding = "best_E", original.data = biw.data)

Just for your reference, this is the variable smapc.res I got
                          embedding tp nn theta num_pred       rho       mae      rmse
1 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11  1  0   0.3      275 0.0629169 0.1877065 0.7410197
       perc     p_val const_pred_num_pred const_pred_rho const_pred_mae
1 0.7490909 0.1493966                 275     0.03965499      0.1906353
  const_pred_rmse const_pred_perc const_p_val model_output smap_coefficients
1       0.9607041       0.8363636   0.2564432 c(2, 3, ....      c(NaN, N....
  smap_coefficient_covariances
1                 NULL, NU....

At first I suspect that this is because the function block_lnlp by package rEDM is updated, so that structure of the outcome has changed. But when I tried using rEDM 0.2.4 provided in the code (I also tried downloading the historical version of the package), I met the same problem.
Could you please revise it or help to look? Thank you in advance.

Hello, I also encountered the same problem in the process, could you solve the problem? Thank you for your help.


Upgrade to PHP 8.2

Removed support for Yasd as mentioned on the Yasd readme, PHP 8.1+ and Swoole 5+ support xdebug natively.


HtmlWebpack and similar SPA plugins injecting extra script during prerender

Hello, we're using this vue-multianalytics module to integrate Segment into our Vuejs project.  This module works great when running, but we are encountering an annoying issue when using a prerender plugin to generate static HTML files.
When running our build script, an extra script include to segment is being injected into the head of the template, e.g.:
<script type="text/javascript" defer="" src="http://cdn.segment.com/analytics.js/v1/xxxx/analytics.min.js"></script>  is being inserted into the head of our rendered pages.
This causes Segment's integration scripts to fire twice for every source we have with Segment.
To resolve this issue, we have to add a window boolean to check if the script has fired like so:
// init
if (!window._segmentLoaded) {
  analytics.load(initConf.token);
  window._segmentLoaded = true;
}

Maybe you all could figure out a more elegant way to resolve this issue?

Nevermind, I thought this fix was working but it isn't.  Going to try some other method.


No HMR support and cached content being served for MDX files with imported components

Put together an example here: https://github.com/Saeris/contentlayer-mdx-example
Two things I've observed when trying to import and use components within MDX documents:

When an imported component has changes, those changes go undetected, meaning HMR is broken for specifically those components. In the linked example, if you run yarn dev then go to src/components/ExampleComponent.tsx and uncomment line 18, this should cause a reload because the component has been changed. I used inline styles here to make it easy to inspect the HTML to confirm the embedded component doesn't update.
Even after restarting the server, Contentlayer is unable to detect that posts/mdx-component-example.mdx has any changes (technically this is true, the content of this file is unchanged), so it serves the previously compiled version from the cache. You have to manually purge the cache and generated files in order for any changes to imported components to be reflected in the app.

Effectively this makes authoring mdx content quite a chore and is far from intuitive.
Additionally, if you want to import components that themselves have dependencies (in ExampleComponent, I'm importing Button), you can't set "target": "es5", inside of tsconfig.json such as in the official nextjs example, as you'll get a compilation error:
X [ERROR] Transforming const to the configured target environment ("es5") is not supported yet

    ../components/Button.tsx:4:7:
      4 │ export const Button: FC<{
        ╵        ~~~~~

  The target environment was set to "es5" here:

    ../tsconfig.json:3:14:
      3 │     "target": "es5",
        ╵               ~~~~~

X [ERROR] Transforming destructuring to the configured target environment ("es5") is not supported yet

    ../components/Button.tsx:7:6:
      7 │ }> = ({ children, onClick }) => (
        ╵       ^

  The target environment was set to "es5" here:

    ../tsconfig.json:3:14:
      3 │     "target": "es5",
        ╵               ~~~~~

Error: Found 1 problems in 1 documents.

 └── Encountered unexpected errors while processing of 1 documents. This is possibly a bug in Contentlayer. Please open an issue.

     • "mdx-component-example.mdx": UnexpectedMDXError: Error: Build failed with 2 errors:
     ../src/components/Button.tsx:4:7: ERROR: Transforming const to the configured target environment ("es5") is not supported yet
     ../src/components/Button.tsx:7:6: ERROR: Transforming destructuring to the configured target environment ("es5") is not supported yet

SourceFetchDataError: {
  "_tag": "HandledFetchDataError"
}

It would be very helpful if there was an official example of how to use custom components in MDX with Contentlayer. Right now there is little if anything to go off of in the documentation.

Thanks a lot for opening this issue and providing a minimal reproduction - very helpful!
I can confirm that component HMR (as well as cache invalidation) indeed doesn't work when importing components from MDX files directly. However (at least as a workaround for now), it does already work as expected in case you're importing the used React components like in the screenshot below:

Is HMR "supposed" to work at all? For me it doesn't seem to work properly for regular mdx-files either, no components or imports, just regular markdown with frontmatter and some plain html elements. 🤔
It does pick up on new files I add, but when I change existing files, I can't see the changes no matter how hard I reload the browser. I have to shutdown the nextjs dev server and restart it, then the change appears on the next refresh. 🤷♂

@Svish When using imported components in MDX files I've found that it only refreshes after re-saving the MDX file itself.

@city17 It's the MDX file itself I'm editing, and it doesn't even use any imported components at all.

Running into the same issue :(
Any workarounds until this is resolved?


Allow webRequest.onBeforeRequest to redirect to libdweb protocol handler

Summary
Thanks to webRequest.onBeforeRequest API WebExtensions are able to inspect HTTP request before it is sent and redirect it to a different URL.
It would be neat if we could use this WebExtension API for uplifting protocol-specific HTTP requests by cancelling and redirecting them to native protocol handler.
Example: IPFS Gateway on HTTP
In context of IPFS we want to redirect requests made to HTTP gateways:

detect HTTP gateways: https://ipfs.io/ipfs/<cid> and https://<cid>.ipfs.foo.tld
redirect to ipfs://<cid>

Problem
Right now cross-protocol redirect via webRequest.onBeforeRequest is not possible.
PoC redirect from https:// to ipfs:// gets blocked:

It feels related to discussion in https://github.com/mozilla/libdweb/issues/52, but here we talk about redirecting from http:// to foo:// via webextension API, not loading content embedded in HTML page.
Let me know if more data or MVP demo is needed.

Moving to https://bugzilla.mozilla.org/show_bug.cgi?id=1572200 as it can't be addressed here


Cron deleted still run

Same after deleted cron still working

You have to "save to crontab" to remove jobs after deleting.


Allow user to input a request per model query

Ex) Highlight code, right-click, type request (e.g., "write unit tests for these methods")

See https://github.com/beanlab/vs-code-ai-extension/commit/6f94c6807ed6ae674c7a5101e66c3a125d462791 for a basic, basic version

For now, have everything go to a diff view

Separate "Explain", "Review", and "Review (custom prompt)".


Issue: no bootnodes defined for network ID1

.
time="2021-06-23T12:31:40+08:00" level=warning msg="no bootnodes defined for network ID1"
Error: init chain: dial eth client: dial tcp [::1]:8546: connectex: No connection could be made because the target machine actively refused it.

how did you fix it?

You need to configure a swap-endpoint.  See https://docs.ethswarm.org/docs/installation/install#blockchain-endpoints


Issues with v-leaflet add-on

John, do you have any idea why people can't compile widgetset with v-leaflet?
https://vaadin.com/forum#!/thread/14319851/15040559

@mstahv At least one thing I found was that the leaflet addon inherits the old default widgetset. That won't work with Vaadin 8 that does not include the old one.
The latest Gradle plugin defaults to latest Vaadin 8 version so all users trying out the gradle plugin and leaflet will get a compilation failure because of this. Could you update the addon to become V8 compliant?

Ah, maybe that is the issue indeed. There actually is a Vaadin 8 compatible version done by Ilia, but didn't cut a release as started waiting, and waiting, and waiting for beta2 :-)

Alright, closing this then :)

Sorry to re-open this issue but as I'm unable to compile v-leaflet with this plugin I think its the same context, eventhough it is not the exact same problem. Check this issue out: https://github.com/mstahv/v-leaflet/issues/187


Beatmap folder creation failed

When attempting to download this song (https://beatsaver.com/beatmap/74d5) I get the following error:
"Error: Error: Couldn't create a folder for the new beatmap."
I assume this has to do with the title needing further sanitization, as it contains a question mark, which is an illegal character for Windows filenames.
Downloading it manually from Beatsaver and extracting it to a folder with the same naming convention, minus the question mark worked fine.

#37, #35, #20 are all about this error, but this should have been fixed by now. I just tried with the one installed on my pc, it just downloaded fine.
Could you please ensure you're in 1.2.1, the latest version ? It is written on the home page, below the logo. I just want to ensure that before going further :). There's no auto-update for beatlist.

Ah. Sorry. Must have missed those issues in my quick search.
I see I am running 1.1.4. I just assumed it would auto update. My mistake. :)
(Speaking of, is such a feature planned?)

No problem, glad it was not a new bug lol
It is in the roadmap but who knows when I'll code it. At the moment I'm more in a maintenance mode rather than adding new functionality. But I might get motivation again :)

I might take a look at the project one of these days.
With it being Electron, with Vue and TypeScript, it wouldn't be my first rodeo.


Add support for multiple files

I want to be able to upload multiple files in a single control

@JoeChapman There is the beginning of some work in this direction in #3 if you want to pick it up.

Published with multi support at 0.2.0


Feature Request - NDI Sending

Hello,
Sending the Camera over NDI either using the Game Viewport or via a SceneCapture2D component would be really useful. Similar to how the Unreal Spout plugin works
https://github.com/AleDel/Spout-UE4
Thanks,
Harvey

Thanks Harvey, NDI output is already on the to-do list. It is scheduled for 4.19, but will likely arrive much sooner.

This is a really great news, so it means that there will be a native output framework (media framework ?)

Looking forward to this very important feature!

Me too!
Sent from my iPhone

On 4 Feb 2018, at 05:01, L05<EMAIL_ADDRESS>wrote:
Looking forward to this very important feature!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

And me!)

and me :)

Hi,
Is it possible to use the NDI UE4 plugin, to send video out to like an external player ie: VLC player?
Not quite sure how to use this, but I'm looking for an RTSP video server to send video out of UE4...

and me 👍

and me👍

waiting for it

so this feature never arrived huh

I no longer work on this plug-in - it is now obsolete. You should use Newtek's official NDI plug-in for UE4 that just came out a couple weeks ago. It works very well: https://ndi.tv/sdk/

Was just about to respond similarly. I can confirm that it works very well.

Carlos Garcia
Software Engineer / Media Artist
//L05.is http://l05.is/
[image: L05-logo-small.png] https://L05.is
On Wed, May 6, 2020 at 9:58 AM Gerke Max Preussner<EMAIL_ADDRESS>wrote:

I no longer work on this plug-in - it is now obsolete. You should use
Newtek's official NDI plug-in for UE4 that just came out a couple weeks
ago. It works very well: https://ndi.tv/sdk/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ue4plugins/NdiMedia/issues/18#issuecomment-624768253,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6QI2SK63TTGF7RTPMUACLRQGJK3ANCNFSM4D3WU32Q
.

@L05 @gmpreussner thank you both! I really works great, only can't find how to send image with alpha


Fix escaping of variable spaces

Old code would use a + instead of %20 for spaces since it was
encoding the string as a query instead of like a path.
Connected to https://github.com/cyberark/summon/issues/98

@sgnn7 can we prep to cut a 0.5.1 release? I think you should bump the VERSION / edit the changelog as part of this PR. will you be able to add the release to github?


Small fixes for docs

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.09%) to 85.962%

Totals

Change from base Build<PHONE_NUMBER>:
0.09%

Covered Lines:
4568

Relevant Lines:
5314

💛  - Coveralls


Allow tweaking of Kubernetes dashboard resources

PR for #1328

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1329   +/-   ##
=======================================
  Coverage   37.79%   37.79%
=======================================
  Files          67       67
  Lines        4231     4231
=======================================
  Hits         1599     1599
  Misses       2408     2408
  Partials      224      224

Impacted Files
Coverage Δ

core/controlplane/config/config.go
63.86% <ø> (ø)
: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 6c509be...e71e38b. Read the comment docs.

A squash may help here to clean the history

Hmm something went horribly wrong here - re-submitting.


Take also accepts strings

Hi,
This is intended for discussion, as the second (commented) test was supposed to pass, and it doesn't.
What do you think?
Tks
EDIT: ok, tests now pass, also included drop.
Some other PR had tabs instead of spaces, also fixed that.

Hi @jcristovao. This is looking fine. Thanks for fixing the indents too.


⚠ SolarOscp has degraded performance

In f4f66ec, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 377 ms

Resolved: SolarOscp performance has improved in f2da3af after 12 minutes.


Fixed spelling of "pony".

The change failed as the length of "pony" is shorter than the misspelled "poney".


No way for user to adjust timeout limit on WCS1 getcoverage requests.

Probably applies to other services and versions as well, but as an example:
WebCoverageService_1_0_0.getCoverage() calls OpenURL with no timeout parameter, so the timeout is always the default of 30 seconds.
It would be handy if you could specify a timeout parameter that would be passed through to OpenURL.


warning when setting rowModelType : 'normal'

In 4.0.x this works fine but in 4.1.x the console spits out
ag-Grid: count not find matching row model for rowModelType normal when normal is explicitly set.
The documentation state this should be a valid value to set.
My set up is I have "default"-gridoptions where I set 'pagination' which is the case for most of my grids, so in a few places I need to override my default back to normal, but then this warning shows up.
plunker and if you open the console you will se the error/warning

can you set it to undefined?

That worked!
Usually I prefer to set stuff to null and not undefined, which worked fine in this case as well. Do you think there is any difference?

i'll fix it so 'normal' doesn't throw an error.
no real different, i shouldn't be making the differentiation in the grid code.

Hi @ceolter, we are still experiencing this issue in version 6.2.1. We've been waiting for warning to be remove since versoin 4.0. Has it ever been fixed or is it something in our settings?

Ok, setting it to undefined from 'normal' solved it. I hope we will not find any issues when it's not explicitly set to 'normal'...


Void Token Update

I'm submitting a ...
[x] token modification request from mainnet / devnet

Summary

 added in this PR

modification PR

add a CoinGeckoId for listed token

merged


ModelInstance materials

Please ensure you have given all the following requested information in your report.
Issue details
When a ModelInstance is drawn it uses the materials on the Model and ignores the materials on the instance itself.
Reproduction steps/code
package com.test.tester;

import com.badlogic.gdx.*;
import com.badlogic.gdx.graphics.*;
import com.badlogic.gdx.graphics.VertexAttributes.Usage;
import com.badlogic.gdx.graphics.g3d.Environment;
import com.badlogic.gdx.graphics.g3d.Material;
import com.badlogic.gdx.graphics.g3d.Model;
import com.badlogic.gdx.graphics.g3d.ModelBatch;
import com.badlogic.gdx.graphics.g3d.ModelInstance;
import com.badlogic.gdx.graphics.g3d.attributes.ColorAttribute;
import com.badlogic.gdx.graphics.g3d.environment.DirectionalLight;
import com.badlogic.gdx.graphics.g3d.utils.ModelBuilder;

public class ModelInstanceCopyTest extends ApplicationAdapter
{
	Environment environment;
	ModelBatch batch;
	Model model;
	ModelInstance instance;
	PerspectiveCamera camera;

	public void create()
	{
		camera = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
		camera.near = 1f;
		camera.far = 300f;
		camera.translate(0, 0, 10);
		camera.update();

		environment = new Environment();
		environment.set(new ColorAttribute(ColorAttribute.AmbientLight, 0.4f, 0.4f, 0.4f, 1f));
		environment.add(new DirectionalLight().set(0.8f, 0.8f, 0.8f, -1f, -0.8f, -0.2f));

		batch = new ModelBatch();

		ModelBuilder builder = new ModelBuilder();
		model = builder.createSphere(
			2,
			2,
			2,
			20,
			20,
			new Material(ColorAttribute.createDiffuse(Color.RED)),
			Usage.Position | Usage.Normal);
		instance = new ModelInstance(model);
		instance.materials.clear();
		instance.materials.add(new Material(ColorAttribute.createDiffuse(Color.BLUE)));
	}

	public void render()
	{
		Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT);
		batch.begin(camera);
		batch.render(instance, environment);
		batch.end();
	}

	public static void main (String[] args) throws Exception {
		new LwjglApplication(new ModelInstanceCopyTest());
	}
}

This renders a red circle in the middle of the screen even though the instance has a blue material.
Version of LibGDX and/or relevant dependencies
1.9.6
Please select the affected platforms

[ ] Android
[ ] iOS (robovm)
[ ] iOS (MOE)
[ ] HTML/GWT
[x] Windows
[ ] Linux
[ ] MacOS

Only tested on marked platfoms.

It uses the ModelInstances' materials not the Models'.
The problem here is that you are clearing the ModelInstance#materials array, which is just a little helper array so you don't have to traverse the node hierarchy to change materials. Simply clearing it or adding new Materials to this array will not effect anything.  If you just want to change a specific material property, don't clear the array, and just modify the material object directly.


Replace usage() with freeBytes() in thresholds within hot paths of PoolChunkList

Replace usage() with freeBytes() in thresholds within hot paths of PoolChunkList
Motivation:
PoolChunk.usage() method has non-trivial computations. It is used currently in hot path methods invoked when an allocation and de-allocation are happened.
The idea is to replace usage() output comparison against percent thresholds by Chunk.freeBytes plain comparison against absolute thresholds. In such way the majority of computations from the threshold conditions are moved to init logic.
Modifications:
Replace PoolChunk.usage() conditions in PoolChunkList with equivalent conditions for PoolChunk.freeBytes()
Result:
Improve performance of allocation and de-allocation of ByteBuf from normal size caches

JMH benchmark: https://gist.github.com/netudima/006f0fda91a8f53bc02ca4b825afaacb
Before:
Benchmark                              (value)  Mode  Cnt    Score   Error  Units
NettyAllocatorBenchmark.getAndRelease    12345  avgt   15   50.130 ± 0.635  ns/op
NettyAllocatorBenchmark.getAndRelease   123456  avgt   15  114.426 ± 2.168  ns/op
NettyAllocatorBenchmark.getAndRelease  1234567  avgt   15  102.855 ± 2.008  ns/op

After:
NettyAllocatorBenchmark.getAndRelease    12345  avgt   15   50.308 ± 1.237  ns/op
NettyAllocatorBenchmark.getAndRelease   123456  avgt   15  105.118 ± 1.414  ns/op
NettyAllocatorBenchmark.getAndRelease  1234567  avgt   15   93.763 ± 1.795  ns/op

Note: results for buffer with size = 12345 are the same because the alloc/dealloc path for this size does not pass through the changed conditions.

Would it be possible to also check in the benchmark ?

@netty-bot test this please

Would it be possible to also check in the benchmark ?

Yes, I will check how the benchmarks are organized and add it.
One related observation, there are synchronized sections within freeBytes()/usage(). If I got correctly - there were added to get the values as metrics by other threads via PoolChunkMetric API. The question is do we really need these sections in case of access within allocation/deallocation paths? (checking now).
The cost of the synchronized (same bench):
With sync:
Benchmark                              (value)  Mode  Cnt   Score   Error  Units
NettyAllocatorBenchmark.getAndRelease   123456  avgt   15  105.118 ± 1.414  ns/op
NettyAllocatorBenchmark.getAndRelease  1234567  avgt   15   93.763 ± 1.795  ns/op

Without sync:
Benchmark                              (value)  Mode  Cnt   Score   Error  Units
NettyAllocatorBenchmark.getAndRelease   123456  avgt   15  83.440 ± 1.374  ns/op
NettyAllocatorBenchmark.getAndRelease  1234567  avgt   15  76.088 ± 2.419  ns/op

@netudima to correctly evaluation of the synchronization block I suggest to tune the biased lock delay to 0

good point, let me check, at the same time it looks like there are plans to drop biased lock support in future: https://bugs.openjdk.java.net/browse/JDK-8231265

And maybe (idea for another pr, mine of yours) would be to use a static final const to disable the telemetry of the pool (leaving it true but default) and evaluate the impact by disabling it

note: the same warn regarding biased locking is highlighted in https://mechanical-sympathy.blogspot.com/2011/11/biased-locking-osr-and-benchmarking-fun.html.
Measurements with the delay = 0
with sync in freeBytes() and -XX:BiasedLockingStartupDelay=0:
Benchmark                              (value)  Mode  Cnt   Score   Error  Units
NettyAllocatorBenchmark.getAndRelease   123456  avgt   15  83.112 ± 0.489  ns/op
NettyAllocatorBenchmark.getAndRelease  1234567  avgt   15  71.333 ± 1.371  ns/op

without sync in freeBytes() and -XX:BiasedLockingStartupDelay=0:
Benchmark                              (value)  Mode  Cnt   Score   Error  Units
NettyAllocatorBenchmark.getAndRelease   123456  avgt   15  74.318 ± 1.589  ns/op
NettyAllocatorBenchmark.getAndRelease  1234567  avgt   15  63.752 ± 4.306  ns/op

So, yes, there is a significant difference in results compared to the default BiasedLockingStartupDelay:
java -XX:+PrintFlagsFinal -version | grep BiasedLockingStartupDelay
     intx BiasedLockingStartupDelay                 = 4000                                {product}
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.242-b08, mixed mode)

With biased locking applied the cost of sync is much lower, at the same time it is still not zero.
Note: testing of the option without sync in freeBytes() with and without -XX:BiasedLockingStartupDelay=0 gives different values because there are other sync sections in the allocation/de-allocation paths.

freeBytes field access analysis:
reads:
r01 - io.netty.buffer.PoolChunk#usage() - io.netty.buffer.PoolChunk#arena LOCK
r02 - io.netty.buffer.PoolChunk#toString() - io.netty.buffer.PoolChunk#arena LOCK
r03 - io.netty.buffer.PoolChunk#freeBytes() - io.netty.buffer.PoolChunk#arena LOCK
r04     io.netty.buffer.PoolChunkList#allocate() - see w03
r05      io.netty.buffer.PoolChunkList#free() - see w10
r06      io.netty.buffer.PoolChunkList#move() - no lock on arena on this layer
r07        io.netty.buffer.PoolChunkList#move0() - no lock on arena on this layer
r08         io.netty.buffer.PoolChunkList#move() - see r06 (recursion)
r09           io.netty.buffer.PoolChunkList#free() - see w10
r10       io.netty.buffer.PoolChunkList#add() - no lock on arena on this layer
r11         io.netty.buffer.PoolChunkList#add() - see r10 (recursion)
r12         io.netty.buffer.PoolArena#allocateNormal() - see w05
r13         io.netty.buffer.PoolChunkList#allocate() - see w03

writes:
w01 - io.netty.buffer.PoolChunk#allocateRun() - no lock on arena on this layer
w02     io.netty.buffer.PoolChunk#allocate() - no lock on arena on this layer
w03       io.netty.buffer.PoolChunkList#allocate() - there is a read of freeBytes here, no lock on arena on this layer
w04         io.netty.buffer.PoolArena#allocateNormal() - see w05
w05       io.netty.buffer.PoolArena#allocateNormal() - no lock on arena on this layer
w06         io.netty.buffer.PoolArena#allocate(...) - LOCK on this arena

w07 - io.netty.buffer.PoolChunk#allocateSubpage() - no lock on arena on this layer
w08     io.netty.buffer.PoolChunk#allocate() - see w03
w09 - io.netty.buffer.PoolChunk#free() - no lock on arena on this layer
w10     io.netty.buffer.PoolChunkList#free() - there is a read of freeBytes here, no lock on arena on this layer
w11       io.netty.buffer.PoolArena#freeChunk() - LOCK on this arena

In total, for allocate/de-allocate paths all accesses to freeBytes() are happen from traces protected by Arena lock and sync section can be skipped for these paths.

I would add a Black hole::consumeCPU with a variable amount of tokens between acquire/release to simulate some cpu activity (on real cases you would allocate-do something-free).

@netty-bot test this please

Thank you. Regarding consumeCPU, no problem, I will add it to the bench.
For my better understanding could you please help to clarify what is the expected effect from it? In case of multi-threaded benchmarks I suppose it may help to make contention between threads more realistic but the current benchmark is a single-threaded. Is it to emulate something like CPU caches eviction?
I found only this comment - https://stackoverflow.com/questions/36288502/jmh-why-do-i-need-blackhole-consumecpu

@netudima acquire/release on pool involves heavyweight (for the CPU cache) atomic operations for the uncontended case as well (see how an unbiased JDK uncontended locks work too) and consumeCPU is a nice tool to amortize (see  https://shipilev.net/blog/2014/nanotrusting-nanotime/) these operations to study their relative costs (and make possible to compare against other versions that seems to lower such cost). Obviously given that is not such known tool the risk to misuses is high so I am open for discussion to understand if this case is a good candidate or not, but is not mandatory for this PR :)

@netty-bot test this please

@netty-bot test this please

@netudima thanks a lot... great one!


Release azure-cli-cognitiveservices 0.1.5

This checklist is used to make sure that common guidelines for a pull request are followed.
General Guidelines

[ ] The PR has modified HISTORY.rst with an appropriate description of the change (see Modifying change log).

Command Guidelines

[ ] Each command and parameter has a meaningful description.
[ ] Each new command has a test.

(see Authoring Command Modules)

Reviewers, please verify the following for this PR:

[ ] The PR title has format Release <component-name> <version>.
[ ] setup.py has been modified with the same version as in the PR title.
[ ] HISTORY.rst has been modified with appropriate release notes.
[ ] If releasing azure-cli or azure-cli-core, __version__ defined in __init__.py should also be modified to match.

Started releasing azure-cli-cognitiveservices 0.1.5...

Release of 'azure-cli-cognitiveservices' with version '0.1.5' successful. View at https://pypi.python.org/pypi/azure-cli-cognitiveservices/0.1.5.

GitHub release created. https://github.com/Azure/azure-cli/releases.

Codecov Report

Merging #3839 into master will increase coverage by 0.16%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #3839      +/-   ##
==========================================
+ Coverage   70.75%   70.91%   +0.16%
==========================================
  Files         424      424
  Lines       26895    26895
  Branches     4094     4094
==========================================
+ Hits        19029    19073      +44
+ Misses       6621     6581      -40
+ Partials     1245     1241       -4

Impacted Files
Coverage Δ

src/azure-cli-core/azure/cli/core/prompting.py
19.27% <0%> (ø)
:arrow_up:

...dback/azure/cli/command_modules/feedback/custom.py
31.25% <0%> (ø)
:arrow_up:

...nent/azure/cli/command_modules/component/custom.py
16.23% <0%> (ø)
:arrow_up:

src/azure-cli-core/azure/cli/core/util.py
70.06% <0%> (ø)
:arrow_up:

...ice/azure/cli/command_modules/appservice/custom.py
73.46% <0%> (+0.24%)
:arrow_up:

...zure-cli-vm/azure/cli/command_modules/vm/custom.py
77.01% <0%> (+0.31%)
:arrow_up:

...ource/azure/cli/command_modules/resource/custom.py
62.41% <0%> (+0.33%)
:arrow_up:

...cli-vm/azure/cli/command_modules/vm/_validators.py
75.59% <0%> (+0.33%)
:arrow_up:

...azure-cli-core/azure/cli/core/commands/__init__.py
69.79% <0%> (+0.44%)
:arrow_up:

.../azure/cli/command_modules/vm/_template_builder.py
85.78% <0%> (+0.49%)
:arrow_up:

... and 10 more

Continue to review full report at Codecov.

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


[Helm 3] Rollback to last successful release fails with --atomic flag in helm3

Output of helm version: helm version
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}
Output of kubectl version: kubectl version
Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3+coreos.0", GitCommit:"f96beb2e925b0bb4e6ac0de746c7155dcd8fdc10", GitTreeState:"clean", BuildDate:"2017-11-13T10:18:37Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3+coreos.0", GitCommit:"f96beb2e925b0bb4e6ac0de746c7155dcd8fdc10", GitTreeState:"clean", BuildDate:"2017-11-13T10:18:37Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
Cloud Provider/Platform (AKS, GKE, Minikube etc.):  GCP
Deployed one of the helm chart successfully.
helm list -n helm-test

helm history tag-manager-api -n helm-test

Issue:
After upgrading the release with newer changes with --atomic flag it fails to upgrade with following error
helm upgrade tag-manager-api ./ --install --namespace helm-test --atomic
Error: UPGRADE FAILED: an error occurred while rolling back the release. original upgrade error: the server could not find the requested resource: release tag-manager-api failed: the server could not find the requested resource
Release should be rolled back to previous version after failed upgrade which didn't happened...
helm history tag-manager-api -n helm-test

Seems like there is some bug here.....

Hey @GaykarSanket, can you please provide a reproducible test case where we can test this?
A contributing factor may be your version of Kubernetes. It's unclear whether this could be a bug due to the cluster's current state. 1.8 is currently unsupported, so it's possible there may be an interaction with Helm and Kubernetes that we cannot predict here. Helm currently supports n-3 releases back, which would be Kubernetes 1.13. Can you please re-test this behaviour with a more recent version of Kubernetes?

Thanks @bacongobbler. I've tested this behavior on minikube with kubernetes version 1.14.1 and it's working fine. Release gets rolled back to previous successful release after a failed upgrade.

Steps to reproduce this error:

Login to kubernetes cluster with following version
Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3+coreos.0", GitCommit:"f96beb2e925b0bb4e6ac0de746c7155dcd8fdc10", GitTreeState:"clean", BuildDate:"2017-11-13T10:18:37Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3+coreos.0", GitCommit:"f96beb2e925b0bb4e6ac0de746c7155dcd8fdc10", GitTreeState:"clean", BuildDate:"2017-11-13T10:18:37Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}

Install stable version of Helm i.e. v3
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}

Create default helm chart of nginx
helm create nginx

Change apiVersion of deployment to extensions/v1beta1 as apps/v1 is not supported in v1.8
Update the deployment file: vim nginx/templates/deployment.yaml

Now install nginx helm chart:
helm upgrade nginx-test --install ./nginx/

Check status of deployed release:
helm history nginx-test

Now update the values file and set image repository value to something which doesn't exists e.g. nginx123. So that upgrade will fail....
vim nginx/values.yaml

Upgrade the release with latest changes adding --atomic flag:
helm upgrade nginx-test --install --atomic ./nginx/
Above command gives output like: Error: UPGRADE FAILED: an error occurred while rolling back the release. original upgrade error: the server could not find the requested resource: release nginx-test failed: the server could not find the requested resource

Check history of release:
helm history nginx-test

Seems like --atomic flag has some issue while finding resources to roll back with kubernetes version 1.8...

All right. Given that our support contract is for support 3 versions back from the latest, we urge you to upgrade to a newer version of Kubernetes. No action to take on our end here. Thanks.


False positive when lib/nsif/nsifc is missing

Trying an attack without having the file lib/nsif/nsifc installed returned this:
[*] Performing nsif attack on /tmp/tmptkcgwroj.
sh: lib/nsif/nsifc: not found
[*] Attack success with nsif method !

The script attacks/single_key/nsif.py must check if the file exists.

I've checked NSIF attack and there is too much work for now.
I've temporary deactivated the module.


IndexError when run train_gcn.py

(airobj) oppoer@falcon:AirObject$ python './train/train_gcn.py' -c './config/train_gcn.yaml' -g 1
loading annotations into memory...
Done (t=25.07s)
creating index...
index created!
Finish cuda loading
load model from ./models/gcn_model_coco.pth
===> Saving state to: ./experiments/train_gcn/Mar29_03-52-26_gcn
0%|▎                                                                                | 3/1133 [00:09<1:00:20,  3.20s/it]
train:   0%|                                                                                | 0/15 [00:09<?, ?it/s]
Traceback (most recent call last):
File "./train/train_gcn.py", line 221, in
main()
File "./train/train_gcn.py", line 218, in main
train(configs)
File "./train/train_gcn.py", line 108, in train
object_filter = ann_mask[keypoints[:,0].T,keypoints[:,1].T]
IndexError: index 1029 is out of bounds for axis 0 with size 720

Thank you for reaching out with your query.
I believe the problem is being caused due to the size differences between the annotation mask and extracted superpoint features.
The YT-VIS dataloader resizes the images and annotation masks to 720*1280. However, the Superpoint Inference script shared in the repo doesn't resize the images. A few videos in YT-VIS have a different resolution and would need to be resized during SuperPoint Inference. Please add the following lines to your superpoint inference script (after line 59):
if (image.shape[0] != 720) or (image.shape[1] != 1280):
    image = cv2.resize(image, (1280, 720), interpolation=cv2.INTER_LINEAR)

Re-extracting SuperPoint Features should resolve the issue.


v0.18.3 --target typescript-modern generates .js file extensions

Command:
apollo-codegen generate src/**/*.graphql --schema schema.json --target typescript-modern

It does still have /* tslint:disable */ in the file, so I assume it isn't using the flow type generator.

Fixed in #334

has this been releases? :)


Added Microsoft SQL Server example

what

Added Microsoft SQL Server example

why

There was MySQL RDS example but nothing for MSSQL

Can someone please review this PR?

Hi @amitkarpe
Saw your message on Slack.
This PR looks fine at a glance.
We're just waiting on some upstream changes before reviewing and running the automated tests.

Anything I should add here?

/test all

@amitkarpe do you mind merging in master?

Merge is blocked which needs at least one approval.

@amitkarpe please rebase from master

/test all

/test all

/test all

/rebuild-readme

/rebuild-readme

/test all

/test all

/test all

/test all

/test terratest

/test terratest

Thank you for your guidance.
@joe-niland and @Gowiem

Thank you for your guidance.
@joe-niland and @Gowiem


iframe support

Added ownerDocument  and contentWindow  options to proper work in iframe.
Run w/o DateFormatter  fix.

Can you send pull request in doc.tpl file?

@xdan sure, https://github.com/xdan/datetimepicker/pull/468


Filewatcher hangs on error

When encountering an error (in my case an ErrWatchedFileDeleted), the filewatcher seems to stop (even though it's not Closed, so I cannot restart it) and I'm not receiving any more events.
Is this a bug or am I not handling errors properly ?
My code looks very much like the examples provided, and I encounter this error because a temp file is quickly added and removed from the fs (and I just want to ignore it).
Thanks !

Hi @radovskyb , thanks for your reply.
This is the code that instantiates and starts the filewatcher
	w := watcher.New()
	w.FilterOps(watcher.Create)
	go handleEvents(w, onSuccess)
	if err := w.AddRecursive(path); err != nil {
		log.Fatalln(err)
	}

	if err := w.Start(time.Second); err != nil {
		log.Fatalln(err)
	}

	done := make(chan bool)
	<-done

And this is the handleEvents func
func handleEvents(w *watcher.Watcher, onSuccess OnFileWritten) {
	for {
		select {
		case event := <-w.Event:
			if !isDir(event.Path) {
				log.Println("New file detected")
				done := make(chan bool)
				go waitForFileToFinishGrowing(event.Path, done)
				go func() {
					<-done
					onSuccess(event.Path)
				}()
			} else {
				w.Ignore(path.Join(event.Path, "index.m3u8"), path.Join(event.Path, "index.m3u8.bak"))
			}
		case <-w.Closed:
			log.Println("FileWatcher closed")
			return
		case e := <-w.Error:
			log.Printf("Error: %s", e)
		}
	}
}

As you can see, when a new directory is created I automatically want to ignore some kind of files which doesn't seem to work. They still end up being detected. I have no control over these files deletion and when they are deleted right after being detected, I get an error through the error channel.
The thing is, this error makes the filewatcher stop without closing it. I can't close it manually or restart it.
This code looks very similar to the example you provided and I can't figure out what's wrong with it.
Thanks for your help :)

Hey @Le-G,
It's a bit hard to replicate without a full working example and how to trigger the error you're receiving here, but I'll try and see if I can help anyway :)
It seems that the problem may lay elsewhere in your code. I'm not sure what waitForFileToFinishGrowing is doing, however I've created a working example from your code (With a couple of comment changes to simplify a couple of things that weren't needed in your example).
Here I am able to fully do the following.
Create a directory within the watched path, ignore a file, then lastly delete that file with no consequence. (starting from within dir, mkdir new_dir, then cd new_dir, then touch index, then rm -f index)
If you are actually receiving the ErrWatchedFileDeleted, my guess is that you are either accidentally deleting the initial path that was added, or are somewhere else in your code using w.Add and then that file is being removed possibly.
package main

import (
	"fmt"
	"log"
	"path"
	"time"

	"github.com/radovskyb/watcher"
)

func onSuccess(path string) {
	fmt.Println("sucess", path)
}

func main() {
	path := "dir"

	w := watcher.New()
	w.FilterOps(watcher.Create)

	go handleEvents(w, onSuccess)

	if err := w.AddRecursive(path); err != nil {
		log.Fatalln(err)
	}

	if err := w.Start(time.Second); err != nil {
		log.Fatalln(err)
	}

	// w.Start is synchronous so the next 2 lines aren't actually needed.
	//
	// done := make(chan bool)
	// <-done
}

func handleEvents(w *watcher.Watcher, onSuccess func(string)) {
	for {
		select {
		case event := <-w.Event:
			if !event.IsDir() { // Event has access to IsDir method already so no need for isDir method.
				log.Println("New file detected")
				onSuccess(event.Path)
			} else {
				ignorePath := path.Join(event.Path, "index")
				fmt.Printf("ignoring %s\n", ignorePath)

				w.Ignore(ignorePath)
			}
		case <-w.Closed:
			log.Println("FileWatcher closed")
			return
		case e := <-w.Error:
			log.Printf("Error: %s", e)
		}
	}
}

Hi @radovskyb ,
waitForFileToFinishGrowing doesn't do much and doesn't interfere with the problem I'm referring to (it just stats the file until its size stops changing).
I've copy/pasted your code and was able to reproduce my error.
I only changed the time.Second interval to 100*time.Millisecond (I initially increased that to a second because it makes it less likely to crash so decreasing it makes it easier to reproduce the error).
So, to reproduce my issue you just need to add and delete a file very quickly until it happens.
In my case running repeat 10000 $(touch file && rm -f file) in a watched directory does the trick.
When Error: error: watched file or folder deleted prints, nothing happens after that. The filewatcher isn't closed, Start() doesn't return and no new file is detected.
I hope this will make it easier for you to reproduce, please let me know if you need any more info.
Thanks for your help

Hi @Le-G,
I have actually been able to successfully reproduce the issue. I'm not sure off the top of my head what the issue is, but when I get some time I will try to look into it. Please let me know if you have any insights as well.
If you are able to write a unit test that can reproduce this issue, it will be much easier for me to fix as the problem is that the error is intermittent for me, but does not seem like any form of race condition.
I'll let you know of any updates! :)


Fix AbstractSuggestionPopup NPE in createMenuItem

Calling item.getImageCell().size(0); caused a crash due to NPE as image is null by default.

Looks good to me, although I'd also consider a fix at the level of MenuItem. It allows for null images right now, but I think initiating empty Images without drawables could be less error-prone overall. @kotcrab Thoughts?
@piotr-j If you remove the new Image() from the constructor and the item.getImageCell().size(0); call, does the menu look different? Maybe it's not necessary to access the image cell at all in this case.

The empty cell still takes space, see https://github.com/kotcrab/vis-ui/blob/master/ui/src/main/java/com/kotcrab/vis/ui/widget/MenuItem.java#L129.
It seems this PR was in error, it doesnt use the image to get the cell in current version.

Interesting you got NPE, I remember this throwing IllegalArgumentException because libgdx added check for null in getCell https://github.com/libgdx/libgdx/commit/f829dfc2db47f85b3da9ec3ca08fab5ec3b7c8be so before this change it worked by a coincidence because there was only one cell with null actor.

I think initiating empty Images without drawables could be less error-prone overall

True, MenuItem uses null as default image, it seems like a good idea to change it. It shouldn't be a breaking change unless someone depends on Menuitem#getImage() returning null.

It was IllegalArgumentException, I was mainly interested in root cause and didnt pay much attention to exact exception type.


Hover events or CSS classes won't work when using span instead of a inside li

Hover events or CSS classes won't work when using span instead of a inside li.

DemoHover here

Reproduction of the issue
You won't see the :hover css class being applied when you pass the mouse hover the text "hover here"
This happens because the final structure after initializing mmenu is the following one:

    DemoHover here

And the a element has a width:100% and is literally hover the span element preventing access to any element underneath it.
Instead of having something like this:

             DemoHover here

You can do something like this:
a.mm-fullsubopen:hover ~ span.demo {
  font-weight: bold;
}

http://jsfiddle.net/wus37tad/

@FrDH that is more a hack than a proper solution.
It doesn't solve other related problems such as the use of hover events in javascript, which was my main problem.
I was trying to apply a Bootstrap tooltip on an icon and I didn't find anyway of doing it.

I agree, but don't think there's a better solution that works because the markup should be consistent for a SPAN and an A. For example, the searchfield add-on adds the class mm-fullsubopen to the .mm-next if the A on the item does not match the query, but a subitem does.
IMHO having a :hover-state (or tooltip for that matter) is never a good idea for mobile devices. I realize the menu can also be used on desktop websites, but I don't think that measures up to having a consistent markup and css framework.


Use gevent ssl module

Monkeypatck the ssl module to use gevent.
Without this change attempts to communicate with an SSL URL resulted in,
do_handshake_on_connect should not be specified for non-blocking sockets

Coverage increased (+0.02%) to 74.521% when pulling 89aa8e80cdca9e7832b838d7b9e70a5c4cbfb467 on adrian:fix-ssl-monkeypatch into f507959a3d178e57e44c01d56271224ac993a753 on eonpatapon:master.


[UI] Fix CASL issues

Notes for Reviewers

[X] Subscribe navigator component to CASL ability update to reflect changes in UI
[x] Prevent "you are unauthorized" component from reflecting

https://github.com/meshery/meshery/assets/71271069/11866ff3-5ace-401e-8afa-abb04c59b427
This PR fixes #
Signed commits

[ ] Yes, I signed my commits.

LGTM

Thankyou @senali-d

@Yashsharma1911 did you make the authorized message 1) dark-mode compatible and 2) say something less off-putting?


Websocket stop receiving messages though being alive

Hello, aaugustin!
Thanks for this beautiful library. I have a problem with various Websocket servers when using the library to connect and to listen to them, unfortunately.
The problem is that, after a while (a long or a short while - from 10 minutes to several days), the websocket stops receiving any messages, though being alive and not throwing any errors.
I am currently using such an architecture to listen to the messages:
    async with websockets.connect(URL') as websocket:
        while True:
            response = await websocket.recv()
            # (processing of response)
            print(response)

Steps to reproduce:

connect to the URL=wss://api.bitfinex.com/ws/2
subscribe to any websocket channel (e.g. tickers channel - that's a channel with the current price of some currency, will have the messages sent to it very frequently):

        await ws.send(f'{{"event":"subscribe",'
                      f'"channel":"ticker",'
                      f'"symbol":"tBTCUSD"}}')

listen to this connection via the code above. This Websocket server also sends the messages for validating the connection: heartbeats ("hb")
after some time has passed, the messages, along with heartbeat messages, will stop to be received, but the websocket connection will stay alive.

It also worth notifying that the problem does not lie within one single subscription. I can subscribe to 20+ different channels and they will stop sending the info at the same time (i.e. the problem is in the websocket itself, probably)
Any variants of why may that happen and how should I fix that? I work with several Websocket Servers, but unfortunately not all of them provide that heartbeat-based check. I also tried to wrap the websocket.recv() into asyncio.wait_for(), but that is also not very good.
Sorry to bother with such a question and thanks in advance. If you need some clarification, please let me know.

Sounds as if the remote server terminates the connection when inactive. You could try sending ping messages (it doesn't really matter if the server doesn't respond) or perhaps activate TCP keep-alive.
Also, since I've seen a lot of cryptocurrency stuff in that post, be aware of this policy.

do you also follow that policy for proof of stake coins :)

I'll leave that for @aaugustin to answer. :wink:
Anyhow, closing due to inactivity.

Yeah, I should clarify that the policy applies until the average energy cost of all cryptocurrency transactions is within 2x the energy cost of Visa, Mastercard, and friends. I believe we're still a few orders of magnitude away from this :-)

(or :-( really)

@lgrahl thank you for the response!
I am not somehow connected with the producing of cryptocurrencies, I only monitor the cryptocurrencies market.
I apologise if I hurt you in any way, that was not my intention.
Thanks for the advice and good luck to you!


Add command to open a fresh new chat

I discovered I miss this option when I started the chat with an "Hola", and chatGPT was answering me always in Spanish, even when all the next questions were in English.

There's keybindings at the bottom of the README.
<C-n> starts a new session :)

Ouch, I missed it, thanks @Akeboshiwind


AzureRmWebAppDeployment succeeding but Functions don't show up in (Windows) Function App

Required Information
Entering this information will route you directly to the right team and expedite traction.
Question, Bug, or Feature?
Type: Bug
Enter Task Name: AzureRmWebAppDeployment@4
Environment

Server - Azure Pipelines

If using Azure Pipelines, provide the account name, team project name, build definition name/build number:

Account: kespry-perception-analytics
Project name: Knowledge

Issue Description
We are using this task for deploying a Function App (.NET Core 3.1) to Windows Function App Service.
The first time running this, which was after the environment was created 'fresh' via Terraform, the Functions weren't all deployed correctly - looking at this list, nothing was there.  But on redeployment they showed up.

task: AzureRmWebAppDeployment@4
displayName: ' Deploy Knowledge'
inputs:
azureSubscription: {redacted}
appType: functionApp
WebAppName: '$(tf_computed_function_knowledge_name)'
packageForLinux: '$(System.DefaultWorkingDirectory)/**/{redacted}.Knowledge.zip'

Our release pipeline pushes 8 function apps, and 3 of them deployed properly, while 5 had no functions.  On redeployment, all 8 of them showed up.
We've been sporadically seeing this issue, and it's most obvious on a 'fresh' environment since we can see not all the functions are listed.
Task logs
This is from the first deployment, after which the Function methods didn't show up:
2020-10-10T01:57:11.4969332Z ##[section]Starting:  Deploy Knowledge
2020-10-10T01:57:11.5482956Z ==============================================================================
2020-10-10T01:57:11.5483356Z Task         : Azure App Service deploy
2020-10-10T01:57:11.5483828Z Description  : Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby
2020-10-10T01:57:11.5484254Z Version      : 4.175.2
2020-10-10T01:57:11.5484511Z Author       : Microsoft Corporation
2020-10-10T01:57:11.5484854Z Help         : https://aka.ms/azureappservicetroubleshooting
2020-10-10T01:57:11.5485246Z ==============================================================================
2020-10-10T01:57:15.5657025Z Got service connection details for Azure App Service:'{redacted}'
2020-10-10T01:57:16.2836436Z Trying to update App Service Application settings. Data: {"WEBSITE_RUN_FROM_PACKAGE":"1"}
2020-10-10T01:57:19.2257705Z Updated App Service Application settings and Kudu Application settings.
COMMENT: NOTICE THIS IS LISTED TWICE
2020-10-10T01:57:32.3418948Z Updated App Service Application settings and Kudu Application settings.
2020-10-10T01:57:32.3424925Z Package deployment using ZIP Deploy initiated.
2020-10-10T01:57:43.5814371Z Successfully deployed web package to App Service.
2020-10-10T01:57:43.5815035Z NOTE: Run From Package makes wwwroot read-only, so you will receive an error when writing files to this directory.
2020-10-10T01:57:51.9327875Z Successfully updated App Service configuration details
2020-10-10T01:57:52.7959851Z Successfully added release annotation to the Application Insight : kpa-insights41495-ai
2020-10-10T01:57:53.2243338Z App Service Application URL: http://{redacted}.azurewebsites.net
2020-10-10T01:57:53.2553076Z ##[section]Finishing:  Deploy Knowledge
And this is from the redeployment (manually via Azure DevOps), after which the Function methods did show up.
2020-10-10T02:15:29.0121908Z ##[section]Starting:  Deploy Knowledge
2020-10-10T02:15:29.0235702Z ==============================================================================
2020-10-10T02:15:29.0236103Z Task         : Azure App Service deploy
2020-10-10T02:15:29.0236587Z Description  : Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby
2020-10-10T02:15:29.0237148Z Version      : 4.175.2
2020-10-10T02:15:29.0237434Z Author       : Microsoft Corporation
2020-10-10T02:15:29.0237785Z Help         : https://aka.ms/azureappservicetroubleshooting
2020-10-10T02:15:29.0238168Z ==============================================================================
2020-10-10T02:15:31.3223458Z Got service connection details for Azure App Service:'{redacted}'
2020-10-10T02:15:31.8237665Z Trying to update App Service Application settings. Data: {"WEBSITE_RUN_FROM_PACKAGE":"1"}
2020-10-10T02:15:32.0625050Z App Service Application settings are already present.
2020-10-10T02:15:40.1435061Z Package deployment using ZIP Deploy initiated.
2020-10-10T02:15:50.7438841Z Successfully deployed web package to App Service.
2020-10-10T02:15:50.7439366Z NOTE: Run From Package makes wwwroot read-only, so you will receive an error when writing files to this directory.
2020-10-10T02:15:53.1799751Z Successfully added release annotation to the Application Insight : kpa-insights41495-ai
2020-10-10T02:15:53.1801123Z App Service Application URL: http://{redacted}.azurewebsites.net
2020-10-10T02:15:53.1805139Z ##[section]Finishing:  Deploy Knowledge

@kespry-kirk Are you seeing this issue frequently or just once while deploying first time on new environment?

@kespry-kirk Any update on this?

Closing this issue due to inactivity. Feel free to reopen if you are still facing this issue.


Footer

adding hover effect and transition to the icons, adding the links to them and adding cursor pointer

@Vanshiii203 I have create accounts for moody first.

@Vanshiii203 I have to create accounts for moody first.

Okay

Hey , Can you assign me , Can I work on this issue ?

@omthakare16 Since @Vanshiii203 made the issue, it would be assigned to her first. If she fails, then I'll assign it to you.

@Vanshiii203 Note the following things to update the links:-

Mail id:-<EMAIL_ADDRESS>Twitter:- https://twitter.com/ExtensionMoody
GitHub(Extension):- https://github.com/Susmita-Dey/Moody
GitHub(Website):- https://github.com/Susmita-Dey/Moody-website

Remove Facebook and add GitHub logo instead.

Add assigned label

@Vanshiii203 Note the following things to update the links:-

Mail id:-<EMAIL_ADDRESS>Twitter:- https://twitter.com/ExtensionMoody
GitHub(Extension):- https://github.com/Susmita-Dey/Moody
GitHub(Website):- https://github.com/Susmita-Dey/Moody-website

Remove Facebook and add GitHub logo instead.

Okayy


Support for BasisLZ / ETC1S → RGBA8?

I realize the implementation status table shows "planned" for this and other transcoding paths, but in case there's a need to prioritize among them — I would personally vote for BasisLZ → RGBA8 as the highest-priority item on the list.
All of the existing BasisU decoders (libktx, basisu, ...) are pretty complex to use as dependencies of a library, by JavaScript standard. Users can't just install the library anymore, they now have to install my library, and then install the BasisU decoder, and configure their build tools to deal with the WASM, which varies by build tool and module syntax. The KhronosGroup/Basis-Universal-Transcoders project is (IMHO) the easiest to deal with of the available decoders, as a library author. But it's still prohibitively complex for me to try to support this alongside basisu or libktx — using this project for formats it supports, and another project for other formats. So far, that has unfortunately prevented me from using the KhronosGroup/Basis-Universal-Transcoders decoders at all. Not meant as a criticism, but hopefully a helpful FYI for maintainers. :)
The shortest path that would unblock my using this library would be having access to RGBA8 decoders for both UASTC and ETC1S. Even without the other transcode target formats, this allows me to at least use these lightweight transcoders for applications that just need to decode the images, e.g. to show small thumbnails of embedded textures.

Related user requests:

https://github.com/donmccurdy/glTF-Transform/issues/591

I strongly support this idea, as gltf-transform is one of the best and most powerful ecosystem tools for glTF, so helping it support KTX2 will go a long way toward pushing adoption. And if this change makes it easy for gltf-transform, it will undoubtedly also help other implementors.

@fire I believe the work required here would be to review the BasisLZ (ETC1S) Bitstream Specification, and implement an ETC1S→RGBA8 decoder in an AssemblyScript module, similar to the existing UASTC decoders.


Backoff in SQLite and WAL journal mode

Fix for
SWDEV-255898
SWDEV-259403

So using a shorter timeout with backoff fixes the db busy errors in the tests?

So using a shorter timeout with backoff fixes the db busy errors in the tests?

Yes, especially on machines with Spin Disks + SLES.

@daniellowell The branch passes CI

@pfultz2 Did you have any more comments ?

@pfultz2  Can I bother you to review this ?

@pfultz2  Can I bother you to review this ?

@daniellowell  CI passes but still waiting on review

@daniellowell  CI passes but still waiting on review