Consuming from the same queue can lead to starved consumers

This is a problem resulting from caching queues and hiding channels: message prefetch is defined per channel, but a queue (= one channel) may have more than one consumer. If queue.subscribe and the option autoAck: false are used, it sets the prefetch to 1, meaning that another message won't be sent until the previous has been acknowledged.
If there's more than one consumer, then it's easy for one of them to unjustly starve the others by not acknowledging a message. Say, for example, each consumer is piping messages through a stream, and only acknowledging them once the message has successfully written; if the stream is paused, the acknowledgment won't be made, and no other consumer will receive a message either, because they are all sharing the channel and thus the prefetch.
One possible solution to this is to unhide channels, so to allow a channel per consumer. The API as is can be kept as a convenience, and channel exposed for when more fine-grained control is needed. Thoughts? (or would you prefer to wait for a pull request ..)

Hiding channels is indeed problematic.  If you see a way to expose them, but not increase the complexity for the current use cases, I'm all for it.  The majority of node-amqp users (AFAICT) make very simplistic use of AMQP itself and I'd rather not confuse them (read: more support requests).
--
Theo Schlossnagle
http://lethargy.org/~jesus/
On Friday, December 30, 2011 at 12:04 PM, Michael Bridgen wrote:

This is a problem resulting from caching queues and hiding channels: message prefetch is defined per channel, but a queue (= one channel) may have more than one consumer. If queue.subscribe and the option autoAck: false are used, it sets the prefetch to 1, meaning that another message won't be sent until the previous has been acknowledged.
If there's more than one consumer, then it's easy for one of them to unjustly starve the others by not acknowledging a message. Say, for example, each consumer is piping messages through a stream, and only acknowledging them once the message has successfully written; if the stream is paused, the acknowledgment won't be made, and no other consumer will receive a message either, because they are all sharing the channel and thus the prefetch.
One possible solution to this is to unhide channels, so to allow a channel per consumer. The API as is can be kept as a convenience, and channel exposed for when more fine-grained control is needed. Thoughts? (or would you prefer to wait for a pull request ..)

Reply to this email directly or view it on GitHub:
https://github.com/postwait/node-amqp/issues/60

The majority of node-amqp users (AFAICT) make very simplistic use of AMQP itself and I'd rather not confuse them (read:
more support requests).

Roger that. I'll work it through in a branch and see what I can come up with.

Theo,
I've started a branch api_cleanup which has a channel interface as well as keeping the connection.queue, connection.exchange etc. methods.
The main changes (mostly in https://github.com/squaremo/node-amqp/commit/6d9f27aabb87396586ca148aa031e4aa13c5bcf8) are:

queues and exchanges no longer inherit from Channel, but delegate to it;
Channel gets two methods for sending AMQP methods (one for when it should expect a reply, e.g., queue.bind, and one for when it shouldn't e.g., basic.publish), two special-purpose methods for registering and unregistering consumers, and one for publishing (which takes content as well as the method); everything else is then implemented using those
connection has a createChannel method, making Channel effectively public.

I have also got rid of the events named for AMQP methods, which I always found a bit weird (e.g., subscribe is done when the 'basicQosOk' event fires?). The same effect can be had using the promise returned from the channel (and thereby the queue and exchange) methods.
Here's an example of a test that I've rewritten:
https://github.com/squaremo/node-amqp/blob/api_cleanup/test/test-simple.js
As you can see not much has changed, really just the means of synchronising on AMQP commands (now using the promise return value, as described above).

I think I will go ahead and rewrite the rest of the tests and the README. I'm also thinking adding some methods to Channel for the various AMQP operations (notably channel.flow, basic.qos, basic.reject, and Rabbit's extensions like confirmations).
Do shout if you think this is, er .. divergent ..

Some tests (and presumably application code) rely on events such as 'queueDeclareOk'; this is distinct from a callback, which receives the "completed" queue rather than the queueDeclareOk sent by the server (which has a message count).
I can see three options:

Consistency: queue() and exchange() return promises for the queueDeclareOk and exchangeDeclareOk objects sent back by the server, and take a callback which is given the 'completed' queue or exchange. This would preclude some race conditions that are currently easy to create, since the queue or exchange would not be available until it had been successfully declared.

Least change (for present users): queue() and exchange() return 'incomplete' queues and exchanges as before, and e.g., queues emit 'queueDeclareOk' events as before.

For the sake of completeness: queues and exchanges are returned as before, and are also promises, with addCallback() giving access to e.g., queueDeclareOk. Queues and exchanges don't emit these events.

Personally I favour consistency. One-off events should be represented in the API as callbacks (or promises) rather than events.


horizon upgrade

@zulucrypto you might want to upgrade the container with a current Horizon release, which is 0.12.3.
See https://github.com/stellar/go/releases
Mind that the Friendbot is a separate service now, not a part of Horizon anymore.

Hi @bolshoy - 0.12.3 has moved friendbot to a standalone service. I'm currently tracking down a friendbot release and I'll work on getting it integrated into the docker container.

Friendbot has been released https://github.com/stellar/go/releases/tag/friendbot-v0.0.1

@collinjackson - Thanks for the heads up about Friendbot.
I've pushed container version 1.10.1 with the latest version of Horizon and Stellar Core


[Feature Request] More elegant way to do async

Required prerequisites

[X] I have searched the Issue Tracker and Discussions that this hasn't already been reported. (+1 or comment there if it has.)
[ ] Consider asking first in a Discussion.

Motivation
research if there's better way to write async funs
Solution
No response
Alternatives
No response
Additional context
No response

We need to clearly define the problem we need to solve. Is it a user-side usage issue or an internal framework invocation issue? These two problems have different scopes and solutions. Ideally, we should have one or two specific scenarios to abstract the problem domain; otherwise, making decisions hastily might result in missing the problem or over-designing the solution.
From the user side, using decorators to achieve compatibility might be an elegant solution. For example, the FastAPI framework, which supports both async and non-async calls for each interface function, can serve as a reference.
If the problem lies within the internal framework invocation or related scenarios, there is still much room for discussion. Decisions may need to be made based on the actual situation.


Error while building of game

ello everyone My problem is that now, when I try to compile the game, that is, writing the command 'lime test windows' I get the following error:' Link: ../ndll/WindowsArm64/extension-webm.ndll
obj\msvc19-arm64\366fb629_ExternalInterface.obj : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'ARM64' ' I have reviewed all the sites, all the articles on a similar topic, but I have not found a specific answer... The funny thing is that before I recently had everything working perfectly, everything was compiled and launched, and now like this...
So if at least someone knows how to help me, then please write a solution to this problem)
I attached a photo where I showed how I came to this error

i don't have that error i hate WindowsArm64. i like is Windows and Windows64, ok.

i found my own fix. You might of accidently installed arm64 components on the vs installation lol so just go to the installer and delete anything with "arm" in general

ello everyone My problem is that now, when I try to compile the game, that is, writing the command 'lime test windows' I get the following error:' Link: ../ndll/WindowsArm64/extension-webm.ndll
obj\msvc19-arm64\366fb629_ExternalInterface.obj : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'ARM64' ' I have reviewed all the sites, all the articles on a similar topic, but I have not found a specific answer... The funny thing is that before I recently had everything working perfectly, everything was compiled and launched, and now like this...
So if at least someone knows how to help me, then please write a solution to this problem)
I attached a photo where I showed how I came to this error

https://github.com/KadeDev/Kade-Engine/issues/1761#issuecomment-917443782 do what I described in this comment and then you should be good to compile the game


Percentage signs are not allowed in URLs

Requests with a percentage sign in the URL fail when issued against a spring cloud gateway (2.0.1.RELEASE) application.
The application returns an error with status code 404 and throws the following exception:
java.lang.IllegalArgumentException: Invalid encoded sequence "%"
	at org.springframework.util.StringUtils.uriDecode(StringUtils.java:748) ~[spring-core-5.0.8.RELEASE.jar:5.0.8.RELEASE]
	at org.springframework.http.server.DefaultPathContainer.parsePathSegment(DefaultPathContainer.java:126) ~[spring-web-5.0.8.RELEASE.jar:5.0.8.RELEASE]
	at org.springframework.http.server.DefaultPathContainer.createFromUrlPath(DefaultPathContainer.java:111) ~[spring-web-5.0.8.RELEASE.jar:5.0.8.RELEASE]
	at org.springframework.http.server.PathContainer.parsePath(PathContainer.java:76) ~[spring-web-5.0.8.RELEASE.jar:5.0.8.RELEASE]
	at org.springframework.cloud.gateway.handler.predicate.PathRoutePredicateFactory.lambda$apply$0(PathRoutePredicateFactory.java:65) ~[spring-cloud-gateway-core-2.0.1.RELEASE.jar:2.0.1.RELEASE]
	at org.springframework.cloud.gateway.support.ServerWebExchangeUtils.lambda$toAsyncPredicate$1(ServerWebExchangeUtils.java:108) ~[spring-cloud-gateway-core-2.0.1.RELEASE.jar:2.0.1.RELEASE]
	at org.springframework.cloud.gateway.handler.RoutePredicateHandlerMapping.lambda$null$2(RoutePredicateHandlerMapping.java:101) ~[spring-cloud-gateway-core-2.0.1.RELEASE.jar:2.0.1.RELEASE]
	at reactor.core.publisher.MonoFilterWhen$MonoFilterWhenMain.onNext(MonoFilterWhen.java:116) [reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:1640) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFilterWhen$MonoFilterWhenMain.onSubscribe(MonoFilterWhen.java:103) [reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFilterWhen.subscribe(MonoFilterWhen.java:56) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoPeek.subscribe(MonoPeek.java:71) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Mono.subscribe(Mono.java:3080) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:418) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:241) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.onNext(FluxDematerialize.java:114) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.onNext(FluxDematerialize.java:42) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:244) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:202) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.request(FluxDematerialize.java:157) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onSubscribe(FluxConcatMap.java:227) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.onSubscribe(FluxDematerialize.java:88) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:140) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:64) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxDematerialize.subscribe(FluxDematerialize.java:39) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxDefer.subscribe(FluxDefer.java:55) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap.subscribe(FluxConcatMap.java:121) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoNext.subscribe(MonoNext.java:40) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoMap.subscribe(MonoMap.java:55) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoSwitchIfEmpty.subscribe(MonoSwitchIfEmpty.java:44) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoMap.subscribe(MonoMap.java:55) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Mono.subscribe(Mono.java:3080) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:418) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onSubscribe(FluxConcatMap.java:210) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:140) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:64) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.FluxConcatMap.subscribe(FluxConcatMap.java:121) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoNext.subscribe(MonoNext.java:40) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoSwitchIfEmpty.subscribe(MonoSwitchIfEmpty.java:44) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoPeekTerminal.subscribe(MonoPeekTerminal.java:61) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:150) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1083) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoZip$ZipCoordinator.signal(MonoZip.java:247) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoZip$ZipInner.onNext(MonoZip.java:329) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:1640) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoZip$ZipInner.onSubscribe(MonoZip.java:318) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Mono.subscribe(Mono.java:3080) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoZip.subscribe(MonoZip.java:128) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoPeekTerminal.subscribe(MonoPeekTerminal.java:61) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:74) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.Mono.subscribe(Mono.java:3080) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:70) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.core.publisher.MonoPeekTerminal.subscribe(MonoPeekTerminal.java:61) ~[reactor-core-3.1.8.RELEASE.jar:3.1.8.RELEASE]
	at reactor.ipc.netty.channel.ChannelOperations.applyHandler(ChannelOperations.java:380) ~[reactor-netty-0.7.8.RELEASE.jar:0.7.8.RELEASE]
	at reactor.ipc.netty.http.server.HttpServerOperations.onHandlerStart(HttpServerOperations.java:398) ~[reactor-netty-0.7.8.RELEASE.jar:0.7.8.RELEASE]
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) ~[netty-common-4.1.27.Final.jar:4.1.27.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) ~[netty-common-4.1.27.Final.jar:4.1.27.Final]
	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:322) ~[netty-transport-native-epoll-4.1.27.Final-linux-x86_64.jar:4.1.27.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) ~[netty-common-4.1.27.Final.jar:4.1.27.Final]
	at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_201]

I created a minimal sample here: https://github.com/s-spindler/uriencode
I set a breakpoint in StringUtils.uriDecode and logged the value of the parameter:
Breakpoint reached at org.springframework.util.StringUtils.uriDecode(StringUtils.java:724)
100%25
Breakpoint reached at org.springframework.util.StringUtils.uriDecode(StringUtils.java:724)
100%
Breakpoint reached at org.springframework.util.StringUtils.uriDecode(StringUtils.java:724)
100%
Breakpoint reached at org.springframework.util.StringUtils.uriDecode(StringUtils.java:724)
100%

For some reason the method is called several times but only the first time with the "raw" URL string.

Can you try Finchley.SR3 or Greenwhich.SR1?

@ryanjbaxter Sure! Is there a (snapshot?) version of spring-cloud-gateway that is already using that? If not, how can I override the spring cloud version?

You should be using the Spring Cloud BOM.  If you are unsure how to do that generate a project using start.spring.io with the gateway as a dependency and look at the POM.

Done and done. Neither Greenwich.SR1 (master branch) nor Finchley.SR3 (finchley branch) work.

I have met the same issue. waiting for the response. there are two % in my url.
java.lang.IllegalArgumentException: Invalid encoded sequence "%%appli2.119.rel_0"
at org.springframework.util.StringUtils.uriDecode(StringUtils.java:741)
at org.springframework.http.server.DefaultPathContainer.parsePathSegment(DefaultPathContainer.java:126)
at org.springframework.http.server.DefaultPathContainer.createFromUrlPath(DefaultPathContainer.java:111)
at org.springframework.http.server.PathContainer.parsePath(PathContainer.java:76)
at org.springframework.cloud.gateway.handler.predicate.PathRoutePredicateFactory.lambda$apply$2(PathRoutePredicateFactory.java:79)
at org.springframework.cloud.gateway.support.ServerWebExchangeUtils.lambda$toAsyncPredicate$1(ServerWebExchangeUtils.java:129)
at org.springframework.cloud.gateway.handler.RoutePredicateHandlerMapping.lambda$null$2(RoutePredicateHandlerMapping.java:112)
at reactor.core.publisher.MonoFilterWhen$MonoFilterWhenMain.onNext(MonoFilterWhen.java:116)
at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2070)
at reactor.core.publisher.MonoFilterWhen$MonoFilterWhenMain.onSubscribe(MonoFilterWhen.java:103)
at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54)
at reactor.core.publisher.MonoFilterWhen.subscribe(MonoFilterWhen.java:56)
at reactor.core.publisher.MonoPeek.subscribe(MonoPeek.java:71)
at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44)
at reactor.core.publisher.Mono.subscribe(Mono.java:3694)
at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:442)
at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:244)
at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.onNext(FluxDematerialize.java:114)
at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.onNext(FluxDematerialize.java:42)
at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:243)
at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:201)
at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.request(FluxDematerialize.java:157)
at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onSubscribe(FluxConcatMap.java:229)
at reactor.core.publisher.FluxDematerialize$DematerializeSubscriber.onSubscribe(FluxDematerialize.java:88)
at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:139)
at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:63)
at reactor.core.publisher.FluxDematerialize.subscribe(FluxDematerialize.java:39)
at reactor.core.publisher.FluxDefer.subscribe(FluxDefer.java:54)
at reactor.core.publisher.FluxConcatMap.subscribe(FluxConcatMap.java:121)

In my project I used the following dependencies:
`

org.springframework.cloud
spring-cloud-dependencies
Greenwich.RELEASE
pom
import

<dependencies>

	<dependency>
		<groupId>org.springframework.cloud</groupId>
		<artifactId>spring-cloud-starter-gateway</artifactId>
	</dependency>

</dependencies>
`

Isn't % supposed to be encoded as %25 in URLs?
It is encoded to %25 in myrequest, but for some unkown reason,it seems the gateway decode it twice....
My request URL is : https:/***/%25%25appli2.119.rel_0

My request URL is : http:///%25%25appli2.119.rel_0, but it seems the gateway decoded it twice...,
If my request URL only contains one %, it will work well, for example, if it is http:///%25appliz,
I think, maybe the gateway decodes the %25%25 to %%, then it  sees there is also a %, then it decodes it again, i.e, the gateway decodes the %255%25 twice...

@lijunb, @vpavlyuk That is exactly the issue. The call to StringUtils.uriDecode happens once with the raw string and then several times with the already decoded string. Three times in the case of the above mentioned sample application.

@ryanjbaxter Do you require any additional information here? If not, can this be labeled as a bug?

@s-spindler I dont understand your test
public void testWithPercentage() {
		webClient.get().uri("/anything/100%").exchange().expectStatus().isOk();
}

The % is not encoded, it should be %25.
public void testWithPercentage() {
		webClient.get().uri("/anything/100%25").exchange().expectStatus().isOk();
}

@ryanjbaxter The WebTestClient is doing the encoding:
encodeTemplate:269, HierarchicalUriComponents (org.springframework.web.util)
buildInternal:403, UriComponentsBuilder (org.springframework.web.util)
build:388, UriComponentsBuilder (org.springframework.web.util)
build:377, UriComponentsBuilder (org.springframework.web.util)
build:381, DefaultUriBuilderFactory$DefaultUriBuilder (org.springframework.web.util)
expand:203, DefaultUriBuilderFactory (org.springframework.web.util)
uri:178, DefaultWebClient$DefaultRequestBodyUriSpec (org.springframework.web.reactive.function.client)
uri:153, DefaultWebClient$DefaultRequestBodyUriSpec (org.springframework.web.reactive.function.client)
uri:163, DefaultWebTestClient$DefaultRequestBodyUriSpec (org.springframework.test.web.reactive.server)
uri:146, DefaultWebTestClient$DefaultRequestBodyUriSpec (org.springframework.test.web.reactive.server)
testWithPercentage:55, GatewaySampleApplicationTests (com.deviceinsight.spring.sample)

If I change it to %25 it will instead fire off /anything/100%2525.

@ryanjbaxter Thanks for the fix! Since this is part of 2.0.4: can you give me an indication on when the release is expected?

We haven't set a date yet, but you can monitor the release dates here https://github.com/spring-cloud/spring-cloud-release/milestones

This also seems to fail in 2.1.1 version. On line 91 I see the same getPath(): PathContainer path = parsePath(exchange.getRequest().getURI().getPath());


Add support for SublimeText

Sublime Text is already Supported, feel free to use it.

click me to reach out!


received an empty error message for put

{
  "logLevel": "error",
  "log": []
}

caused by:
curl -X 'PUT' \
  'https://databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13' \
  -H 'accept: application/json' \
  -H 'X-API-KEY: XXXXXX' \
  -H 'Content-Type: application/ld+json' \
  -d '{
   "@context": "https://databus.dbpedia.org/res/context.jsonld",
   "@graph": [
      {
         "@id": "https://databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13",
         "@type": [
            "Version",
            "http://dataid.dbpedia.org/ns/core#Dataset"
         ],
         "abstract": "This is a test artifact for a DNB dump.",
         "description": "This artifact contains a dummy description for testing the upload process with a DNB dump.",
         "hasVersion": "2024-12-13",
         "issued": "2024-12-13T00:00:00Z",
         "license": "http://purl.oclc.org/NET/rdflicense/cc-by3.0",
         "publisher": "https://databus.dbpedia.org/kurzum#this",
         "title": "DNB Test Dump",
         "distribution": "https://databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13#dnb.nt.gz",
         "account": "https://databus.dbpedia.org/kurzum",
         "artifact": "https://databus.dbpedia.org/kurzum/dump-proto/dnb",
         "group": "https://databus.dbpedia.org/kurzum/dump-proto"
      },
      {
         "@id": "https://databus.dbpedia.org/kurzum/dump-proto/dnb",
         "@type": "Artifact",
         "account": "https://databus.dbpedia.org/kurzum",
         "group": "https://databus.dbpedia.org/kurzum/dump-proto"
      },
      {
         "@id": "https://databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13#dnb.nt.gz",
         "@type": "Part",
         "hasVersion": "2024-12-13",
         "issued": "2024-12-13T00:00:00Z",
         "dcat:byteSize": 23667686,
         "downloadURL": "https://data.dev.dbpedia.link/databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13/dnb_all.nt.bz2",
         "compression": "gzip",
         "formatExtension": "nt",
         "sha256sum": "b389e64da4b91c8afb448000c809096f3b24a6da3d40f53cc9ffd67dd94c12c6"
      }
   ]
}
'

same for:
curl -X 'PUT' \
  'https://databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13' \
  -H 'accept: application/json' \
  -H 'X-API-KEY: XXXX' \
  -H 'Content-Type: application/ld+json' \
  -d '{
  "@context": "https://downloads.dbpedia.org/databus/context.jsonld",
  "@graph": {
    "@type": [
      "Version",
      "Dataset"
    ],
    "@id": "https://databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13",
    "hasVersion": "2024-12-13",
    "title": "DNB Test Dump",
    "description": "This artifact contains a dummy description for testing the upload process with a DNB dump.",
    "license": "http://creativecommons.org/licenses/by/4.0/",
    "distribution": [
      {
        "@type": "Part",
        "formatExtension": "nt",
        "compression": "gzip",
        "downloadURL": "https://data.dev.dbpedia.link/databus.dbpedia.org/kurzum/dump-proto/dnb/2024-12-13/dnb.nt.bz2",
        "byteSize": 23667686,
        "sha256sum": "b389e64da4b91c8afb448000c809096f3b24a6da3d40f53cc9ffd67dd94c12c6"
      }
    ]
  }
}
'

@kurzum I am not sure you are getting error, it seems all worked well.. it is just logLevel is error :).
what the response code there? I suppose 200...

Yeah, I was confused. Jan was asked by other people the same thing. He will try to clarify.


Service Provider Microsoft.VisualStudio stuck at registering

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Related command
az provider register --namespace Microsoft.VisualStudio
Describe the bug
I'm running the command to get my lab setup for a SANS cloud course that start this upcoming Saturday. One step was to enable the VisualStudio provider, by running the command above. I ran the command for the first time at about 9 PM EST last night. Right now it is 4:13 EST time, and it still has the "registering" status.
To Reproduce
Ran above command. Then ran the following command to check statu:s az provider show -n Microsoft.VisualStudio
Expected behavior
I expected to see a registered status, just like the 3 other providers I enabled
Environment summary
I'm running the commands in a bash terminal on a linux VM in vmware pro

Thank you for opening this issue, we will look into it.

This should be a service issue, so transfer this issue to CXP/service team


Support for react-native?

Is there any way I can put this plugin into react-native, which uses babel?
Thanks!

Hi! I'm not familiar with react-native build system. I suspect it doesn't use webpack, right? It's a webpack plugin so it needs webpack to run :)


Can't use require_relative

I have some code in the same directory and I can't use require_relative because the file under test is copied to a temp directory, but the required file is not.

This is probably related to seeing_is_believing gem itself.

Okay. I think it has to do with the fact that the plugin allows you to execute code that is not saved yet, which I thought was a feature of this plugin not the main gem. I could definitely be wrong though. Thanks for the response :smile:

When SiB executes unsaved code, it does still save it off to a file. If it's editing an existing file, it backs the file up and saves over the top of it then moves the file back. If it's editing an unsaved file, it saves it off in a temp directory. You have some control over this with the --as flag, though it depends on the cwd. You can also save the file where you want it and run it, though this has caused issues in some editors that watch the file system for changes (eg Atom sees the change very quickly). If you find a case where it does the wrong thing, then please open an issue).
Here's an example of using --as
# current directory
$ pwd
/Users/josh/code/seeing_is_believing

# using --as to give it a file name that is placed relative to the current directory
$ seeing_is_believing --as hi.rb  -e 'File.expand_path(__FILE__)'
File.expand_path(__FILE__)  # => "/Users/josh/code/seeing_is_believing/hi.rb"

# without the --as, it is given a tempdir
$ seeing_is_believing  -e 'File.expand_path(__FILE__)'
File.expand_path(__FILE__)  # => "/var/folders/7g/mbft22555w3_2nqs_h1kbglw0000gn/T/seeing_is_believing_temp_dir20170111-53836-zyqmeo/program.rb"


Update deps.ts

You should update utils/i18next and utils/helper.ts about the import of botCache I suppose.

Actually, it turns out it has got something to do with Deno (a bug where deno cache requires permissions).

Ok that's sad :'(
Thank you for your help !


Philips Wifi Bulb discover

Somehow the Bulb will not give me the token. I setup the LED again but still result at token. Are there new firmware which will not allow?
Device ID: xxxxxxxx
Model info: Unknown
Address: <IP_ADDRESS>
Token: ???
Support: Unknown

Hi, thanks for opening this issue. I don't currently have access to a Philips Bulb so I can't say if there is anything special going on with the firmware.
What steps did you do when setting it up?

adb backup -noapk com.xiaomi.smarthome -f backup.ab for Philips Wifi Bulb works with MiHome App v5.0.6 (later app version doesn't store token in db).


strcmp used on string that isn't null-terminated

Thank you for sharing and developing keyd.
I want bring to your attention that the commit https://github.com/rvaiya/keyd/commit/8b16e02de55ab2ebe1be91dbd2dbb5d186587a2c removed the line msg.data[msg.sz] = 0; in the case case IPC_BIND of static void handle_client(int con). This implies that msg.data no longer is null-terminated and when passed to kbd_eval(ent->kbd, msg.data) the strcmp(exp, "reset") will not succeed.
I noticed this when running
$ keyd bind reset 'leftalt.y = macro(S-C-v)'

reset� is not a valid keycode or alias
invalid key or action

How embarrassing. I should probably add some client tests. This should be fixed in the latest commit.


Icon Request

Can you make icon apps for Adobe Photoshop, and Aegisub?

Sure! I've just added them into the custom icons Google Drive folder. I have not heard of Aegisub before, so I hope I found the correct icon to reference.
I have provided a preview image below.


Improve freeze check

Propose changes inspired by PR https://github.com/ming-tung/django-fsm-freeze/pull/15

Danke!


Event Names Should not be Human Readable

In the new version of std bounties 2.0, there needs to be an easy way to listen/index events that occur. In std bounties 1.0, this was simple. You could just listen to the deployed contract. This no longer is simple since the new PROXY architecture creates a new contract for every instance of a bounty. In turn, listening for an event does not become so easy (unless you specifically want to listen to the event from an array of ALL addresses in the current factory). Listening for all addresses becomes problematic and requires consistently checking for any new addresses to listen to. As more and more bounties are created, this approach becomes less and less scaleable.
Proposed solution:
The event should not be human readable. This is because a SHA Hash is created from the name of each event along with its argument types. This topic or hash can be used to index/listen for the event theme on chain. However, our event names could easily intersect with other events on other contracts. In order to prevent this confusion, non-human readable event names should be created so we can listen to the event and know it comes from std bounties 2.0
Additionally, topics are created for each argument (first 3) passed into the event. To allow for more flexibility on whoever is listening to the various contracts, we should make sure all events include the ID of the bounty contract in relation to the contract factory. This makes it so you can easily listen to events by ID without having to know the address.
cc: @mbeylin @c-o-l-o-r

@mbeylin another thing I missed. The 1st argument should actually be the master copy address (that way we can index by specific factory versions). The ID of the bounty or address of the proxy contract itself should be passed as the 2nd argument.

@villanuevawill wouldn't it be possible to just get the emitting address (i.e. the proxy address) from the event itself?
re: the master copy address, wouldn't we also be able to get this at the time of creating the bounty contract? (we're planning on removing the ability to change the master copy address, so the result becomes that the mapping of proxyAddr->masterCopy isn't mutable)

I also want to push back a bit on having the events be non-human readable, which IMO kind of sucks and I'm not sure it's necessary. Couldn't the flow be:

receive event with SHA hash that matches one of ours
check if the emitter of the event is one of our bounties
if yes, proceed, if no, ignore it

Step 2 is really the only part that might "not scale", but in reality I can't see this ever feasibly causing issues for us. Curious to hear your thoughts @villanuevawill

Another solution could just be to prefix all of our events with StandardBounties, i.e. StandardBountiesFulfillmentAccepted, which greatly decreases the chances of us ever running into a collision with the events from another contract. In my opinion the issue still persists (this is just security by obfuscation), but might help?

By adding the master contract address as an argument in the events, we can now search for all events related to the master contract. (This also makes sure we don't get collisions and we don't have to do extra extraneous steps like make sure it belongs to the master address). This is the most scaleable approach.


Start using aHash where it makes sense.

There are performance benefits to using aHash over FNVHash. It would be interesting to find out where we can have significant gains and make the necessary changes.

I could probably take a look with some guidance if that's still valid

#258 largely solved this. There might be a few cases we missed, but I'm comfortable closing this out. If you can find missed cases feel free to open a pr.


Feat/reduplication

What's in this PR:

Show reduplication with preverbs
Move preverbs into a "lexical_information" attribute
Show "strong reduplication" and "weak reduplication" as applicable
Test for showing reduplication

Looks like this:

Notes:
This PR addresses part of Issue #585
This likely is not language independent

Codecov Report

Merging #859 (723dc91) into main (0ed6a09) will increase coverage by 1.69%.
The diff coverage is 86.27%.

@@            Coverage Diff             @@
##             main     #859      +/-   ##
==========================================
+ Coverage   79.85%   81.54%   +1.69%
==========================================
  Files         104      105       +1
  Lines        4279     4346      +67
  Branches      636      642       +6
==========================================
+ Hits         3417     3544     +127
+ Misses        743      679      -64
- Partials      119      123       +4

Impacted Files
Coverage Δ

src/CreeDictionary/CreeDictionary/urls.py
100.00% <ø> (ø)

src/CreeDictionary/morphodict/urls.py
100.00% <ø> (ø)

src/CreeDictionary/API/search/types.py
91.15% <50.00%> (-0.75%)
:arrow_down:

.../CreeDictionary/DatabaseManager/test_db_builder.py
36.20% <50.00%> (ø)

src/CreeDictionary/API/search/cvd_search.py
83.33% <66.66%> (-5.56%)
:arrow_down:

src/CreeDictionary/CreeDictionary/views.py
78.26% <68.00%> (-2.33%)
:arrow_down:

.../CreeDictionary/CreeDictionary/paradigm/manager.py
80.26% <76.19%> (-14.61%)
:arrow_down:

...CreeDictionary/paradigm/crkeng_corpus_frequency.py
80.76% <80.76%> (ø)

...nary/management/commands/ensurecypressadminuser.py
71.87% <83.33%> (+4.01%)
:arrow_up:

src/CreeDictionary/API/search/presentation.py
90.56% <92.85%> (+2.76%)
:arrow_up:

... and 18 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 383c80d...723dc91. Read the comment docs.

We should add a hyphen to the end of the reduplicative elements, i.e. ma-, mâh-, etc., to indicate that they are non-independent morphemes.
Also, does the current implementation provide ay- and âh- for the reduplication of vowel-initial stems/pre-whatevers?

Also, does the current implementation provide ay- and âh- for the reduplication of vowel-initial stems/pre-whatevers?

No, it does not, I can add support for this feature.

Resolves #585


OpenImageIO?

That's the industry-standard C++ library used to do this kind of stuff in the visual effects world. It supports a ton of image formats and a lot of different operations. It also doesn't require any external dependencies to be installed on the system (e.g. ImageMagick).
Anyway, thought I'd mention it since it exists and is of very high-quality.

Thanks @erichocean, looks interesting.


Correct missing requirement for mbstring extension

The TokenGenerator class uses mb_strlen(), so errors will occur if PHP doesn't have the optional mbstring extension installed.

I signed it!


Route book renders 4x bars on mobile

Can't repro this anymore after

Not sure about easy way to point ios safari at the branch but happy to merge that optimistically and wait for deploy!


No syntax highlighting with Python

Here is an __init__.py open in the editor and no color coding or syntax highlighting is visible. Plus, see those weird spaces? There are no indents or spaces in the beginning of those lines but rendered with such errors.
I am using the portable version on windows 10

https://github.com/lapce/lapce/commit/bf2e4959fd10688fc24fbd1c7fb44ca5f80026ee it is available in master after this commit

Thanks for opening this issue!
As bf2e4959fd10688fc24fbd1c7fb44ca5f80026ee added python syntax highlighting, I'm closing this issue.


Bug, probably

1.10.2, sky factory 3 modpack, only been able to get the mouse buttons to work, tried it with sneak and jump and not working.

Can you tell me the commands you used?

/tapemouse [here i just pressed tab till i found jump] 20


Update to node 18

Thanks for the PR, it looks really good!
If you want us to merge it, please revert the package name and funding changes.


Manage stops bug

Issue Description
Bug report from feedback form:
Unable to remove added stops
Manage stops will not allow removal, added stops are converted to closest stops and have no option to remove.
Steps to Reproduce / Code Snippets
Adding a stop that's currently the closest stop will result in two closest stops being show in manage stops view.
Expected Results
There should only be one closest stop.
Additional Information

Platform(s) (iOS, Android, or both?): Both

Partial fix https://github.com/UCSD/campus-mobile/commit/88c6193c7218a241539a564aea771723293f2079
Unable to reproduce being unable to remove stops.

We have not been able to reproduce being unable to remove stops if a second default stop has been added in the last two production builds. Closing until we are able to reproduce/verify that the issue still exists


fix(kafka): kafka.ssl.truststore.location on missing cacert

Fixes issue when the cacert is not provided, which leads to:
Modification time of key store could not be obtained: "": java.nio.file.NoSuchFileException: ""

ENVT-668

Closing.
This fixed our problem because we had a wrong default set in application.properties which was used when the cacert was not provided.


JS Chrome App (Polymer paper elements) deployed to mobile = renders improperly

I'm just learning about Chrome apps on mobile, and I've followed these very simple steps to get started:

installed the Chrome Dev Tool v0.10.0 on my Android Nexus 4 and Nexus 7
opened CDE and created a new JavaScript Chrome App (with Polymer paper elements)

once all bower updates were done, ran the "Refactor for CSP" on the bower_components folder

ran Deploy to mobile, providing the IP address from my Nexus device

I tested my N4 and N7 separately, and each one rendered the app improperly, as in the attached screenshot.  I've also attached the proper rendering as seen on my MacBook Pro.

I am getting this same issue with a Polymer app deploying to iOS on a fresh build today.
I am seeing the same behavior as kenmoore.
"Push timed out: Total time exceeds 60 seconds"

the loading reaches 100% but clicking Launch no-ops
the loading reaches 100% and the app is apparently launched (the Launch
button becomes Stop) but there is no visible UI

I do seem to be able to deploy to my Nexus 6 using the fresh build, though. (11.2-dev)


ValueError: You called set_weights(weights)

Got this trying to convert yolov3-tiny:
ValueError: You called set_weights(weights) on layer "conv2d_9" with a weight list of length 1, but the layer was expecting 2 weights. Provided weights: [array([[[[-1.1670320e-02, -5.1273237e-06, -1.4780..
Whats wrong again?

This issue are fixed in newest code


[stable/prometheus-node-exporter] Add variable to optionally set priorityClassName

Signed-off-by: Chris O'Brien<EMAIL_ADDRESS>@gianrubio
What this PR does / why we need it:
Allow priorityClassName to be set for prometheus-node-exporter podSpec.
Which issue this PR fixes

fixes #9426

Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/assign @gianrubio

/ok-to-test
/lgtm


add a README to the idm package

I took the description from owncloud.dev

@C0rby

Therefore it is not meant as a general purpose LDAP server.

but for...?


Discussion - Should teleport not exclude all objects by default?

In regards to real world use of teleporting in a game, is it not the case that 99% of objects should be excluded by default - with only a few floors or areas included as teleport targets?
The current teleport system seems inverted, where you must exclude the objects by attaching a script (which is time consuming and very prone to error with thousands of objects on complex levels)
I can easily inverse this in the code, and appreciate for demo scene's (and new users) it's easier to use the current method.

In your use case maybe but if it worked where you had to include objects then people would ask for it the other way round (the way it is now)
More so, people would forget to include objects and think the teleport is broke. This is why it works the way it is. I have this question many times, it's worth searching the closed issues before asking questions to save time and effort.

Thanks for spending the time to answer, I made the code changes to suit my "way round" and will investigate the closed issues more closely


[cli] fix crash when full logs is on

It is possible that log is printed before the Interpreter (UART or CONSOLE) object is created when FULL LOGS is enabled. In such case, OT crashes.
This PR fixes this bug.
This bug was introduced by #5387

is it possible to add test to cover this situation?

We can have test with full logs. I think our current thread-cert and expect tests do not work under full logs.
Maybe we can add a github action of OTNS test with full logs.
Thoughts? @bukepo

is it possible to add test to cover this situation?

We can have test with full logs to catch such issue. I think our current thread-cert and expect tests do not work under full logs.
Maybe we can add a github action of OTNS test with full logs.
Thoughts? @bukepo

SGTM


Top end position property not working

I tried passing in the position property with the value "top-end" to EmojiButton, but noticed that instead top-start is applied to the emoji-picker__wrapper. So this is a bug which I've gotten around on my end by changing the data-popper-placement for the wrapper everytime I toggle the picker.
This is my first issue on GitHub, so apologies for any mistakes

I was able to reproduce this behavior after trying for a bit. Are you sure there is enough space on the left side of the reference element to display the picker with the top-end position? This should result in the right edge of the picker being aligned with the right edge of the reference element:

If there isn't enough room to the left side of the reference element, then Popper will automatically switch it so it fits on the screen.

Closing due to inactivity


--license-type parameter needs an explanation

The "--license-type" Shows the list of accepted values (advanced, earlyAdopter, express, professional, stakeholder).  But, there's no explanation of what these values are.
These names don't match up with the Azure DevOps doc:
https://docs.microsoft.com/en-us/azure/devops/organizations/security/access-levels?view=azure-devops
express = Basic
advanced = Basic + Test
stakeholder = Stakeholder
professional = Does this assign a Visual Studio Pro license from a pool of available licenses?
How do you add a that has a "Visual Studio Subscriber?

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

ID: c84e9b38-b9da-f69f-c9d7-b0c1a1e8683a
Version Independent ID: bfd383ce-2ee6-64ec-8ff6-a4e8c88fd516
Content: az devops user
Content Source: latest/docs-ref-autogen/ext/azure-devops/devops/user.yml
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

devops


Exf diags account for seaice

What changes does this PR introduce?
Change some EXF flux diagnostic when a seaice pkg is used, with run-time option
to revert back to original diagnostic content.
What is the current behaviour?
When using a seaice pkg (seaice or thsice), EXF fluxes (e.g. Qnet) only applies to open ocean
fraction and are ignored over ice-covered area. However, exf diagnostics ignore this which is
mis-leading specially over fully (100%) ice-covered grid-cell.
What is the new behaviour
Some exf flux diagnostics are open-ocean weighted when using a seaice pkg.
exf run-time parameter "diags_opOceWeighted" can be set to False to recover old
(i.e.un-weighted) diagnostics.
Does this PR introduce a breaking change?
change content of some exf flux diagnostics
Other information:
Open-ocean fraction used here is computing from the right seaice fraction in time-stepping
to be consistent with wind-stress and buoyancy fluxes that ocean receive. This enable to
also recover (by simple difference) the contribution due to ice-cover part. For instance,
'oceQnet ' + 'EXFqnet ' --> net downward heat-flux into ocean (ice-covered contribution) ; and
'SIflxAtm' + 'EXFqnet ' --> net atmospheric downward heat-flux (ice-covered contribution).
Suggested addition to tag-index
o pkg/exf:

new run-time parameter "diags_opOceWeighted" (default=T) to weight
some exf surface diagnostics with open-ocean fraction. Option is turned
off when no sea-ice pkg (seaice or thsice) is used.
new S/R EXF_WEIGHT_SFX_DIAGS to do some exf diags as open-ocean weighted
according to input argument ice fraction. Called from the right location
in time-stepping to get diagnostics that are consistent with wind-stress
and buoyancy fluxes that ocean receive.

@gforget do you have any thoughts on this?

Great! Thanks @jm-c
This should help the ECCO folks who may want to extend this approach to latent, sensible, evap flux and maybe more.
ps: @cnh, thanks for the ping; took a minute to reach me lol

@jrscott to do a quick run of this.

I ran this code with my Arctic configuration. Worked.
Noticed however than only some of the relevant EXF diags (EXFatemp example of not relevant) do the masking, which is now the default. Discussed with @jm-c and those he chose to mask ones that were useful in conjunction with other diags (see note in PR submission) -- but my concern is that it is confusing for the user to have some masked and others not masked, especially w/o having brought EXF docs up to date about this. We can make an open issue here... but wondering perhaps if it might be better to change the default diags_opOceWeighted to F so that all diags are unweighted by default (at least for time being)? Not sure... comments?

@jrscott I think you made a good point: I would prefer to keep the default diags_opOceWeighted=T, so that by default the output fields don't have crazy/unrealistic values over 100% covered seaice grid point. But I I follow this argument, should also treat the same way Evap, Latent and sensible, + may be net and upward long-wave. The ones I would prefer to keep un-weighted would the downward component (LW and SW, precip & run-off) since they are not affected by presence of seaice. Do you agree ?

yes, I think this suggestion makes sense

@jrscott I made the changes we discussed.

re-ran with new changes, LGTM. Let's merge.


How could I return "coverimage" with URL instead of filename?

Hello, Thanks for this great plugin.
by default, the ""coverimage", will only return the filename
eg.
"coverimage": "extending.png",
How can I make it return with the image url instead?
I have no experience with PHP,  so Im not too sure how to implement this.
Thanks

I think I found a temporary solution,  by adding this line 'content_url' => new StaticField($page->contentURL()),
Now the endpoint will return
"content_url": "http://localhost:8888/kirby/content/2-blog/20160802-extending-kirby", "coverimage": "extending.png",
and I can just do  content_url+'/'+coverimage


Background height issue

When displayed on the bottom of the input, the height of the background is shorted :

There is no issue when it is displayed on top. I display the input in a bootstrap input-group and the input-group in table row.

@firebird631 Hard to know your problem without any code at all?

Ok, I've found the problem. It is because datetimepicker uses a class named bottom and I use the same class name in my application. May it will interesting to uses prefix for class name.


Simplify SN module jar versioning

jars will have short real versions now, e.g core-0.7.1, kernel-0.7.1_1.6.1 (instead of long ones)
the zip package will retain the same full name as earlier spark-notebook-0.7.1-SNAPSHOT-scala-2.10.4-spark-1.5.2-hadoop-2.6.0-cdh5.5.0-with-hive-with-parquet.zip

@maasg @andypetrella , 🚢  ?
I this should be fine, or do we use these long jar/module versions like spark-notebook-0.7.1-SNAPSHOT-scala-2.10.4-spark-1.5.2-hadoop-2.6.0-cdh5.5.0-with-hive-with-parquet anywhere?
sbt clean dist output (subset):
[info] Packaging ./target/scala-2.11/spark-notebook_2.11-0.8.0-SNAPSHOT.jar ...
[info] Packaging ./modules/core/target/scala-2.11/spark-notebook-core_2.11-0.8.0-SNAPSHOT.jar ...
[info] Packaging ./modules/subprocess/target/scala-2.11/subprocess_2.11-0.8.0-SNAPSHOT.jar ...
[info] Packaging ./modules/observable/target/scala-2.11/observable_2.11-0.8.0-SNAPSHOT.jar ...
[info] Packaging ./modules/sbt-dependency-manager/target/scala-2.11/sbt-dependency-manager_2.11-0.8.0-SNAPSHOT.jar ...
[info] Packaging ./modules/kernel/target/scala-2.11/kernel_2.11-0.8.0-SNAPSHOT.jar ...

[info] Your package is ready in ./target/universal/spark-notebook-0.8.0-SNAPSHOT-scala-2.11.7-spark-1.6.2-hadoop-2.6.0-cdh5.8.0-with-hive-with-parquet.zip
[info]

if the full name remained the same it's fine by me ... it's important for the website generator

added output of sbt dist. so the full-name is the same.

Yeah as I told you  okay as long as it doesn't change :)


add non-preemptible nodes to mina-integration cluster

Necessary for testnet deployments with an anti-affinity to preemptible nodes (e.g. archive & seed nodes)
Test: Buildkite CI
Checklist:

[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them:

retargeted compatible in https://github.com/MinaProtocol/mina/pull/7602

retargeted compatible in https://github.com/MinaProtocol/mina/pull/7602


Refine ExchangeReceiver's receiver queue for fine grained shuffle

What problem does this PR solve?
Issue Number: ref #7531
Problem Summary:
What is changed and how it works?
This pr refines the exchange receiver's queue for fine grained shuffle.
For fine grained shuffle, one received packet contains multiple data that aims at different receiver streams, in current implementation, assuming there is N receiver streams, ExchangeReceiver will maintain N receiver queues for fine grained shuffle. For each received packet, it need to be written to all the N queues(except that the packet does not contain any data for i-th receiver stream, which is a very rare situation). All the N receiver queues are size bounded, that is, a received packet's written could be blocked by any one of the receiver queues. This differs a lot from non fine grainded shuffle's receiver: in non fine grained shuffle's receiver, there is only one receiver queue, a received packet is either blocked by that queue or written into that queue. Obviously, this difference between fine graind and non fine grained makes the ExchangeReceiver's code complex and hard to maintain.
This pr tries to unify the code between fine grained and non fine grained receiver queue, the basic idea is

There is only one blocking queue in ExchangeReciver
For fine grained shuffle, besides the blocking queue, there are N non-blocking queues

For non fine grained shuffle:

all the read/write to ExchangeReciver is based on the blocking queue directly.

For fine grained shuffle:

write is divided into 2 stages

stage 1: the writer writes the received packet to the blocking queue
stage 2: if stage 1 success, write received packet to N's non blocking queues, since write to non blocking queue never blocks, so the write could only be blocked by stage 1, which is the same as non fine grained shuffle

read is also divided into 2 stage

stage 1: each reader reads packet from its own received queue(one of the non blocking queue), and update remaining_consumer in the packet by 1
stage 2: if remaining_consumer is 0, then pop the packet from the blocking queue

Check List
Tests

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

Side effects

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

Documentation

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

Release note

None

/assign

/run-all-tests

/hold

/hold cancel

/rebuild

/run-all-tests

/run-integration-test

/merge

/run-unit-test

/run-unit-test


CassandraSinkCluster: pull table rewriting into its own module

This splits a 1418 line file into a 711 and a 786 line files.
I think this forms a nice boundary: rewriting.rs now contains all the rewriting logic, and sink_cluster/mod.rs is now mostly concerned about routing.
We can now look at sink_cluster/mod.rs and get a better overview of the functionality.
The MessageRewriter is used following this structure:
fn transform_logic(&mut self) {
    let responses_to_rewrite = self.rewriter.rewrite_requests(requests, ..)?;

    let responses = send_receive(requests)?;

    self.rewriter.rewrite_responses(responses, responses_to_rewrite, ..)?;

    Ok(responses)
}

Some minor downsides:

We do have to be careful about the fact that rewrite_requests invalidates any indexes made into messages as the logic is now further hidden in another file

But also we now have a // CAREFUL warning to be careful of this which is possibly more visible now that we dont have so much code in sink_cluster/mod.rs now.

We commonly need the local shotover rack for routing purposes but its now stored in the message_rewriter resulting in the clunky: &self.message_rewriter.local_shotover_node.rack.

An alternative here could be to keep the ShotoverNodes outside of the MessageRewriter but MessageRewriter is definitely the most common user of the ShotoverNodes.

In total though I think the wins outweigh the losses.
This PR is written to keep changes to a minimum, no implementation changes occurred, logic is just moved to new functions/files.

I'm happy to merge as is, but let's pull ShotoverNodes out of it as it's a weird breaking of encapsulation (even if rewriter is the only thing that uses it atm).


Not receiving PanResponder events on iOS

I am on react-native-svg version 9.0.5. I am not receiving any panHandler events on iOS. Android works fine.
I went through several similar issues but nothing seems to work for me. #127 #821
I tried adding the panHandlers to the root svg component and set overflow in container view but it did not work.
Here is a snippet from my code:
<View style={{ overflow: "hidden" }}>
        <Svg
          ref="circleslider"
          width={width}
          height={width}
        >
          <Defs>{this.renderLinearGradients()}</Defs>
          <G
            rotate={rotation - 90}
          >
            {this.renderCirclePaths(this.state.angle / (2 * Math.PI))}
          </G>

          <Path
            stroke={fillColor}
            strokeWidth={this.props.dialWidth}
            fill="none"
            d={`M${startCoord.x} ${startCoord.y} A ${dR} ${dR} 0 ${
              this.state.angle > 180 ? 1 : 0
            } 1 ${endCoord.x} ${endCoord.y}`}
          />

          <G x={endCoord.x - bR} y={endCoord.y - bR}>
            <Circle
              r={bR}
              cx={bR}
              cy={bR}
              fill={this.props.meterColor}
              {...this._panResponder.panHandlers}
            />
            <Text
              x={bR}
              y={bR - this.props.textSize / 2}
              fontSize={this.props.textSize}
              fill={"transparent"}
              textAnchor="middle"
            >
              {this.props.onValueChange(
                this.state.angle,
                this.state.moodText,
                this.state.index
              ) + ""}
            </Text>
          </G>
        </Svg>
      </View>

Thanks @msand  it is working fine. I had another view covering up the SVG elements so they did not receive the touch events. Thanks @msand again for your efforts.


Personalization for PrestaShop v2.3.0

Added order status info to the order confirmation API requests
Added new product update API instead of deprecated re-crawl feature
Added possibility to add a product to the shopping cart directly from the recommendations using JS
Add additional checks to the manufacturer and category pages that we actually can find the model
Refactor Nosto model validation so we can allow incomplete data in the tagging

@Quetzacoalt91 Hi Tomas, have you had any luck with this? @kryysler and me would like to get this pull-request out.

The error message is misdisplayed : https://www.dropbox.com/s/qhia8ojqhnzs3eq/Screenshot 2015-06-08 11.28.09.png?dl=0

The configuration form iFrame took me almost 30s to load (too long for our merchants).

We are looking into these issues and will get back to you asap.

Fixed the message encoding issue and improved the response times of the dashboard page in the iframe

Do you have all you need to move forward with this, or can we provide anything else to get this PR accepted?

Hi @kryysler, when I try to merge your PR I'm facing an error on my shop:
Fatal error: Interface 'NostoValidatableInterface' not found in /home/gaillafr/www/public_html/prestashop/modules/nostotagging/classes/models/order.php on line 30
[PrestaShop] Fatal error in module file :/home/gaillafr/www/public_html/prestashop/modules/nostotagging/classes/models/order.php:
Interface 'NostoValidatableInterface' not found

Please, let me know if you can reproduce that.
Thank you,
Kind regards.

I cannot reproduce it. That interface is available in the SDK that is a sub-repo (https://github.com/Nosto/php-sdk/blob/d07226eec659422d88a191708c7046a5594e57ef/src/interfaces/NostoValidatableInterface.php#L39).
The sub-repo reference is also correct in this PR.

Sorry @kryysler, I've tried to merged it again (new clone, etc.) locally but the problem still occurs :-/

@gaillafr could you check that the sub-module in libs/nosto/php-sdk is updated after the merge (should be changeset d07226e)? And that the file exists ("libs/nosto/php-sdk/src/interfaces/NostoValidatableInterface.php") ?

Yes, I've tried to update the two submodules but it didn't change anything.

Can you check that the interface is loaded in the submodule config.inc.php file. This line:
https://github.com/Nosto/php-sdk/blob/d07226eec659422d88a191708c7046a5594e57ef/src/config.inc.php#L51


Merge upstream schnorrsig PR

Alternate strategy to #92:

Disables musig module by commenting out all references to in the autotools/Travis config
Removes the schnorrsig module, which shouldn't break anything because only musig depended on it.
Merge upstream PR 558, taking both sides of every conflict except .travis.yml where I took the secp256k1-zkp side
Took Jonas' "fix MuSig for upstream changes" commit from #92 with one minor change (rename the even_y function)
Re-enabled MuSig module

Approach ACK

Fixed the quad vs oddness thing. Should be good to go now.


adds interval when used with Ember.Helper

Fixes #27
This is only supported when used on >= 1.13.  I can hack support into < 1.13 but I think we should begin to deprecate supporting now 3 variations of helpers :)

I'll fix the failing test tonight

@stefanpenner thoughts on dropping support for Ember.Handlebars form of helpers?  We have three types of helper formats going on now:
if (Ember.HTMLBars) {
    registerHelper = function(helperName, klass) {
      if (Ember.Helper && Ember.Helper.detect(klass)) {
        return registry.register(`helper:${helperName}`, klass);
      }
      return Ember.HTMLBars._registerHelper(helperName, Ember.HTMLBars.makeBoundHelper(klass));
    }
  } else {
    return registerHelper = Ember.Handlebars.helper;
  };

Even better if we can just support >= 1.13 and can leverage the new Ember.Helper everywhere and rely on the builtin resolver instead of registering the helpers like we do currently.

I went ahead and removed < 1.10 support.  It's too cumbersome to support three variations of helpers.
Kicking myself for going 2.0.0 now since this breaks semver.  3.0 @stefanpenner ?

3.0 @stefanpenner ?

yup, this will be a 3.0


pdk validate --auto-correct fails trying to fix indent

Describe the Bug
Trying to run " pdk validate --auto-correct --parallel" on the attached code will cause an error.
Expected Behavior
Should succeed and output corrected code with indent
Steps to Reproduce
Create the class (files needed attached at the end)
pdk validate --auto-correct
Environment

PDK Version 2.6.1
puppet lint 2.5.2
Platform Ubuntu 20.04

demo@demo-u20-lts:~/$ dpkg --list | egrep pdk
ii  pdk                                        <IP_ADDRESS>-1focal                      amd64        Puppet Development Kit
Additional Context
demo@demo-u20-lts:~/puppet/demo_array_of_hashes$ cat data/common.yaml
demo_array_of_hashes::users:

id: 'one'
quota: '10'
id: 'two'
quota: '20'

demo@demo-u20-lts:~/puppet/demo_array_of_hashes$ more manifests/init.pp
class demo_array_of_hashes () {
$users = lookup('demo_array_of_hashes::users')
notice(inline_template("
<% @users.each do |user| -%>
id=<%= user['id'] %>
quota=<%= user['quota'] %>
<% end -%>
"))
}
demo@demo-u20-lts:~/puppet/demo_array_of_hashes$ pdk validate --auto-correct
pdk (INFO): Using Ruby 2.7.7
pdk (INFO): Using Puppet 7.22.0
pdk (INFO): Running all available validators...
pdk (INFO): Validator 'puppet-epp' skipped for '/home/demo/puppet/demo_array_of_hashes'. No files matching '["/*.epp"]' found to validate.
pdk (INFO): Validator 'task-name' skipped for '/home/demo/puppet/demo_array_of_hashes'. No files matching '["tasks//"]' found to validate.
pdk (INFO): Validator 'task-metadata-lint' skipped for '/home/demo/puppet/demo_array_of_hashes'. No files matching '["tasks/.json"]' found to validate.
┌ [✔] Running metadata validators ...
├── [✔] Checking metadata syntax (metadata.json tasks/.json).
└── [✔] Checking module metadata style (metadata.json).
┌ [✖] Running puppet validators ...
├── [✔] Checking Puppet manifest syntax (**/.pp).
└── [✖] Checking Puppet manifest style (**/*.pp).
[
Whoops! It looks like puppet-lint has encountered an error that it doesn't
know how to handle. Please open an issue at https://github.com/rodjek/puppet-lint
and paste the following output into the issue description.
puppet-lint version: 2.5.2
ruby version: 2.7.7-p221
platform: x86_64-linux
file path: manifests/init.pp
file contents:
class demo_array_of_hashes () {

  $users = lookup('demo_array_of_hashes::users')
  notice(inline_template("
  <% @users.each do |user| -%>
  id=<%= user['id'] %>
  quota=<%= user['quota'] %>
  <% end -%>
  "))

}

error:
NoMethodError: undefined method `type' for nil:NilClass
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-strict_indent-check-2.1.0/lib/puppet-lint/plugins/check_strict_indent.rb:163:in `fix'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/checkplugin.rb:42:in `block in fix_problems'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/checkplugin.rb:38:in `each'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/checkplugin.rb:38:in `fix_problems'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/checks.rb:67:in `block in run'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/checks.rb:65:in `each'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/checks.rb:65:in `run'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint.rb:205:in `run'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/bin.rb:66:in `block in run'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/bin.rb:62:in `each'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/lib/puppet-lint/bin.rb:62:in `run'
/opt/puppetlabs/pdk/share/cache/ruby/2.7.0/gems/puppet-lint-2.5.2/bin/puppet-lint:7:in `<top (required)>'
/home/tj/puppet/demo_array_of_hashes/bin/puppet-lint:29:in `load'
/home/tj/puppet/demo_array_of_hashes/bin/puppet-lint:29:in `<main>'

┌ [✔] Running ruby validators ...
└── [✔] Checking Ruby code style (/.rb).
┌ [✔] Running tasks validators ...
├── [✔] Checking task names (tasks//).
└── [✔] Checking task metadata style (tasks/.json).
┌ [✔] Running yaml validators ...
└── [✔] Checking YAML syntax (/.yaml **/.yml).

Hmm thanks for this. We will take a look and get back to you.


⚠ AZ-Launcher has degraded performance

In 25d81d4, AZ-Launcher (https://az-launcher.nz/) experienced degraded performance:

HTTP code: 200
Response time: 1926 ms

Resolved: AZ-Launcher performance has improved in 4f69af4 after 7 minutes.


Refactor clean task to use del module

As per the Gulp docs this PR replaces usage of gulp-clean plugin with recommended NPM del module, which is simpler and more robust:
https://github.com/gulpjs/gulp/blob/master/docs/recipes/delete-files-folder.md
The other common Gulp plugin gulp-rimraf is also beeing deprecated for above reason:
https://www.npmjs.com/package/gulp-rimraf
The change introduced by this PR is easy to test and easy to revert if required.
Thanks!

:+1:


Fixes chadxz/imap-simple#7

Added fetchOptions param to the callback version of search.

Thanks so much! Will cut a release when I get back to my computer

published<EMAIL_ADDRESS>


Garment rendered wrong  in front of body in some frames

this seems to happen in the following actions: 0 (idle), 16(sit), 72(freeze2)
request example:
{
    "job": ["4063"],
    "action": 16,
    "head": 21,
    "headPalette": 6,
    "headgear": [1985,1309,572],
    "gender": 0,
    "garment": 48,
    "bodyPalette": 3
}

result:

Thank your for reporting, I was able to reproduce this. The cause seems to lie in the depth sorting when an animated headgear is in use.

Actions such as Freeze need to be special treated e.g. by using only the first frame ignoring all headgears. There are probably some other actions that also only have 1 frame. That is something I'll look at some point.

Fixed at:
idle (0~7) and sit (16~23)

Created a follow-up ticket here: #18


Get rid of peerDependencies for react & react-dom when using preact & preact-compat

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior
Shall we remove react & react-dom from peerDependencies? Since using preact (without react) is already an option.
Current Behavior
will warning about:
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.

Steps to Reproduce
npm install next@beta preact preact-compat

We'd love to do that. But there's no such way to do that AFAIK.

Also, for development, you need to use react/react-dom for hot-reloading (as stated in the with-preact example)?

@reel @arunoda Thanks for clarifying!


Completed feature request to have a minimum order amount #4029

Feature Request:
Link: https://github.com/bagisto/bagisto/issues/4029
The same English translations added to all locales. Once the text got finalized, I will fill up those as well.

@devansh-webkul
can you please check why the condition fails when set minimum order amount 100 or more(let's product price is equal to $40 or less than 100)


device get null after assigned

I am trying to connect to device I can find it and after assigning it's to value or add it to a list of devices I get null here is my code
/*     _devices = await FlutterBluetoothSerial.instance.getBondedDevices();
    notifyListeners(); */
    flutterBlue.stopScan();
    flutterBlue.startScan(timeout: Duration(seconds: 5));
    flutterBlue.scanResults.listen((List<ScanResult> results) {
      // do something with scan results
      for (ScanResult r in results) {
        if (!_devices.any((element) => element.id == r.device.id)) {
          _devices.insert(0, r.device);
          print('${r.device.name} found! rssi: ${r.rssi}');
          print(r.advertisementData);
          print(r.device.id);
          print(_devices.length);
          if (r.device.name == 'kamal') {
            print('found');
            targetDevice = r.device;
            print(targetDevice.name);
            flutterBlue.stopScan();
          }
        }
      }
      notifyListeners();
    });
    flutterBlue.connectedDevices.asStream().listen((event) {
      for (BluetoothDevice bd in event) {
        if (!_devices.contains(bd)) _devices.add(bd);
        print(bd.id);
      }
      notifyListeners();
    });
    print(_devices.length);
  }

  Future<bool> connect(int index) async {
    flutterBlue.stopScan();
    try {
      await targetDevice.connect();
      await discoverServices();
      // ignore: unrelated_type_equality_checks
      if (_devices[index].state == BluetoothDeviceState.connected) {
        isConnected = true;
        _connectedDevice = _devices[index];
      }
      notifyListeners();
    } catch (e) {
      print(e);
    }

    return isConnected;
  }

and here is the output
4
I/BluetoothAdapter( 6327): STATE_ON
D/BluetoothLeScanner( 6327): Start Scan with callback
D/BluetoothLeScanner( 6327): onScannerRegistered() - status=0 scannerId=9 mScannerId=0
I/flutter ( 6327): kamal found! rssi: -86
I/flutter ( 6327): AdvertisementData{localName: kamal, txPowerLevel: -15, connectable: true, manufacturerData: {}, serviceData: {0000180f-0000-1000-8000-00805f9b34fb: [1]}, serviceUuids: [0000180f-0000-1000-8000-00805f9b34fb]}
I/flutter ( 6327): 7A:E8:88:94:29:5B
I/flutter ( 6327): 1
I/flutter ( 6327): found
I/flutter ( 6327): kamal
2
I/BluetoothAdapter( 6327): STATE_ON
D/BluetoothLeScanner( 6327): Stop Scan with callback
2
I/BluetoothAdapter( 6327): STATE_ON

I am also facing the same problem. but when I am running an example app its finding devices but in my app, it didn't.

Is there anyone who solved this?


How to do a complex database query in AWS Amplify

With Amplify API I am trying to implement something like a social network website. In the website, users can follow people and add posts. In the timeline, users can see the posts of people they follow.
Schema is something like this:

type User @model {
  id: ID!
  name: String!
  following: [User] @connection(name: "UserFollowing")
  followers: [User] @connection(name: "UserFollowers")
}

type Post @model {
  id: ID!
  content: String
  user: User @connection
}

type UserFollow @model {
  id: ID!
  user: User @connection(name: "UserFollowing")
  followee: User @connection(name: "UserFollowers")
}

While implementing the timeline feature, I got stuck. How can I query user's timeline posts?
If I use RDS it might be easier by using a complex SQL query. However it doesn't look like Amplify supports SQL queries for RDS.
Can somebody please help me with this?

So this should be possible to accomplish without using a complex sql query.
Just call listPosts with appropriate filters and update your schema file to this:

type User @model {
  id: ID!
  name: String!
  following: [UserFollow] @connection(name: "UserFollowing")
  followers: [UserFollow] @connection(name: "UserFollowers")
  posts: [Post] @connection(name:"UserPosts")
}

type Post @model {
  id: ID!
  content: String
  user: User @connection(name:"UserPosts")
}

type UserFollow @model {
  id: ID!
  user: User @connection(name: "UserFollowing")
  followee: User @connection(name: "UserFollowers")
}

Please reopen if you have any further questions

@johnpc
I am unable to create the filter after reading the documentations. Can you please tell specifically what would be the filter?


JPEG image format raises invalid format error when changing avatars

Fixes https://github.com/CartoDB/cartodb/issues/6106
Hey there,
I increased the slice to get the 4 initial characters, as we were missing the jpeg extension which I have added to VALID_EXTENSIONS too.
Just tested in staging. Works like a charm :-)
cc @xavijam @MariaCheca

@MariaCheca review this one please :).

@MariaCheca could you recheck, please? :)

@gfiorav could you also take a look? :revolving_hearts:

Apart from the comments, :100:

I've pushed a new commit and rewrote the original description for the Pull Request. I'm much more happy with this now :smiley:

Looks great :) -> go ahead lady!


[SMALLFIX] remove unused import of Java 7+ class

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/Tachyon-Pull-Request-Builder/5810/
Test PASSed.

LGTM


Update contributing doc to discuss Rust style

https://aturon.github.io/

I just did this. #215 is still open.


Does addNonParallelizableMarkerForTags work for MsTest?

Related Documentation Page
https://docs.reqnroll.net/latest/execution/parallel-execution.html#excluding-reqnroll-features-from-parallel-execution
Type of the problem
Missing information
Problem Description
The documentation explains how the generator makes this option work for xUnit, but not the other test frameworks.
The reason I ask: When I configure this setting in my project, I see no difference in the generated *.feature.cs file for a scenario that has one of the tags I specify. (In case it matters, I have method-level parallelism configured for MsTest in my AssemblyInfo.cs)
So I'm wondering if this option actually does anything in MsTest? If so, it might be nice to include a little blurb for how it works. Same thing for NUnit.
Thanks!

It should work with MsTest and NUnit. At least we have tests in CI for it. 😉
Did you specify the same @Tag in the .feature file and the configuration?
Only if both match the Microsoft.VisualStudio.TestTools.UnitTesting.DoNotParallelizeAttribute is set.
Hope this helps a bit.


Dont work

I am doing /hologrames and its letting me tag people so i ignored it and done /holograms create Test Hello And it didnt work :/


Discuss: redesign documentation

I have received feedback from some users that the documentation for the current project is not perfect. including its structure.
I have thought about a new structure, please discuss it together.

As a user, i would like to have complete information about how to config apisix plugins in apisixroute, currently there is only a few example in How-To tutorials

thanks for your feedback.
In the new structure, I want to put them under Features and Benefits -> Explanation of each feature - Plugins

thanks for your feedback.
In the new structure, I want to put them under Features and Benefits -> Explanation of each feature - Plugins

As a developer, I want to know how to run e2e test, and wan to know how to fix the error when run the e2e test.
As a User, I want to know configuration the more plugins, e.g. limit-req, limit-conn, traffic-split...

Thanks, the contents about how to run the e2e test and some technical will put them under Technical Reference - Explanation of how the project works - Develop Guide and How to run e2e test cases.

@tao12345666333 Couple of comments while I was thinking this through.

We can probably merge the "overview," and the "getting started" page mentioned in this proposal to a single "getting started" page or the landing page of the Ingress controller docs. This would be similar to the APISIX docs. The only thing missing from our current getting started page is a basic walkthrough which we have to think about better on how to structure it.
Ingress controller might soon become an outdated term, so should we think about gateway? This page should at least mention the Gateway API and the CRDs as well. I don't think we should mention other ingress controller projects in our documentation.
Will the technical reference section contain the API reference?
How would we differentiate the "features and benefit" section from the one proposed on the "getting started" page?
The "limitations" section could be inline. i.e, when we are mentioning something related, we can also mention the limitations and caveats associated with it in a highlighted note. This would make it easy for the user.
The roadmap could be an md file on GitHub and can be an external link on the website, similar to how we have linked the changelog.
The design and technical details could be merged into a single section and not mixed with the developer section.
We might need to keep the installation section instead of everything being turned into a tutorial. Because once installed on any platform, the rest of the operation would more or less remain the same.

Let us try to iterate on this and get more direct feedback from ingress users before implementing and overhaul.


How to use MDL in a Chrome Packaged Application ?

hi,
I want to use Material Design Lite in a Chrome Packaged Application. That seems simple but my tries failed :-( With the Chrome Dev Editor, I created a new project for a Javascript Chrome App and included material.min.css, material.min.js, the Roboto font and the icons with the HTML code:
<link rel="stylesheet" href="material.min.css">
<script src="material.min.js"></script>
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:300,400,500,700" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">

When I launch the program, the result is bad because the Roboto font and icons can't be loaded by the security manager of Chrome. That seems logical because I want to use an external resource. Moreover, that's not correct for a packaged application that must running offline.
Someone know how to using correctly Material Design Lite in a Chrome packaged application ?
Best regards
Olivier ;-)

Why not to add fonts as local resources? There is guide how to do it with iconic font http://google.github.io/material-design-icons/ 2nd paragraph
The same is with Roboto font https://www.google.com/fonts#UsePlace:use/Collection:Roboto (download button at the right top)

As @kybarg kindly pointed out, the right way to tackle this is to use local versions of the packages. For the icons and Roboto both can be included as a downloaded/offline package and should work just as well.

Thanks for the answer :+1:


feature support match syntax

Proposed changes
Support match syntax in nereids.
match syntax use like:
select * from test where msg match "hello";
select * from test where msg match_any "hello";
select * from test where msg match_all "hello hi";
select * from test where msg match_phrase "hello world";

match is same as match_any.
the pr of match syntax in original planner: https://github.com/apache/doris/pull/14211
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall


[Feature] new network.id opcode

Motivation
This PR introduces the opcode network.id to access the ID of the current network (ex: 0 for mainnet, or 3 for testnet3). This opcode can be used as a safeguard against replay attacks, as signatures or hashes of data can now be bound to a specific network. Users can now test program authorizations on testnet without worrying that the same authorizations be maliciously reused on mainnet.
Open questions

Should network.id be allowed in transition functions?

We could not think of any potential use cases of such a feature that could not just be modified to attesting to a network ID value (as a transition function input), and then passing that value to finalize to verify it is correct.
Additionally, @bendyarm has pointed out that including this may result in potential difficulties with resolving the compile time value of network.id as it could be obfuscated if it were involved in computation.

Should all block metadata be readily accessible? Relevant ARC

Should we add the network ID to the block-specific random seed?
https://github.com/AleoHQ/snarkVM/blob/69b5b17a9d7f32e4f3abbc562ef080adfb654877/synthesizer/program/src/logic/finalize_global_state/mod.rs#L57-L63

Should we add the network ID to the block-specific random seed?
https://github.com/AleoHQ/snarkVM/blob/69b5b17a9d7f32e4f3abbc562ef080adfb654877/synthesizer/program/src/logic/finalize_global_state/mod.rs#L57-L63

It's not necessary for this PR, but could be a useful property. Networks with different IDs have different RNG state.


gives an explicit return of ActiveRecord::Base for establish connection

instead of what ActiveRecord::Base.establish_connection returns

@etagwerker I'm sorry, I'm not sure what you mean. Are you looking for a test that imitates the issue?

@etagwerker I've added a change to an existing spec that was not testing the return value of #establish_connection in the active record base class.

@awilkening Thanks! Merged here: https://github.com/DatabaseCleaner/database_cleaner/commit/83c485cdfa91982449d20664cd90416c3b1e45b4


No update list for collection classes

I see that we can block auto-updating positions in a list only for class to whom call the method acts_as_list_no_update
But what if I need to disable for parent or child classes inside a block for example:
class TodoList < ActiveRecord::Base
  has_many :todo_items, -> { order(position: :asc) }
end

class TodoItem < ActiveRecord::Base
  belongs_to :todo_list
  has_many :todo_attachments, -> { order(position: :asc) }

  acts_as_list scope: :todo_list
end

class TodoAttachment < ActiveRecord::Base
  belongs_to :todo_list
  acts_as_list scope: :todo_item
end

TodoItem.acts_as_list_no_update([TodoAttachment]) do
  TodoItem.find(10).update(position: 2)
  TodoAttachment.find(10).update(position: 1)
  TodoAttachment.find(11).update(position: 2)
end

These changes under allow to pass additional classes as an argument and don't update positions for records of the passed classes inside of the block where there might be interactions with them.
Thanks!

Please review guys @swanandp @brendon 🍻

@brendon I've updated the PR please review 🍺

Thanks @IlkhamGaysin, great work! I've merged that for you now :)

@brendon awyeah, thanks :beers:


Design Dorms Map

The Dorms Map should look like the inside of a dorm building.
Maybe there are a few other places you can do in here...

Made some good progress.

Finished.

Now I just need to add it into the app


ci: migrate release to tag triggers

I assume this is the same diff for other repos, and in that case I'll help add it when doing docker maintenance, right?

thanks again

@adriancole only diff to watch out for that I can think of is java artifacts (gradlew publish ) which belongs to a release but not merge)


How can I send a post Api from Flask server to Laravel server?

This issue tracker is a tool to address bugs in Flask itself.
Please use the #pocoo IRC channel on freenode or Stack Overflow for general
questions about using Flask or issues not related to Flask.
If you'd like to report a bug in Flask, fill out the template below. Provide
any extra information that may be useful / related to your problem.
Ideally, create an MCVE, which helps us
understand the problem and helps check that it is not caused by something in
your code.

Expected Behavior
Tell us what should happen.
Paste a minimal example that causes the problem.

Actual Behavior
Tell us what happens instead.
Paste the full traceback if there was an exception.

Environment

Python version:
Flask version:
Werkzeug version:

Didn't you read the prefilled text when opening this issue?

This issue tracker is a tool to address bugs in Flask itself.
Please use the #pocoo IRC channel on freenode or Stack Overflow for general
questions about using Flask or issues not related to Flask.


crash while using HTTPS baseurl

Getting error when my base url is set with HTTPS. Here is the error "A security policy configured with AFSSLPinningModeCertificate can only be applied on a manager with a secure base URL"
I have also set allowInvalidCertificates property to TRUE. Still not working for me. Did anyone get the solution for this?

The relevant part of the code is ![self.baseURL.scheme isEqualToString:@"https"]. Make sure your base URL’s scheme is https; this is case-sensitive, so HTTPS would not work.


Oscillating vehicles in 0.9.7

I have recently shifted to carla 0.9.7 version and I noticed the vehicles oscillate a lot while taking turns or even while passing straight through junctions. I tried tuning the PID (lateral control) parameters in local_planner.py file. But this makes no impact on this oscillating behavior.
Is there a way to resolve this? Am I missing something?
Thank you.

Hi,
Tuning the parameters in local_planner.py only affects the agents, but if you're using the Traffic Manager, activated by set_autopilot(True), you need to change those PID parameters. However, for FPS under 20, this oscillating behavior happens anyway.
You can try to tune them in TrafficManager.cpp, but in a few days this will be fixed by introducing synchronous mode with Traffic Manager!

@jackbart94 Hi,
I have been using carla since 0.9.6, but I'm a little bit confused.
Using the provided synchronous mode example, I managed to get all things well previously in 0.9.6 WITH NPC vehicles, . But in <IP_ADDRESS>, NPC vehicles are abnormal with previous synchronous example. I think it may be because of synchronous problem of traffic manager, or there should be some method to activate the synchronous mode for it, but I didn't see there's any method inside carla.libcarla.TrafficManager .

@SunFishlike Hi!
There was a big change from 0.9.6 to 0.9.7 when it comes to handling vehicles. In 0.9.8 (coming out in two weeks) we have fixed the NPC abnormal behavior and reintroduced a working synchronous mode compliant with Traffic Manager.
But right now, in 0.9.7, the Traffic Manager is asynchronous and thus a big drop in FPS will cause vehicles to oscillate, because they are skipping frames.
We are merging these changes in master soon, you will be able to try it in the upcoming days!

Hi guys!
The oscillating behavior is still present for me even if I set CARLA to synchronous mode and fixed timestep. (using the new, 0.9.9 version and Traffic Manager for autopilot)

@jackbart94 this issue needs attention. Are you able to reproduce this behavior in TM 2.0?
@martonur could you please provide a minimum example?

Hi,
I haven't been able to see vehicles oscillating in TM 2.0. I need more information about this in order to reproduce it.

Has this issue been solved? I can confirm that the issue persists in carla 0.9.9 + scenario runner 0.9.9 in town03

I will test it with 0.9.10 and if the problem is still present, I'll provide a minimal example for easy reproduction.

I can confirm this still happens in carla 0.9.10. The observations are that lane changing cars will spin, straight going cars will weave in the lane. I can try but I believe It's tough for me to generate a minimal reproducible example from my current stack. But the observation was made when there are a lot of traffics and sensors on each of them and lots of computations on client side that makes the server run much less than 1fps.


Project update

[x] delete node_modules folder
[x] delete vscodecounter folder
[x] add ignore file
[x] add editorconfig

Thank you ,but we working on coding.net so it maybe so bad ,but we can delete the node_model dir,Thank you,happy every day

so can you give we a star?(doge)

so can you give we a star?(doge)

maybe need standardized this project ,like add ignore file , editorconfig ,prettier config file, etc.

Closed.


extract: fix typo

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?

I'm pretty sure this would be more than just a cosmetic issue if running --debug due to the failed substitution (test_formual_version_segments undefined or something like that).

Thanks again @alebcay!

Thanks for reviewing! 🎉


[Bug] Treemap: set selected tree node and zoom to node after data refresh

Version
5.4.0
Link to Minimal Reproduction
https://jsfiddle.net/AimanKhan11/51kuv2mc/10/
Steps to Reproduce

run the fiddle
drill down to specific node (click event will store the last visited tree node info into variable)
click on refresh button

Current Behavior
By clicking on refresh button, treemap not zooming to last visited node and going to its initial state.
Expected Behavior
Treemap should zoom to last visited node and maintain its state after refreshing options
Environment
- OS: Windows
- Browser: Google Chrome
- Framework: Angular@14

Any additional comments?
Is there any way to select or zoom last visited node after refresh treemap data option.?

dispatchAction({
  type: "treemapRootToNode";
  targetNode?: TreeNode | string;
  targetNodeId?: string;
  direction?: "rollUp" | "drillDown";
})


Fix unencrypted private key serialization

Only the hash was being serialized, instead of the actual private data.

Closed in favor of #65.


Dev Validate: Update with the ability to run remote/multiple validations.

Is your feature request related to a problem? Please describe.
Should the lula dev validate command be updated to allow for remote or multiple validation files to be run without a component definition.
Describe the solution you'd like

Given file or url with multiple validations
When lula dev validate is run
Then the external validation or multiple validations are run

Additional context

Is this useful?
depends on #357

Evaluate uses cases further - decompose issue (Add here later) opinionates the separation of validations into single validation files.


Update cdn-improve-performance.md - correct info

correct feature description.

#sign-off

@zhangmanling : Thanks for your contribution to the Azure documentation! The author, @zhangmanling, has been notified to review your proposed change.

#sign-off

Hi @zhangmanling,
Microsoft authors of articles need to make updates through the private repository so the updates can be staged and validated by the current validation rules. After you review staging and fix all validation issues, you can add the sign-off comment to let the reviewers know the updates are ready to be merged.

Read about article authors working in the public repo for more information.

Please submit future updates through the private repo. Thank you


Created Criminal Check Admin Page

Notion ticket link
Criminal Record Check approval

Implementation description

Implemented according to the design on Figma
We don't have a date modified field so that line has been removed from the file
Added null state for approval since default should be pending, not declined

Steps to test

Go to the admin/criminal-check page and play around, most of the buttons do nothing except for the approval button on the file card, which should change the approval state on click.

What should reviewers focus on?

Check to see that the singular mutation works properly
File downloads correctly

Checklist

[x] My PR name is descriptive and in imperative tense
[x] I have run the linter
[x] I have requested a review from the PL, and/or other devs who have background knowledge on this PR or who will be building on top of this PR

couple of comments from design:

i know this is not mocked up in the figma, but is it possible to create a default state for the badge? something like new? this will be before admin takes it into pending.
i assume the date submitted field will be added later bc we're waiting on external correct?

everything looks great otherwise!

@bekahma I think this is a bit of extra work atm since it requries us to change the schema. I think currently, since we are only ever showing 1 criminal check, three states should be fine! Lmk you thoughts.

oh i forgot about this until now - did we account for the empty state in this PR?

oh i forgot about this until now - did we account for the empty state in this PR?

Yup! It's in the code, not in the screenshot sadly :P

I DMed about the bad api/file/retrieve behavior. Depending on Kevin to get it fixed 🙏


Feat/print required parameters

Description
This PR adds printing out required security and integration parameter values in command.
Motivation and Context

Types of changes

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

Checklist:

[ ] I have updated the documentation accordingly. For updating Oclif commands documentation use oclif-dev.
[ ] I have read the CONTRIBUTION_GUIDE document.
[ ] I haven't repeated the code. (DRY)
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.