Types of inputs not enforced, messes up paging when limit is string

I'm submitting a ...  (check one with "x")
[ x ] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here

Current behavior
If you create an ngx-datatable with attribute limit=10, page sizes are variable - when you advance to the second page you'll see unexpectedly large page size. The reason is that the limit comes through as a string because I didn't do [limit]=10, so then all the math is doing string concatenation instead of addition (i.e. 10+10 = 1010).
It took me a while to debug this because I'm a noob. It would be more forgiving if we could just convert all the inputs to the correct type, and save me having to type [limit] instead of limit.
Expected behavior
setting limit=10 sets page size to 10 consistently on all pages.
Reproduction of the problem
When I repro'd I didn't use a vertical scrollbar. Just set limit like this:
<ngx-datatable
[rows]="rows"
[columns]="columns"
limit=10
footerHeight=50

What is the motivation / use case for changing the behavior?
Make it easier for people without much experience to use this component successfully.
Please tell us about your environment:
Linux.

Table version: 0.7.x
7.0.0

Angular version: 2.0.x
4.0.0-rc.5

Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]
I only tried Chrome 57.0.2987.110 (64-bit)

Language: [all | TypeScript X.X | ES6/7 | ES5]
TypeScript

We should implement number parsing in the column helper here -> https://github.com/swimlane/ngx-datatable/blob/master/src/utils/column-helper.ts#L12-L50
Would you mind PR'n this change? We should handle min/max etc too.

Hi @amcdnl, I want to contribute to this repo and this seems like a good starting point.
However regarding the issue, why to change the column helper given the problem is actually the attribute set on the table itself? Could you please enlighten me? Thanks!


feat(ingress-nginx): Change scope to namespace and allow configuration of ingress class name

Closes #1070
📑 Description

Change all nginx-ingress packages to namespace scoped
Allow configuration of ingressClass, ingressClassResource.name and ingressClassResource.controllerValue to enable each controller to manage and process its own ingressClass

Default values are taken from the ingress-nginx helm chart

ℹ Additional Information

versions.yaml has been updated to v1.9.6+1

While testing the changes, I noticed that the glasskube-bot currently doesn't add new versions of ingress-nginx packages. Is this known already?

Tests are failing. I suspect this is because ingress-nginx can't set up the loadbalancer service correctly in minikube :thinking:

Aight, I reverted back to the first commit, except for the latestVersion. So when the PR is merged the bot should hopefully kick in and update the latestVersion in index.yaml and the ingress-nginx/versions.yaml.


Clarify docs and tests around empty text files.

Before #47, setting text_file to an empty or missing file resulted in
no notification being sent. After #47, setting text_file to an empty
file continued to result in no notification, but setting to an empty
file sent a notification. This patch updates docs and tests to clarify
the current expected behavior around empty and missing text files.

cc @drnic

Thx


firebase is not defined

trying to load this in chrome, in the console I see: firebase is not defined
any help ? thx!

Hey kofifus, try adding the following snippet as described in the official documentation website:
https://firebase.google.com/docs/web/setup#add_firebase_to_your_app
`// TODO: Replace with your project's customized code snippet

`

ok thx :)
I did and I now get in the console:
Uncaught Error: This domain is not authorized for OAuth operations for your Firebase project. Edit the list of authorized domains from the Firebase console.  firebase.js:71
Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('file://') does not match the recipient window's origin ('null').  iframe.js:188
any help?

Make sure you serve your files from a web server:

Install the firebase CLI: npm install -g firebase-tools
Serve your firebase project: firebase serve
Open http://localhost:5000

PS: these instructions are in the README file that's in each folders of the samples ;)

does this mean I now must have my firebase using files served from an http server ? in the old FB version I could simply load a local file to the broswer ?

also,
I added the project's customized code snippet, installed apache and now serve the file from http://localhost/email.html
The page load but in the console log I see:
Uncaught ReferenceError: firebase is not defined email.html: 114
any help with that ?
thx!

Yes that's right, the new auth implementation doesn't allow file:// schemes to be whitelisted at this point so you need to access your app from an http:// URI.

I think you should add this to the README.


Data attributes are only pulled in at initialization

For performance, data attributes are only read at time of initialization and cached in a javascript object. This is a problem for when a feature requires adjusting the attributes on the fly. For example: speeding up the wiggle on hover.
Unfortunately, it doesn't look like javascript has an event for data attribute changed.
Perhaps a refresh function to refresh the cache with the data attributes values?

Simple implementation here, not opening a PR yet because it includes some other not-yet-merged changes: https://github.com/bendemeyer/wiv.js/commit/56914a3320fca8f7b39cd12d8655338b0414be48
Note that this refreshes all the attribute-based cache fields for a given wiv when any attribute change takes place. This could be addressed in the future if that optimization seems worthwhile.
Also, potentially a bigger concern, editing the height or thickness attributes will cause the wiggles to adjust accordingly, but will not resize the canvas or the content elements. The fix for this would be to factor the sizing of those elements into a specific function, then work our way up the DOM tree calling it for every wiv we encounter.


[Tool] Make FE UT log level be configurable

Signed-off-by: Kevin Li<EMAIL_ADDRESS>What type of PR is this：

[ ] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[x] Tool

Which issues of this PR fixes ：

Fixes #

Exclude duplicate slf4j-reload4j denpendency.

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/lishuming/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.17.1/log4j-slf4j-impl-2.17.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/lishuming/.m2/repository/org/slf4j/slf4j-reload4j/1.7.36/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Make FE UT log level be configurable,  still keepWARN level by default, but you can  change fe/fe-core/test/resources/log4j2.xml if you want to change log level:

    <Loggers>
        <Root level="INFO">
            <AppenderRef ref="Console" />
            <AppenderRef ref="RollingFile" />
        </Root>
    </Loggers>

Problem Summary(Required) ：

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[ ] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

run starrocks_admit_test

run starrocks_fe_unittest

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

run starrocks_admit_test

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

run starrocks_admit_test

run starrocks_admit_test


You'd show the path to the requested file

The point of this grunt task is to mimic apache ssi processing, so by default the grunt task uses the default error output. If you run the grunt task in verbose mode --verbose, it should output more of the file paths in the console to help you debug your issue


Add use / don't use / remove functionality to species page

Type

New feature

Related JIRA Issue(s)
https://www.ebi.ac.uk/panda/jira/browse/ENSWBSITES-754
Description

Add to Species page elements to enable, disable, or remove the currently active species
When the Remove element is clicked, the species is removed and the user is redirected to to Species Selector

[TODO]

10px white space around the toggle

Deployment URL
http://use-dont-use-remove.review.ensembl.org/species/homo_sapiens_GCA_000001405_28
Views affected
Species page

Would it be better to wrap the text so that the button is always visible?

It could go hidden on smaller screens and might confuse the users.

The species name placeholder and the use / don't use toggle section seems to slightly jump down as we open the remove confirmation.

Would it be better to wrap the text so that the button is always visible?

@msmanoj I think you'll need to ask this question again when we merge https://github.com/Ensembl/ensembl-client/pull/351 in. On the screenshot that you are showing, Sidebar is overlaying part of the main section of the standard layout, which it no longer will once that other PR is merged.

But may want to show this to Andrea and fix it in a subsequent PR.
Meanwhile, I'll make sure "Don't use" doesn't get wrapped over several lines.

The species name placeholder and the use / don't use toggle section seems to slightly jump down as we open the remove confirmation.
@msmanoj yes, I've noticed that too. It should go away once we start showing the species icon; but will probably still be an issue because of potential wrapping of the text. This is something we'll need to ask Andrea for guidance.

@msmanoj I've added a more realistic species icon placeholder to prevent the vertical shift when you click on the "Remove" link (at least as long as the warning together with the Remove button fit in a single line).
I also talked to Andrea, and she will add to the prototype what should happen to the warning on smaller screens.


Upgrade to ZooKeeper 3.6.2

Motivation
Upgrade to latest stable ZK version 3.6.2. The new minor versions brings several advantages:

Performance improvements (eg: tuning group commit on txn log)
Prometheus based metrics (so that we can get rid of AspectJ hacky way to instrument ZK)
New features like persistent recursive watches which would greatly simplify the logic to handle metadata cache invalidations.

The possibility of rollback to previous version has also been validated.

it's compatible with old zk-server version.right?

it's compatible with old zk-server version.right?

Yes, unless we start making use of new features in ZK client

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@codelipenghui it would be interesting to have this patch in 2.7.0
@merlimat unfortunately there are test failure related to this patch, like this one:
java.lang.NullPointerException
	at org.apache.pulsar.io.flume.node.TestAbstractZooKeeperConfigurationProvider.tearDown(TestAbstractZooKeeperConfigurationProvider.java:75)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)

@merlimat Can you rebase this pull request?

@merlimat if you do not have time I can pick this up

@eolivelli I will start the 2.7.0 release process soon, I think it's better to onboard this change.  Seems @merlimat do not have time, I think you can pick up this fix.

@merlimat @codelipenghui I am trying to fix this patch now.
btw it is not a blocker for a release.
We are also supporting ZooKeeper server in pulsar distribution, and AFAIK adapting the server side can be painful the way we are launching it.
Stay tuned

closing in favour of #8590
btw @codelipenghui we cannot make this upgrade, a release on BK is needed, see #8590

@merlimat I cannot close the issue, please do it for me

Closed this in favor of #8590


Fixes javaslang/javaslang#137

Coverage remained the same at 100.0% when pulling 42f9835cf7a49cb801c4aa037755c293c4a10a1f on danieldietrich:master into af281d05f1fb4c29144d186f96aefe8246ceea80 on javaslang:master.


Isochronous endpoint support

Heya,
I would like to implement USB Audio v1 (specifically, input terminal + AudioStreaming interface) however the spec calls for isochronous endpoints.
I think this is possible to implement without breaking changes by just adding a new method to allocate an isynchronous endpoint, which additionally takes two more fields for the Usage Type & Synchronization type. We can then store those in the Endpoint struct, and for isochronous endpoints, compute the correct value of bmAttributes that way.
What do you think? Would you accept a PR for this?

Unfortunately it's not as simple as just adding a new endpoint type. Isochronous endpoints are quite a bit more complicated than the other types, and I'd rather not have a half baked implementation.
The main complication is synchronization, because there's a somewhat complex model with three synchronization modes and associated feedback endpoints which are used for different methods to synchronize clocks between various things in an isochronous system. I recommend reading the USB 2.0 specification chapter 5.12 ("Special Considerations for Isochronous Transfers") to get an idea of what it involves. For a good implementation this would all have to be abstracted in a way that's reasonable to use.
Additionally each driver would need some work to add the new endpoint type. To have reliable isochronous transfers things such as double buffering (or just queueing more than one packet) will probably become necessary to add, because there are no retries in isochronous transfers. I don't think any driver implements that as of now.

My understanding was usb-device would implement the abstraction between devices and implemented interfaces, specifically:

generating common descriptors
handling events and routing data to the right interface implementations

Under that model, shouldn't most of the logic for feedback exist in the class implementation?
While the feedback / synch mechanism is broadly described in the USB spec, and how to communicate some info about isochronous endpoints is described, the actual details necessary to define the semantics are class specific. For example, interpreting the data from the synch ep requires understanding the format and sample rate in use, and adapting the audio stream requires tracking the average sample rate and comparing it to the synch values in a big, messy, feedback loop. I don't think this makes sense in the context of a USB Hal like usb-device, especially given how specific it is.
Concretely, this is what I had in mind:

usb-device would gain the ability to allocate isochronous endpoints, including collecting the isochronous-specific fields to be included in the endpoint descriptor
class would generate the descriptors, as is already the case, particularly the UsbAudio/terminal/Audio streaming descriptors
class would read/write the payloads for isochronous endpoints and feedback endpoints if used
class would handle SYNCH_FRAME control packets if needed (similar to how usbd-hid handles some HID report related packets)

Also, why does usb-device need double buffering? There are already class callbacks when transfers are received or finished in the hot path of poll(), so the endpoints will get filled almost immediately anyway, and without the double copy caused by a usb-device buffer.

This is needed for usb audio class devices correct?

@bfrog Yes, the audio standard needs isochronous endpoints to work to its fullest extent. I think there's a fallback bulk endpoint mode but I'm not sure how well that works in practice.

I too would like to implement USB audio... Assuming nobody else has a prototype, I can start trying to proof-of-concept creating the required endpoints.
I looked through USB 2.0 section 5.12 a bit, it seems like representing errors in the API may be a bit tricky. It'll take a bit of poking at.

@lkolbly - I've got a local branch with some work on this, will try to clean it up and push it up to github in the next couple days in case it's useful.  IIRC there isn't actually any change required to usb-device to make isochronous data endpoints with no synchronization.

Here's a branch that just adds isochronous endpoint support, but so far it's enough for my application and aligns with @twitchyliquid64 's second comment : https://github.com/ianrrees/usb-device/tree/isochronous .
I'm also working on embedded-dma support, per @mvirkkunen 's comment the present scheme wastes too many cycles copying data in/out of the endpoint buffers for my application.  Strictly speaking, the DMA work is not related to isochronous transfers, but in practice isochronous is used for higher-bandwidth things like audio.

@ianrrees Awesome, thanks! Yeah, it was enough to get me up and going with (unsychronized) audio, and in particular I think the only additional thing this crate needs to support isochronous endpoints is support from libusb so we can add it to the test harness. If that sounds reasonable @mvirkkunen I'll go try and work on that for a bit. (also, we may have to switch to rusb, since it seems like the original libusb is unmaintained)
Double-buffering would be nice for drivers to implement, but I think doesn't necessarily require changes to the API. As it is today, drivers could implement e.g. up to 5 queued packets, and write() I think could transparently append onto the queue (the user then gets notified of the actual send via the endpoint_in_complete callback that exists today).
DMA (or zerocopy in general) would be handy, as well. For some applications you could get away with just requesting that the driver generate a buffer, and leveraging the scope that it gives you:
some_endpoint.write_into(BUF_SIZE, |buf| {
   // The driver has allocated the buffer for its "next" transfer, now we fill it directly
   buf[5] = 123;
});

some_endpoint.read_from(|buf| {
   // buf is the next packet as received by the device
   println!("Got value {}!", buf[0]);
});

although that doesn't work super well for DMA, it does at least save a copy. Also, the existing read/write implementations could be written in terms of this, which might save some code in the drivers (since I believe they currently need to handle the copy).

@lkolbly - For my project, I'm using rusb for the higher-level USB stuff, and libusb1-sys for the asynchronous interface to the C libusb which supports isochronous transfers but only via the asynchronous interface.  I haven't really looked in to Rust async yet so perhaps using it would be easier, but the way I've done the host-side driver with asynchronous libusb is a bit of a pain.  @mvirkkunen what do you think about pulling this in without testing support?
The main problem I encountered with DMA is to do with reading, as the user needs to supply a buffer for the next read before/while retrieving the previously-filled one.  I think DMA is orthogonal to isochronous support - the DMA stuff would be useful for bulk transfers too, and isochronous doesn't strictly need them.


Faster zero removal

@jk-jeon I thought you might be interested in these results. I took the branchless Granlund-Montgomery from your repo for std::uint32_t and std::uint64_t and then adapted a 128-bit case. I also added a test set for every representable power of 10 to see if the result is always 1. I found that in the 32 bit and 64 bit cases an extra step was needed beyond what you had in your repo as it was stopping at 7 and 15 zeros removed respectively. In the 128-bit case I ended up going for two passes since with t = 32, there is no modular inverse so the whole calculation becomes garbage.

Hi, thanks for letting me know!
In my intended specific application, 32-bit numbers have at most 8 digits and 64-bit numbers have at most 16 digits, so I intentionally omitted the extra step. Of course t=8 step and t=16 step are needed if there is no a priori known upper bounds.
For the 128-bit case, I am a bit confused. So it seems the largest power of 10 fitting in 128-bits is $10^{38}$, and $5^{32}$ should have its modular inverse with respect to $2^{128}$. According to Wolfram alpha, it's 0x62b42691'ad836eb1'16590f42'0a835081.
Here is a test code: https://godbolt.org/z/WMrvWhb41
The generated assembly is not particularly adorable, but I guess unless you can ensure an upper bound on the input (better than $2^{128}-1$) this is probably the best I can do.

For the 128-bit case, I am a bit confused. So it seems the largest power of 10 fitting in 128-bits is 1038, and 532 should have its modular inverse with respect to 2128. According to Wolfram alpha, it's 0x62b42691'ad836eb1'16590f42'0a835081.
Here is a test code: https://godbolt.org/z/WMrvWhb41

Thanks for that. I'm not sure why I was getting m = 0 but this is clearly correct.

The generated assembly is not particularly adorable, but I guess unless you can ensure an upper bound on the input (better than 2128−1) this is probably the best I can do.

Unfortunately here the upper bound on the input is digits10 - 1 which does nothing to help.

Thanks for that. I'm not sure why I was getting m = 0 but this is clearly correct.

I observed that according to my post the multiplier is supposed to be the modular inverse with respect to $2^{128-32}$ rather than $2^{128}$ so maybe that's a source of confusion. It doesn't matter in the end though. It seems you followed that convention, which resulted different multipliers from what I did in the godbolt link. For consistency, I guess it's probably a little bit better to continue that convention which means to remove the first 8 hex digits from the multiplier for t=32 step. Nothing changes in terms of functionality though.

Unfortunately here the upper bound on the input is digits10 - 1 which does nothing to help.

I assume you mean the bound is $10^{38}-1$. That little bit of margin allowed me to try the generalized modular inverse method which replaces rotr by the regular shift, but it seems to generate much worse assembly: https://godbolt.org/z/b9Wf463vP
So the status quo is the best I guess.


Seeing DNS i/o timeout sporadically 0.1% in a day

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description
We are seeing the sporadic i/o timeout for DNS querries , When we enable the debug log for istio-proxy sidecar we see SERVFAIL at the same time.   This is not specific any endpoint or A/AAAA record .   We tried all the possibilties of configuration on coredns side like  cache 60, cache { servfail 0 } , buffersize nothing seems to be fixing the issue.
Just is this error thrown by sidecar when dns reaquest struck more than a 5sec ?   Is there any way we can debug the issue.
upstream failure: read udp <IP_ADDRESS>:36064-><IP_ADDRESS>:53: i/o timeout

debug log says SERVFAIL :
upstream response for hostname "ocsp2.globalsign.com.core.svc.cluster.local." : ;; opcode: QUERY, status: NXDOMAIN, id: 10565 ;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;ocsp2.globalsign.com.core.svc.cluster.local. IN AAAA ;; AUTHORITY SECTION: [cluster.local](https://cluster.local/). 3 IN SOA [ns.dns.cluster.local](https://ns.dns.cluster.local/). [hostmaster.cluster.local](https://hostmaster.cluster.local/).<PHONE_NUMBER> 7200 1800 86400 5

Version
$ kubectl version
Client Version: v1.28.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.27.13-eks-3af4770

$ istioctl version
client version: 1.20.3
control plane version: 1.20.3
data plane version: 1.20.3 (1187 proxies)

Additional Information
No response
Affected product area

[ ] Ambient
[ ] Docs
[ ] Dual Stack
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
[ ] Upgrade
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Control Plane Revisions

No logs on the coredns During the timeout error timeframe .


Event handler deadlock fix

EVENT HANDLER
There is a race condition (vary rare) in EventHandler that can make an object be destroyed while other thread is calling its callback, or to deadlock (in case of SignalHandler and PeriodicEventHandler) if destroying and callback happen at the same time.
For this propose, a new mutex is added in EventHandler that allows to check whether the callback is set or not without getting stucked with any other thread.
SIGNAL HANDLER
SignalHandler class has been divided in SignalManager, a singleton that manages the signals, and SignalHandler, a class that register a callback in the SignalManager in order to receive a call every time a signal arrives.
Tests have been added.

TODO

[ ] Add code comment
[ ] Add forthcoming version comment


[Suggestion] Projectile Damage integration

Currently, when both mods are installed, playerex:ranged_damage is (I think) just added to projectile_damage:generic, and the total damage calculated by both  is multiplied by playerex:ranged_crit_damage (not factoring in the variable arrow damage factors). This works, but what displays on the combat attribute page is just bonus damage, and isn't very clear or as elegant as the current implementation with generic.attack_damage, where the attribute updates based on the equipped weapon and total stats to give a relatively accurate value of the actual attack damage.
This is especially confusing in instances where the projectile damage attribute is scaled, for instance, a bow that has 12 damage instead of 6 - the player probably expects their combat attributes page to reflect something but it doesn't
I'd like to suggest implementing Projectile Damage as a dependency (it's a very lightweight mod), and replacing "Bonus Damage" on the combat attributes page with "Ranged Damage" (which is just the total ranged damage as already calculated by projectile_damage:generic+playerex:ranged_damage, or however it's actually calculated.)

Hi there,
Agree with everything you've said - plan to do this in next update (for 1.19.2).
Thanks.

Implemented with 3.5.4+1.19.2, available on Modrinth and pending approval on Curseforge.


keda 2.8.1 vulnerabilities in keda core and keda-metrics-apiserver images

Hi,
We are trying to scale up our workloads based on external metrics. Keda gives us all options which we were looking for. However in order for us to make Keda part of our clusters, we need to run security scans and make sure we do not introduce critical or high CVEs. But we see that there are a few high vulnerabilities listed below. Is there a forthcoming release where these can be fixed?
We use keda 2.8.1.
Keda core has below high CVEs

Severity
Package
CVE
Fix Status
Grace period
Risk factors
Description

high
go
CVE-2022-41715
Fixed in: 1.19.2, 1.18.7 28 days ago

6
Impacted versions: <1.18.7 Programs which compile regular expressions from untrusted sources may be vulnerable to memory exhaustion or denial of service. The parsed regexp representation is linear in the size of the input, but in some cases the constant factor can be as high as 40,000, making relatively small regexps consume much larger amounts of memory. After fix, each regexp being parsed is limited to a 256 MB memory footprint. Regular expressions whose representation would use more space than that are rejected. Normal use of regular expressions is unaffected.

high
go
CVE-2022-2879
Fixed in: 1.19.2, 1.18.7 28 days ago

5
Impacted versions: <1.18.7 Reader.Read does not set a limit on the maximum size of file headers. A maliciously crafted archive could cause Read to allocate unbounded amounts of memory, potentially causing resource exhaustion or panics. After fix, Reader.Read limits the maximum size of header blocks

high
go
CVE-2022-2880
Fixed in: 1.19.2, 1.18.7 28 days ago

5
Impacted versions: <1.18.7 Requests forwarded by ReverseProxy include the raw query parameters from the inbound request, including unparseable parameters rejected by net/http. This could permit query parameter smuggling when a Go proxy forwards a parameter with an unparseable value. After fix, ReverseProxy sanitizes the query parameters in the forwarded query when the outbound request\'s Form field is set after the ReverseProxy. Director function returns, indicating that the proxy has parsed the query parameters. Proxies which do not parse query parameters continue to forward the original query parameters unchanged.

high
go
CVE-2022-27664
Fixed in: 1.19.1, 1.18.6 66 days ago

6
Impacted versions: <1.18.6 In net/http in Go before 1.18.6 and 1.19.x before 1.19.1, attackers can cause a denial of service because an HTTP/2 connection can hang during closing if shutdown were preempted by a fatal error.

keda-metrics-apiserver:2.8.1 has below high CVEs

Severity
Package
CVE
Fix Status
Grace period
Risk factors
Description
Tags

high
go
CVE-2022-41715
Fixed in: 1.19.2, 1.18.7 28 days ago

6
Impacted versions: <1.18.7 Programs which compile regular expressions from untrusted sources may be vulnerable to memory exhaustion or denial of service. The parsed regexp representation is linear in the size of the input, but in some cases the constant factor can be as high as 40,000, making relatively small regexps consume much larger amounts of memory. After fix, each regexp being parsed is limited to a 256 MB memory footprint. Regular expressions whose representation would use more space than that are rejected. Normal use of regular expressions is unaffected.

high
go
CVE-2022-2879
Fixed in: 1.19.2, 1.18.7 28 days ago

5
Impacted versions: <1.18.7 Reader.Read does not set a limit on the maximum size of file headers. A maliciously crafted archive could cause Read to allocate unbounded amounts of memory, potentially causing resource exhaustion or panics. After fix, Reader.Read limits the maximum size of header blocks to 1 MiB.

high
go
CVE-2022-2880
Fixed in: 1.19.2, 1.18.7 28 days ago

5
Impacted versions: <1.18.7 Requests forwarded by ReverseProxy include the raw query parameters from the inbound request, including unparseable parameters rejected by net/http. This could permit query parameter smuggling when a Go proxy forwards a parameter with an unparseable value. After fix, ReverseProxy sanitizes the query parameters in the forwarded query when the outbound request\'s Form field is set after the ReverseProxy. Director function returns, indicating that the proxy has parsed the query parameters. Proxies which do not parse query parameters continue to forward the original query parameters unchanged.

high
go
CVE-2022-27664
Fixed in: 1.19.1, 1.18.6 66 days ago

6
Impacted versions: <1.18.6 In net/http in Go before 1.18.6 and 1.19.x before 1.19.1, attackers can cause a denial of service because an HTTP/2 connection can hang during closing if shutdown were preempted by a fatal error.

Hi,
We aim to do a release on Dec 8th, 2022 with those vulnerabilities solved, currently we have only some medium or below vulnerabilities related with AWS SDK that we need to patch, but I guess that all CVE you posted are solved, just in case, you can scan main tag to ensure it

Thank you for the quick response

You can learn more how we detect these on https://github.com/kedacore/keda/security/policy as well


Terragrunt checks for S3 bucket before Token expiration

When I run terragrunt plan with an expired STS token I receive the following error message:
$ terragrunt plan
...
[terragrunt] [...] 2018/05/09 09:38:18 Initializing remote state for the s3 backend
[terragrunt] [...] 2018/05/09 09:38:18 [terragrunt] [...]  Remote state S3 bucket uiuc-tech-services-as-test does not exist or you don't have permissions to access it. Would you like Terragrunt to create it? (y/n)
n
[terragrunt] 2018/05/09 09:38:21 ExpiredToken: The provided token has expired.
	status code: 400, request id: 63148D3B92835921, host id: U1iG0SOUCecHsMcvpd8KpvWtL3eZCF08kZX73xB9+w3yNmt9UYQJ2NMMXozjU+sOcrJzSasjniY=
[terragrunt] 2018/05/09 09:38:21 Unable to determine underlying exit code, so Terragrunt will exit with error code 1

Of course I expect to receive an error message but I think it is a bug that Terragrunt first does a lookup for the s3 bucket before failing. Is there anyway to perform the s3 lookup after the ExpiredToken check?
BTW I am running Terragrunt on Mac OS X 10.11.6:
$ terragrunt --version
terragrunt version v0.14.7

Terragrunt never explicitly checks the token. Making the API call to the S3 bucket is what triggers the token check error, and Terragrunt is just printing that error out for you after.

@brikis98 Why does Terragrunt prompt me to create an S3 bucket before displaying the error message? It seems the prompt should be suppressed on error.

Please note in the above example I answered No to the prompt then I received the error about an expired token.

Ah, good point, looks like the error checking is not fine grained enough. It's trying to see if your S3 bucket exists, and if not, ask if you want to create it. However, the check is probably treating all errors as "S3 bucket doesn't exist", whereas some, such as token expired, should be treated differently.

PRs to fix that welcome. Probably a matter of an extra if statement.

Fix released in https://github.com/gruntwork-io/terragrunt/releases/tag/v0.51.8


[Workflow]  Unify Docker operations into bash

Use a top docker.sh with function and bash operations replace docker operation in workflow

main branch has been updated, could you rebase?

main branch has been updated, could you rebase?

ok，quickly done

Could you click "Resolve conversation" after you address the comments so that I know it's fixed.

main branch has been updated, could you rebase?

ok，quickly done

Could you click "Resolve conversation" after you address the comments so that I know it's fixed.

it's fixed now


Persistent layout (top-level app component) supporting page by page without any workaround

This PR give a simple approach to support persistent layout and setting it page by page without any workaround.
Just use the static property to define the layout component in a single page. It will be something like:
// pages/about.js
import AppLayout from '../components/AppLayout'

export default class AboutPage extends React.Component {
  static pageLayout = AppLayout

  render () {
    return (

        about

    )
  }
}

and
// components/AppLayout.js
export default class AppLayout extends React.Component {
  render () {
    return (

App header

        {this.props.children}

    )
  }
}

If a page's layout was undefined, it will works just like original situation and won't break anything.
So you can specify the layout setting page by page, instead of a global layout.
I think this approach can resolve persistent layout problem without any pain that won't harm original page mechanism.

This can be a good idea, and it provides a way to a different layout per page instead of a global one.

This is also something nice.

It is interesting that after having #88 for over a year, two competing PRs popped up almost at the same time. May I invite you to participate in the comments to https://github.com/zeit/next.js/pull/3461#issuecomment-352631686 ?

@frol of course! I'm thinking about how to improve layout flexibility in my approach.

@tz5514 also feel free to join https://zeit.chat 👍

@timneutkens @frol Do you guys think multiple layer design for layout is good idea?
We can defined it some like this:
// components/AppLayout.js
export default class AppLayout extends React.Component {
  render () {
    return (

App Header

        {this.props.children}

    )
  }
}

// components/ContentLayout.js
import AppLayout from './AppLayout'

export default class ContentLayout extends React.Component {
  static parentLayout = AppLayout

  render () {
    return (

        {this.props.children}

    )
  }
}

// pages/about.js
import ContentLayout from '../component/ContentLayout'

export default class AboutPage extends React.Component {
  static layout = ContentLayout

  render() {
    return (

about

    )
  }
}

and the output of about page will be :

the demo PR is here: https://github.com/tz5514/next.js/pull/1

I do this because the developers usually need multiple layer for defined something shared.
If layout feature only support for single layer, the developers must wrap second level layout in Top level layer.  It will cause part of layout component no longer persistent in some case.
BTW, I really like "renderPage" approach in https://github.com/zeit/next.js/pull/3461#issuecomment-352631686
.
allow custom the renderPage function is actually a very flexible way, but it also allow developer do something cause part of layout component no longer persistent in some case.
For example
// pages/foo.js
export default class FooPage extends React.Component {
  static renderPage = ({Component, ...props}) => (
    <TopLayout>
      <SecondLayout>
        <Component {...props}/>
      </SecondLayout>
    </TopLayout>
  )
  render () {
    return (

foo

    )
  }
}

// pages/bar.js
export default class BarPage extends React.Component {
  static renderPage = ({Component, ...props}) => (
    <TopLayout>

paragraph that only shown at BarPage

      <SecondLayout>
        <Component {...props}/>
      </SecondLayout>
    </TopLayout>
  )
  render () {
    return (

bar

    )
  }
}

In this case, when you routing to BarPage from FooPage, the SecondLayout will be no longer persistent.
On the contrary, we can do this case in my approach by something like:
export default class TopLayout extends React.Component {
  render () {
    return (

        {(this.props.url.pathname == '/about') && (

paragraph that only shown at BarPage

        )}
        {this.props.children}

    )
  }
}

Then SecondLayout can still keep persistent when we do routing to BarPage from FooPage.

There is a another AP that I I think about:
We can define fully layout chain in each page, just like:
// pages/about.js
import ContentLayout from '../component/ContentLayout'

export default class AboutPage extends React.Component {
  static layouts = [AppLayout, ContentLayout]

  render() {
    return (

about

    )
  }
}

This way's advantage is that we can replace the part of layout chain in any page without pain.
We don't need to create another Layout class to build branch of layout chain.
How do you guys think? thanks.

Allowing we custom the renderPage function is really a flexible way.
But it also cause part of layout component no longer persistent in some case (If the developer don't know that can be a trap).

Well, that is a native React reconciliation process, so this is up to the developer to keep that point in mind and that part is easily solvable by just assigning the same key to the SecondLayout. I have put a demo together:
class TopLayout extends React.Component {
  componentWillMount() {
    console.log("TopLayout will mount")
  }
  componentDidMount() {
    console.log("TopLayout did mount")
  }
  componentWillUnmount() {
    console.log("TopLayout will unmount")
  }

  render() {
    console.log("TopLayout render")
    return

TopLayout:{(new Date()).toString()}

{this.props.children}

  }
}

class SecondLayout extends React.Component {
  componentWillMount() {
    console.log("SecondLayout will mount")
  }
  componentDidMount() {
    console.log("SecondLayout did mount")
  }
  componentWillUnmount() {
    console.log("SecondLayout will unmount")
  }

  render() {
    console.log("SecondLayout render")
    return

SecondLayout:{(new Date()).toString()}

{this.props.children}

  }
}

class MyComponent extends React.Component {
  componentWillMount() {
    console.log("MyComponent will mount")
  }
  componentDidMount() {
    console.log("MyComponent did mount")
  }
  componentWillUnmount() {
    console.log("MyComponent will unmount")
  }

  render() {
    console.log("MyComponent render")
    return
{(new Date()).toString()}

  }
}

const renderPage1 = ({Component, ...props}) => {
  return (
    <TopLayout>
      <SecondLayout key="second"><Component {...props} /></SecondLayout>
    </TopLayout>
  )
}

const renderPage2 = ({Component, ...props}) => {
  return (
    <TopLayout>

render2

      <SecondLayout key="second"><Component {...props} /></SecondLayout>
    </TopLayout>
  )
}

export default class extends React.Component {
  state = {
    renderPage: renderPage1,
  }
  componentDidMount() {
    setTimeout(() => { this.setState({ renderPage: renderPage2 }) }, 5000)
  }

  render() {
    const { renderPage } = this.state
    return renderPage({Component: MyComponent})
  }
}

Once you open such a page, you will see that the components are mounted & rendered and after 5 seconds, when the renderPage1 is replaced with renderPage2, you will only see that the components were re-rendered (without remounting):
TopLayout render
SecondLayout render
MyComponent render

Without the key="second", however, you will obviously encounter the remounts:
TopLayout render
SecondLayout will mount
SecondLayout render
MyComponent will mount
MyComponent render
SecondLayout will unmount
MyComponent will unmount
MyComponent did mount
SecondLayout did mount

I think, it is devs responsibility to control React reconciliation.

@frol Thank for your commenting and explaining and you're definitely right.
But I think this layout API will be used by most of developers. So we must design a method that most of developers won't use it by wrong (Actually lots of React developers might don't know how to use "key") and keep it simple as possible.

Well, having the renderPage API you can make a HOC or a base class to bring the support of static layout property, while this is not going to work the other way around. In my opinion, given that Next.js went with bare minimal, yet flexible, API for routing enabling third-party extensions, renderPage approach should win.

@frol  Oh that is a great viewpoint for me. If we have renderPage then we can implement the my approach outside of Next.js core. That's is also great I think, thanks for discussing!

@jdeal @timneutkens @sergiodxa @arunoda How about this demo PR: https://github.com/tz5514/next.js/pull/2?
This demo only implement the renderPage approach according discussing in https://github.com/zeit/next.js/pull/3461#issuecomment-352631686.
Just like @frol's opinion, this way can make core API of Next.js stay bare minimal, yet flexible.
And that is enough for us to implement any extra features for layout outside of Next.js core.
So I already implement a sample of third-party extension for layout feature (Here)
It support the multiple layer, layout's getInitialProps, and getInitialProps's concurrent mode
so we can do something like:
// layouts/AppLayout.js
import React from 'react'
import delay from '../modules/delay'

export default class AppLayout extends React.Component {
  static async getInitialProps () {
    return {
      delay: await delay(1000)
    }
  }

  render () {
    return (

App header

        {this.props.children}

    )
  }
}

// layouts/ContentLayout.js
import AppLayout from './AppLayout'

export default class ContentLayout extends React.Component {
  static parentLayout = AppLayout
  static async getInitialProps () {
    return {
      delay: await delay(2000)
    }
  }

  render () {
    return (

        {this.props.children}

    )
  }
}

// pages/about.js
import React from 'react'
import delay from '../modules/delay'
import applyLayout from '../modules/next-layouts'
import ContentLayout from '../components/ContentLayout'

class AboutPage extends React.Component {
  static layout = ContentLayout
  static async getInitialProps () {
    return {
      delay: await delay(3000)
    }
  }

  render () {
    return (

about

    )
  }
}

export default applyLayout(AboutPage, {
  getInitialPropsMode: 'concurrent'
})

If this approach is a good practice, I think we can make this module to be a npm package that naming like "next-layout" 😄 .

@tz5514 I'm (unsurprisingly) a fan of this approach. 😄
A nice side effect for me is that I'll be able to create pages like this:
export default {
  renderPage: () => <Layout>Look ma, no component!</Layout>
};

Because it's just checking for a renderPage property, I don't need a component at all and almost get my render function like I wanted with #3461.

@arunoda @rauchg @timneutkens @sergiodxa Are you comfortable with the renderPage API proposed by @jdeal?


Get lag when zoom in map

I have 2 titlemap: 1. base map, 2. wms from my geoserver. I feel my app load too slow when zoom in map. How can i  increase performances my app? Thanks you

Is this problem fixed? I still get grey screen when zoom in. How can i fix this? Thanks you

I'm having the same problem, every time I zoom the map it 'blinks' in gray, and when I move the map there are many gray squares that remain for 1 second, and it's not a network problem.

I've got a pull request based on this branch... https://github.com/ibrierley/flutter_map/tree/improve_tiles_display  it would be interesting if you could test it, to see if it helps.

I've got a pull request based on this branch... https://github.com/ibrierley/flutter_map/tree/improve_tiles_display it would be interesting if you could test it, to see if it helps.

Can you show me how to use your branch please? Many thanks.

You could clone it from git and switch branches...it would be 'something like'...
git clone -b improve_tiles_display https://github.com/ibrierley/flutter_map.git
And then change your pubspec.yaml to point flutter_map to the new location....
flutter_map:
path: my_github_location
or it maybe better to get your pubspec.yaml to point to a specific git branch...comment out the old flutter_map part and put something like...
flutter_map:
git:
url: git://github.com/ibrierley/flutter_map.git
ref: improve_tiles_display
Then swap back when finished testing.
Or, a bit hacky, but there are just 2 files changed. Find whereever the originals are copy/backup and replace with
https://github.com/ibrierley/flutter_map/blob/improve_tiles_display/lib/src/layer/tile_layer.dart
https://github.com/ibrierley/flutter_map/blob/improve_tiles_display/lib/src/map/map.dart
I don't recommend this way as it messes with the originals, but it can be a quick hack.


backup_info_example.php don't work in 3.0.5

After creating new wallet In $backupInfo['blocktrail_public_keys'] we really have array of arrays (not instances).
Argument 1 passed to Blocktrail\SDK\Bitcoin\BIP32Key::create() must be an instance of BitWasp\Bitcoin\Key\Deterministic\HierarchicalKey, array given, called in /var/www/bit.tbot.me/vendor/blocktrail/blocktrail-sdk/src/BackupGenerator.php on line 79

As temporary solution we may unset($backupInfo['blocktrail_public_keys']); before calling BackupGenerator (in that case PDF will not contain QR-code with wallet public keys).
Dear developers, add example to wallet v3 recovery, please.

This entire SDK seems unstable and broken. It's like it's in its alpha stage.


Would you like to make your data set public？

https://github.com/InsulatorData/InsulatorDataSet   The real dataset is here.


Argo workflow abruptly terminated during workflow pod creation

Pre-requisites

[X] I have double-checked my configuration
[X] I can confirm the issues exists when I tested with :latest
[ ] I'd like to contribute the fix myself (see contributing guide)

What happened/what you expected to happen?
Argo workflow abruptly terminated during pod creation of second step of workflow.
First step completed successfully, pod did shutdown gracefully.
Version
v3.3.8
Paste a small workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
time="2022-10-16T07:01:34.463Z" level=info msg="Pod node xyz-1665903600-2446912677 initialized Pending" namespace=ns123 workflow=xyz-1665903600

time="2022-10-16T07:01:34.463Z" level=info msg="node xyz-1665903600-2446912677 phase Pending -> Skipped" namespace= ns123 workflow=xyz-1665903600

time="2022-10-16T07:01:34.463Z" level=info msg="node xyz-1665903600-2446912677 message: workflow shutdown with strategy: Terminate" namespace= ns123 workflow=xyz-1665903600

time="2022-10-16T07:01:34.463Z" level=info msg="node xyz-1665903600-2446912677 finished: 2022-10-16 07:01:34.463547456 +0000 UTC" namespace= ns123 workflow=xyz-1665903600

Logs from the workflow controller

time="2022-10-16T07:01:39.575Z" level=info   msg="cleaning up pod" action=deletePod   key=wf-namespace/wf-1665903600-start-pipeline-720630590/deletePod
time="2022-10-16T07:01:34.555Z" level=info   msg="cleaning up pod" action=deletePod   key=wf-namespace/wf-1665903600-1340600742-agent/deletePod
time="2022-10-16T07:01:34.463Z" level=info   msg="Outbound nodes of wf-1665903600 is [wf-1665903600-2446912677]"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="Outbound nodes of wf-1665903600-1290164902 is   [wf-1665903600-2446912677]" namespace=wf-namespace   workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info msg="node   wf-1665903600-3646588800 finished: 2022-10-16 07:01:34.46393086 +0000   UTC" namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="node wf-1665903600-3646588800 phase Running -> Succeeded"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="Step group node wf-1665903600-3646588800 successful"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="node wf-1665903600-1290164902 finished: 2022-10-16 07:01:34.463868448   +0000 UTC" namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="node wf-1665903600-1290164902 phase Running -> Succeeded"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="node wf-1665903600-2446912677 finished: 2022-10-16   07:01:34.463547456 +0000 UTC" namespace=wf-namespace   workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="node wf-1665903600-2446912677 message: workflow shutdown with strategy:   Terminate" namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="node wf-1665903600-2446912677 phase Pending -> Skipped"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="Pod node wf-1665903600-2446912677 initialized Pending"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.463Z" level=info   msg="Retry node wf-1665903600-1290164902 initialized Running"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="SG Outbound nodes of wf-1665903600-2257844787 are   [wf-1665903600-720630590]" namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="StepGroup node wf-1665903600-3646588800 initialized Running"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="node wf-1665903600-3713552181 finished: 2022-10-16   07:01:34.462365728 +0000 UTC" namespace=wf-namespace   workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="node wf-1665903600-3713552181 phase Running -> Succeeded"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="Step group node wf-1665903600-3713552181 successful" namespace=wf-namespace   workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="node wf-1665903600-2257844787 finished: 2022-10-16   07:01:34.462307718 +0000 UTC" namespace=wf-namespace   workflow=wf-1665903600
time="2022-10-16T07:01:34.462Z" level=info   msg="node wf-1665903600-2257844787 phase Running -> Succeeded"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:01:34.461Z" level=info   msg="node changed" new.message= new.phase=Succeeded   new.progress=0/1 nodeID=wf-1665903600-720630590 old.message=   old.phase=Pending old.progress=0/1
time="2022-10-16T07:00:54.336Z" level=info   msg="Workflow step group node wf-1665903600-3713552181 not yet   completed" namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:54.336Z" level=info   msg="Pod node wf-1665903600-720630590 initialized Pending"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:54.335Z" level=info   msg="Retry node wf-1665903600-2257844787 initialized Running"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:54.335Z" level=info   msg="StepGroup node wf-1665903600-3713552181 initialized Running"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:12.467Z" level=info   msg="Workflow step group node wf-1665903600-3713552181 not yet   completed" namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:12.467Z" level=info   msg="Created pod: wf-1665903600[0].start(0) (wf-1665903600-start-pipeline-720630590)"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:12.384Z" level=info   msg="Pod node wf-1665903600-720630590 initialized Pending"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:12.384Z" level=info   msg="Retry node wf-1665903600-2257844787 initialized Running"   namespace=wf-namespace workflow=wf-1665903600
time="2022-10-16T07:00:12.384Z" level=info   msg="StepGroup node wf-1665903600-3713552181 initialized Running"   namespace=wf-namespace workflow=wf-1665903600

Logs from in your workflow's wait container
kubectl logs -n argo -c wait -l workflows.argoproj.io/workflow=${workflow},workflow.argoproj.io/phase!=Succeeded

Can you add the spec of the Workflow here (if you're worried about something being sensitive you can modify)? Also, generally the longer the log posted is, the more helpful it can be. Thanks!

Can you add the spec of the Workflow here (if you're worried about something being sensitive you can modify)? Also, generally the longer the log posted is, the more helpful it can be. Thanks!

done

We've seen this happening with a workflow that specified the field shutdown: Terminate at creation time, like this:
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: shutdown-test-
  namespace: default
spec:
  ....
  shutdown: Terminate
  ....

Please correct me if I'm wrong, but it seems to me that such workflows have no chance of actually starting any pods, because the controller will shut them down very fast. If that is correct, maybe the such workflows should be rejected at submission time? At the very least, the workflow controller could produce more useful diagnostics.
WDYT?

@terrytangyuan do you have an opinion on whether the workflow controller could or should reject workflows that specify shutdown: Terminate in their manifest?
I can see this happening during copy-and-paste errors when users are trying to "manually resubmit" a workflow by taking the output of kubectl get as a template.

@uday-mandava where workflow spec

Can you share details as outlined in the issue template?


no_allow lint rule

As explained in https://github.com/gravitational/predicate-lang/issues/51, a policy baseline is a good starting point to build a minimal linter.
no_allow rule lets policy administrator to forbid certain rules to be added to allow policy. When a new policy is created with matching forbidden rule, running linter will verify the rule using Predicate.equivalent and report back with details. Only allow rule will evaluated.

Implemented with https://github.com/gravitational/predicate-lang/pull/61


Remove Linux 4.9

The Linux 4.9 LTS release will be EOL after 2023/01 and I hope we can remove it before the 22.11 release, so we don't carry it around until then.
via https://endoflife.date/linux
cc kernel maintainer team
@TredwellGit @Ma27 @NeQuissimus @alyssais

Thanks for the heads-up. I'd be fine with doing the removal right now (considering that it's LTS and having that one removed on stable may be an unpleasant surprise), but FWIW: we usually drop kernel releases when they get EOLed (also from stable branches), otherwise we wouldn't be able to provide non-LTS kernels on any stable branch anyways.


Email+password Provider with BuiltInUI doesn't handle non-existing accounts gracefully

EdgeDB Version:

Local(dev): 5.3+cc878d8
Production: 5.2+ddd8aa4

EdgeDB CLI Version: 5.1.0+fdf5320 (local only)
OS Version:

Local(dev): Windows 11 Enterprise 23H2 22631.3296 (Microsoft Windows NT 10.0.22631.0 x64)
Production: Unknown (the one that comes with the Free tier of EdgeDB Cloud)

Setup:
My EdgeDB client (with the Auth extention) is setup in a Next.js TypeScript project (using v0.3.1 of the @edgedb/auth-nextjs package) with the baseUrl configured with the value of https://www.example.com. I have a landing page with signin button wrapped in a Link component <Link href={auth.getBuiltinUIUrl()}>...</Link>
Steps to Reproduce:
Production:

Click the button, fill in (known non-existing account credentials) email<EMAIL_ADDRESS>+ password (foobar) that do not exist, and press the big Sign In button at the bottom
It redirects to the url:
<EMAIL_ADDRESS>and the body result being:
{"error": {"message": "Missing \"challenge\" in register request", "type": "InvalidData"}}
(note: there is a challenge in the url before clicking the Sign In in the url search parameters)

When I do the above steps exactly the same but on local(dev), the result is handled gracefully within the builtInUI
Redirects to: http://localhost:10701/db/main/ext/auth/ui/signin
and shows an error in above the sign in form:

The work-around that fixes it:
On production, before entering the email + password, I change the part of the url from .../db/edgedb/ext/auth/... to .../db/main/ext/auth/... so the url on production is instead of:
https://<removed>.edgedb.cloud:5656/db/edgedb/ext/auth/ui/signin?challenge=EyO5lgr4...<removed>
it's this:
https://<removed>.edgedb.cloud:5656/db/main/ext/auth/ui/signin?challenge=EyO5lgr4...<removed>
Then it handles the known non-existing account gracefully with the same error as on local.
I also noticed the production instance auth settings gives this as an example:

So the auth.getBuiltinUIUrl() on production is actually redirecting to somewhere else than as stated in the example above.
The extra weird part: after doing this once in a browser session, this now keeps working even with the .../db/edgedb/ext/auth... in the url! Opening a new private window, breaks it again until the work-around is executed again.
I'm confused as to why this is happening, locally vs on production.
Doesn't look like I doing something wrong, but I could've miss-configured something somewhere?
I've tried to explain my issue as best I can, if you have questions, please let me know.

I've been looking a bit deeper into this issue.
And it seems like that on production the path for the edgedb-pkce-challenge cookie is different to what is being redirected to when clicking the Sign In/Up button of the built-in UI.

This explains why the workaround mentioned above works in the same session, because the edgedb-pcke-challenge cookie is set with the correct path, and therefor the signin/up error handling works correctly because it can actually read the value of the cookie.
Then I dove into the code, but I can't figure out yet why the value of path here is different on production vs on local. So I started following the code trail from this point (in master branch):

in shared.client.ts @ auth.getBuiltinUISignUpUrl()
to shared.ts @ pkceSession.getHostedUISignupUrl()
to core.ts @ Auth.create(client) where the value of connectConfig.database is what we're interested in. Where the connectConfig is initialized as await (client as any).pool._getNormalizedConnectConfig()
to conUtils.ts @ which has a get function called database
the value should be this.database or this.branch or has a fallback edgedb, and that's how this is occurring

As to why it's using the fallback value edgedb in production, but not in dev, I don't know 😄  (yet 🤓)

@n2k3
It sounds like you created your local dev database on a version prior to v5 (which introduced branches and changed the default from edgedb to main) but the production one is a v5 instance. Assuming your local dev is a 5.x instance, you can "move" your database to main for parity using:
edgedb branch switch --create --copy-data main

And then once you're sure everything is good on main, you can drop the old edgedb branch:
edgedb branch drop edgedb

Thank you for taking the time to think this through, but unfortunately this is not correct.
Both local and production have only ever been v5.x, I had hoped upgrading production instance from 5.2+ddd8aa4 to 5.4+1758a80 would solve this issue (i had to rename the instance anyway, so I didn't mind). Local has been 5.3+cc878d8 which I upgraded to 5.4+867a505
Also locally it always works, it's production that resolves the url containing edgedb (the fallback value) instead of main (the current branch). I've only had main locally and on production, I deploy everything through Vercel connected to my GitHub with the EdgeDB cloud integration, and everything is handled properly (this is awesome DX!), EdgeDB cloud is also connected to my GitHub for branch support (I've only recently enabled this, but I haven't used it yet).
As I understand the issue, the fact that on the cloud instance the Auth Admin config page displays this:

Means that the ext::auth is correctly setup, but somewhere in my code (the createClient or the createAuth() of the production instance) is wrong, which causes the resolving value of the database get function somehow has no database and branch value, and there for falls back to edgedb.
According to these docs there's no need to configure anything for the client, it should detect the database/branch itself. Or that there's a bug in the code somewhere 😄

https://github.com/edgedb/edgedb-js/blob/40bb9d952f14bf56d18e889d82c61e6aec97fadc/packages/auth-core/src/core.ts#L33-L44
The issue is here.
If no branch is set, the baseURL will use "edgedb".


Request for Release of TextDiff Code

Dear @chunmeifeng,
The work is very impressive. May I know when the code will be released?
Thank you! 😊

Hi, I will let you know when I release it
Utkarsh Yashwant Tambe @.***> 于2024年7月25日周四 16:24写道：

Dear @chunmeifeng https://github.com/chunmeifeng,
The work is very impressive. May I know when the code will be released?
Thank you!
—
Reply to this email directly, view it on GitHub
https://github.com/chunmeifeng/TextDiff/issues/1, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR75XN3H23NNGOIYZ442S6TZOCY3FAVCNFSM6AAAAABLOA5PHSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGQZDSMZUHAYTSNI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Dear @chunmeifeng, The work is very impressive. May I know when the code will be released? Thank you! 😊

Hi the code is released


Ngrx-data vs ngrx/entities

This issue is for a: (mark with an x)
- [ ] bug report -> please search issues before submitting
- [ ] feature request
- [x] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Question
Hi John,
I am reading a lot about ngrx and the need to reduce boilerplate code and manage collections of entities. To my understanding, which isn't all that much (yet), I see both ngrx/entities and ngrx-data try to solve this elegantly. I have trouble choosing or comprehending the whole mix of both.
Can you elaborate on the differences, similarities and relation between them?
I also read that ngrx-data might become official part of ngrx/platform. Which would contradict my view that they are just two libraries trying to solve the same puzzle.
Thanks

If you read the documentation you'll see that ngrx-data reduces the CRUD (https://github.com/johnpapa/angular-ngrx-data).
In ngrx/entities ( https://medium.com/ngrx/introducing-ngrx-entity-598176456e15) you still have to create your own action, reducer, selector, effect, or HTTP dataservice.

Hey jberall, thanks for your answer and accompanying links. I also noticed that ngrx-data uses ngrx-effects and extends ngrx to effectively reduce boilerplate even more. I think it's safe to say I can close this issue.


add support for embedding summary

[ ] Add support using arma

[ ] Write tutorials/examples

[ ] Add suport of 1-d arma vec

[ ] Add test

Hey what is the problem you are facing?

Also what about the histogram and pr curve support?

Hey what is the problem you are facing?

unable to save file

Hey, are you able to resolve the file saving error? If no, can you send me the screenshot of the error you are facing? Also please elaborate the error you are facing.

Hi, I have left some comments. I saw that the unit tests are missing I think maybe because you are unable to save .tsv files let me know if I am going wrong about the error.
Yes you are right here, I will try debugging it using gdb

After that I will write unit test

Hey @jeffin143, I think only sparse matrices can be saved in .tsv file format. So can we use sparse matrix instead of normal matrix?
https://github.com/mlpack/mlpack/blob/master/src/mlpack/core/data/save.hpp#L63

Hi @jeffin143,
Okay the issue I am able to resolve the issue. Here is the snippet which worked.
template<typename Filewriter>
void SummaryWriter<Filewriter>::Embedding(
      const std::string& tensorName,
      const arma::mat& tensordata,
      const std::vector<std::string> &metadata,
      Filewriter& fw,
      std::string tensordataPath,
      std::string metadataPath)
{
  // Deafult file name
  if(tensordataPath == "")
    tensordataPath = "tensor.tsv";
  if(metadataPath == "")
    metadataPath = "meta.tsv";

  std::ofstream tensordataFile(tensordataPath);
  if (!tensordataFile.is_open())
  {
    throw std::runtime_error("failed to open tensordata file " +
    tensordataPath);
  }

  for (size_t i = 0; i < tensordata.n_cols; i++)
  {
    for (size_t j = 0; j < tensordata.n_rows; j++)
    {
      tensordataFile << tensordata(j, i);
      if (j != tensordata.n_rows - 1)
      {
        tensordataFile << "\t";
      }
    }
    tensordataFile << std::endl;
  }

  tensordataFile.close();

  if (metadata.size() > 0)
  {
    if (metadata.size() != tensordata.n_cols)
    {
        throw std::runtime_error("tensor size != metadata size");
    }
    std::ofstream metadataFile(metadataPath);
    if (!metadataFile.is_open())
    {
        throw std::runtime_error("failed to open metadata file " +
        metadataPath);
    }
    for (const std::string& meta : metadata)
      metadataFile << meta << std::endl;
    metadataFile.close();
  }
  std::vector<size_t> tensor_shape = {tensordata.n_cols, tensordata.n_rows};

  // default path should be relative to logdir.
  if(tensordataPath == "tensor.tsv")
    tensordataPath = "../tensor.tsv";
  if(metadataPath == "meta.tsv")
    metadataPath = "../meta.tsv";
  Embedding(tensorName, tensordataPath,fw, metadataPath, tensor_shape);
}

mlpack::Load() function loaded the .tsv file with dimension with 16 * 7928 so I have written the code in above manner. And creating a '.tsv' file with \t works.

if (j != tensordata.n_rows - 1)

It was this line I was ending each line with \t and thus the error

if (j != tensordata.n_rows - 1)

It was this line I was ending each line with \t and thus the error

Yeah I also got that error. Added that line after debugging.
Just some stuff which I would like to suggest.
I am of the view that the default location for saving the tensordata and metadata (.tsv files) should be the logging directory itself. It leads to better file management preventing overwrite of files by different FileWritter objects. Also it makes sure that the event files are always able to get those files.
If a user provides location of these files. Then make sure that you always add the absolute path in the projector_config.txt file. It would avoid confusion and errors regarding file location.
Next is about handling the dimensions. Just add a comment that we save the matrices in way that every row is a point and every column is a dimension. So that if any user wants to save in transposed way then they do it on their own before passing the matrix.

Hi @jeffin143,
Looks like you forgot to update the readme.md file please update it. Also make sure to add about the text support in the readme.md. It's also missing.


Need suggestion text for Schedule field in Cronjob

Issue:
In Cronjob: Create, there is a schedule field but I have no idea what format I should write that in.  Suggestion text would be nice.

In ember UI, we were able to have an text in the box and based on how you changed it, it would change what it interpreted:
It started with 0 * * * *, but if the value of the text box changed, the helper text below it would change. It would be nice if we could this same type of behavior in.

@deniseschannon That already exists (though maybe hard to read); what's missing is a placeholder.

Ah! that makes it much easier.
Let's add in 0 * * * * as the default text @mantis-toboggan-md

Fixed


Jupyter notebooks can’t get data at ../../data

When I run jupyter on a notebook in the notebooks folder, it won’t let me access the data in the ../data folder. How is this usually done?

Hi @mraarone, when you file an issue please include what you tried and the actual errors that you see.
Depending on what you're doing and how you're accessing files, you may need to run the jupyter server from the project root directory rather than the notebook folder.
Programmatically, your python code will be able to access anything your user has access to. For example:

Jupyter cannot serve any content above the directory it is started in (e.g., see this issue https://github.com/jupyter/notebook/issues/230 )


Monorepo

I still got a src folder outside the packages. Is this intended ?

guess its not intended


Add Contributing.md file

I suggest adding a contributing.md, file to the project. It will have detailed steps which will help new users who want to contribute to this project. You can assign this task to me, and I will create the file.

Go ahead! I just assigned you to it 👍🏽

Hi @RealStr1ke ,
I have added the required file in #4, let me know if it looks good to you are any changes are needed?


Update Docker.md

Corrected typos in Docker documentation.

:+1:

thanks, those changes should have been applied to PHPDoc of corresponding classes, so I'm rejecting this PR but I put fixes into them.


[move-prover][refactoring] Implement modifies for V2 and port tests.

This implements the modifies clause in specifications for the new compilation scheme. The related tests are ported over to V2.
Modifies is handled by introducing a new expression CanModify<R<T>>(addr) which is asserted at the appropriate points in the bytecode. In contrast to the old implementation, those assertions are only generated for the top-level verification entry, assuming called functions are already verified. For opaque calls, the instruction modifies global<R<T>>(addr) is translated to havoc the memory at the dedicated addr, using the same trick M' == M[addr := M'[addr]] as in the old implementation.
In the new translation scheme, it appears we do not need to pass the caller-domain parameter any longer, as we are checking modifies at caller side.
Motivation
Prover simplification.
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
Ported tests.
Related PRs
NA

This is diffbased on the not yet merged PR #7372 . Please only look at the 2nd commit for this PR, otherwise at the other PR.

This is diffbased on the not yet merged PR #7372 . Please only look at the 2nd commit for this PR, otherwise at the other PR.

/land

/land


How to model Chinese characters

Hi,
Nice work!
I'm curious about how to extend DMfont to scripts like Chinese chars, which the number of compositional sub-glyphs for different chars differs. For example, “虾” can be decomposed as "⿰虫下", where are two sub-glyphs. However, the composition of “赢” looks like "⿱吂⿲月贝凡", which are four sub-glyphs.
As I understood, the decoder in DMFont can only model a fixed number of sub-glyphs(3 in the paper). Could you plz give some idea about how to extend the model to Chinese or how to design the decomposition rule of Chinese?
Thanks,
James

Hi,
Thanks to interest about our work.
Recently, we published LF-Font, which is the extension to Chinese chars. We simply average the features to handle the variable number of sub-glyphs. We also proposed conditional style encoder, factorization module, and content encoder in the extension.
Please refer to paper and code for more details.

Awesome! Thanks for your reply.


Update Visualization v3.0.0

As the tutorial here actually only depends on Prometheus metrics, and AFAIK these have not changed, there is no updated needed. I updated text a bit to make this a bit more clear.
Closes #891

@jimmychu0807 this should be good to go once #911 lands


Layout works when window is resized, otherwise sometimes it doesn't

Hi @aullman,
I got the library to work but run into this problem where sometimes when I enter the page with video, the video appears smaller on the top-left part of the window, only upon resizing the window that the video element fills up the screen. Why's that?
These are the options I'm using:

  let opts = {
      maxRatio: 3 / 2,
     minRatio:  9 / 16,
     fixedRatio:  false,
      scaleLastRow: true,
      maxWidth: Infinity,        // The maximum width of the elements
      maxHeight: Infinity,       // The maximum height of the elements
      smallMaxWidth: Infinity,   // The maximum width of the small elements
      smallMaxHeight: Infinity,  // The maximum height of the small elements
      bigMaxWidth: Infinity,     // The maximum width of the big elements
      bigMaxHeight: Infinity,
      alignItems: 'center',
      bigClass: 'OT_big',
      smallClass:'OT_small',
      bigPercentage: 0.8,
      bigFixedRatio: false,
      bigMaxRatio: 3 / 2,
      bigMinRatio: 9 / 16,
      bigFirst:  true,
      animate: true
  }

This is how I'm calling "layout". With this I expect that when the page opens with a video it fills the screen immediately.
  let layoutContainer = document.getElementById("layout");
  let layout = initLayoutContainer(layoutContainer, opts).layout;
  layout();

  var resizeTimeout;
  window.onresize = function() {
    clearTimeout(resizeTimeout);
    resizeTimeout = setTimeout(function () {
      layout();
    }, 20);
  };

Also, I see classes like "OT_bar OT_edge-bar-item OT_mode-auto" in the demo app where are they coming from? And why don't I see the "ot-layout" class that the library is supposed to add?

You will also need to call layout again every time a new participant is added to the room and you subscribe to them.
https://github.com/aullman/opentok-layout-js#using-in-an-opentok-application


add copy_from_slice to lib for now

With hacspec/hacspec-v2#212 the stealing issues are gone and with this change the entire spec extracts.

@karthikbhargavan @xvzcf this needs a review ...

With https://github.com/hacspec/hacspec-v2/pull/214 this isn't needed anymore


fix gh action from api change.

Signed-off-by: Scott Nichols<EMAIL_ADDRESS>

Super minor release process change needed for GH actions to work.


Error when logging in

When logging in with OpenID I get an error and the page won't load:

This bug was probably introduced in #88. Maybe someone from @hpi-swt2/rh21 knows more about this?

In my opinion #88 isn't really causing that. Maybe you had an old state for user data in your local DB before the prior user model (with username & email and e.g. a profile picture) was split back into a User and a Person model (with #85).
Unfortunately, running the migrations on the DB doesn't really fix the issue. Locally i dropped my old Databases and created fresh ones and now it is working, but i feel like that is not really a solution.
Mabye @bewee could enlighten as a bit more about the separation between user and person data?

I also don't have any search results when i try to search for example myself. I'm not sure on how to get the database "filled"

We had to separate Person and User into separate classes, because we may want to find some important persons like Hasso in the search although they probably won't ever log into our app.
Whenever you login with your account, a new person will be automatically added for you. However, the migration did not apply this to existing datasets. Thus, you have a user with no associated person, which is prohibited.
We suggest simply dropping and recreating the database.
rails db:drop
rails db:migrate

I also don't have any search results when i try to search for example myself. I'm not sure on how to get the database "filled"

Not sure whether this works, but we often had luck solving problems by clearing the webpack cache
./bin/webpack --cache

Does this help?


arch: Customize the typedef of size_t instead of intptr_t

to ensure size_t same as toolchain definition in the first
place and rename CXX_NEWLONG to ARCH_SIZET_LONG.
The change also check whether SIZE_TYPE exist before
CONFIG_ARCH_SIZET_LONG so our definition can align with
toolchain(gcc/clang) definition automatically.
Change-Id: I3d9ba7d27edd87c496aeea70ca2cde25b5f2141a
Signed-off-by: Xiang Xiao<EMAIL_ADDRESS>

This patch has the following improvement:
1.typedef size_t to different type base on CONFIG_ARCH_SIZET_LONG, so we don't need hack operator new overload function. This is important because it avoid us to modify the 3rd party c++ library code.
2.typdef size_t to SIZE_TYPE if this macro exist. some compiler(gcc/clang at least) define this macro to match their size_t type. So we don't need change CONFIG_ARCH_SIZET_LONG in the most case.

Here has more background info:
https://github.com/apache/incubator-nuttx/pull/131


Use protobuf for team-facing API serialization

Similar to #230

Although a useful cleanup, not enough headcount at present.


trouble installing the plugin

i have version 6 of kicad
i have installed both though the plugin manager and file system
but the plugin wont showup
can u please help me?

Don't install both through plugin manager and file system. In v6 plugin manager is the recommended option.
So first, delete any files you manually copied.
Then restart kicad and check if the plugin shows up in pcb editor.
If it doesn't then go to action plugin preferences in pcb editor

If you have issues with plugin loading there will be a button with yellow warning sign at the bottom. Click it and show me a screenshot (or copy paste text) of that window.

Thanks for helping man
It still isn’t working
Here’s a screenshot

Judging by the scrollbar there's a lot of errors, please copy paste whole text.
Also what is exact os version and kicad version? Is this M1 mac? Does the scripting console open without errors? It's the right most button on the top toolbar of the pcb editor.

https://pastebin.com/BPupiXnY

This is KiCad issue, similar one was reported earlier https://gitlab.com/kicad/code/kicad/-/issues/8622#note_689417072
There is also a workaround mentioned there to increase ulimit to > 256 but I don't have a mac and can't provide exact instructions so you'll have to figure that out yourself.

Thanks for your help

I got a response on the bug I linked above, this may also be caused with some notarization issues that should be fixed in 6.0.4. Try that release

Ok thanks


Is there any way to animate the items that are after the removed item

I want when 2 is removed from list 3 should come backward slowly .. can this be achieved?
i was trying to use a set (named delSet) to store which index of new list should animate .. eg old list = [1,2,3] new list = [1,3] as 2 item is deleted so in new list the index 1 or item 3 should animate backward to take 2s place
https://github.com/wwwdata/implicitly_animated_reorderable_list/assets/37494973/7393e2cd-0d8a-450b-8eec-fadd41a82621
This is my Code
import 'package:animated_list_plus/animated_list_plus.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Page(),
      ),
    );
  }
}

class Page extends StatefulWidget {
  @override
  State<StatefulWidget> createState() => _PageState();
}

class _PageState extends State<Page> with SingleTickerProviderStateMixin {
  List<int> items = [1, 2, 3];
  Set<int> delSet = {};

  @override
  Widget build(BuildContext context) {
    return Column(
      children: [
        Expanded(
          child: Center(
            child: SizedBox(
              height: 126,
              child: ImplicitlyAnimatedList<int>(
                physics: const NeverScrollableScrollPhysics(),
                scrollDirection: Axis.horizontal,
                items: items,
                areItemsTheSame: (a, b) => a == b,
                itemBuilder: (context, animation, item, index) {
                  return delSet.contains(index)
                      ? SlideTransition(
                          position: Tween<Offset>(
                            begin: const Offset(1.0, 0.0),
                            end: const Offset(0.0, 0.0),
                          ).animate(
                            CurvedAnimation(parent: animation, curve: Curves.linear),
                          ),
                          child: Container(
                            width: 50,
                            decoration: BoxDecoration(
                              border: Border.all(color: Colors.black),
                            ),
                            child: Center(
                              child: Text('$item'),
                            ),
                          ),
                        )
                      : SlideTransition(
                          position: Tween<Offset>(
                            begin: const Offset(-1.0, 0.0),
                            end: const Offset(0.0, 0.0),
                          ).animate(
                            CurvedAnimation(parent: animation, curve: Curves.linear),
                          ),
                          child: Container(
                            width: 50,
                            decoration: BoxDecoration(
                              border: Border.all(color: Colors.black),
                            ),
                            child: Center(
                              child: Text('$item'),
                            ),
                          ),
                        );
                },
                removeItemBuilder: (context, animation, item) {
                  return FadeTransition(
                    opacity: animation,
                    child: Container(
                      width: 50,
                      decoration: BoxDecoration(
                        border: Border.all(color: Colors.black),
                      ),
                      child: Center(
                        child: Text('$item'),
                      ),
                    ),
                  );
                },
              ),
            ),
          ),
        ),
        ElevatedButton(
          onPressed: () {
            setState(() {
              items = [1,3];
              delSet = {1};
            });
          },
          child: Text('Test'),
        ),
        ElevatedButton(
          onPressed: () {
            setState(() {
              items = [1, 2, 3];
              delSet = {};
            });
          },
          child: Text('Reset'),
        ),
      ],
    );
  }
}

Why do you use a SlideTransition? When your builder runs, it will immediately reserve all the space it needs and then animate the slide in from the left, which also looks broken because it starts on top of item 1. Instead, you should use a SizeTransition or even the SizeFadeTransition from the example which does both.


Fix QUnit tests in iOS browsers (close #113)

/cc @inikulin @AndreyBelym

\r-

FPR

\r-

Doesn't seems like an accidental fail. On test doesn't work in iOS browsers

@testcafe-build-bot \retest

Argh, tests fails only with @testcafe-build-bot When I try to reproduce this with manual session on SauceLabs thay absolutely stable.
Don't look at this I'll do disgusting things to stable it)
Wait for my FPR comment

@testcafe-build-bot \retest

FPR

Sorry, I forgot about approved by Vasily comment. Now it's FPR

@testcafe-build-bot \retest

@testcafe-build-bot \retest

FPR again

lgtm

lgtm

lgtm


FlatMapLatest example has same output as for FlatMap but shouldn't

The example is:
  var controller = new StreamController();
  var latest = controller.stream.transform(new FlatMapLatest((value) => new Stream.fromIterable([value + 1])));

  latest.listen(print);

  controller.add(1);
  controller.add(2); // Prints: 3

Running this sample code actually prints both 2 and 3, just like for FlatMap. Is this due to a bug in FlatMapLatest or bad sample code?
I'm running Dart 1.18.0 under macOS 10.11.

I noted a similar issue with RxJS 5 switchMap, see https://github.com/ReactiveX/rxjs/issues/1855. In that case too adding a delay "adjusted" the behavior too (as is done in #36). Maybe it is a question of event scheduling here as well, but I figured it might be easier to just tweak the example.


Improve response cleaning

User description
The prompt for the model starts with a code block (```). When testing watsonx models (llama and granite), they would generate the closing block in the response.

PR Type
enhancement

Description

Improved the response_text cleaning logic in the load_yaml function to handle both leading and trailing code block markers more effectively.
Replaced rstrip('')withremovesuffix("```")` for more precise suffix removal.
Added additional strip() calls to ensure all leading and trailing whitespaces are removed.

Changes walkthrough 📝
Relevant filesEnhancement

utils.pyEnhance response text cleaning in `load_yaml` function

pr_agent/algo/utils.py
Improved the response_text cleaning logic in load_yaml function.  Replaced rstrip('') with removesuffix("").  Added additional strip() calls for better whitespace handling.

+1/-1

💡 PR-Agent usage:
Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

I can remove the strip after, but think it is okay if there is whitespace between the code block (```) and the end of the actual yaml

@mrT23 fixed - the idea is now to remove all trailing whitespace at the end of the response (if any), and then remove the end of the yaml code block. Let me know what you think - thanks!


Grid: drop feedback can stay sticky in some cases

@bpasero I am not able to reproduce this issue with
Version: 1.25.0
Commit: Unknown
Date: Unknown
Electron: 2.0.2
Chrome: 61.0.3163.100
Node.js: 8.9.3
V8: 6.1.534.41
Architecture: x64

@mvgadagi only reproduces when you have an editor split downside of the active one, not to the right.

Might be macOS specific.


Implement rev() method on string

Implements #1983.

Looks like FromIterator<&str> is missing in ecow.

Thanks!


Fix: Don't coerce image names

The image names generated locally can align with the directory structure and have a tag of :local
For example, images will end up tagged like:
services/postgres:local
dev/python:local
dev/000-base:local
This makes things much more clear.

Fixed and merged in https://github.com/frison/_slash/commit/800cbbd340cbf599b1b13750488a59c51d6770b2


{AKS} Refactor 6th part of the update sub-command in acs module

Description

Refactor update disable/enable local account (PR #19680)
Add support for --os-sku in decorator pattern (PR #19374)

Unit Test Coverage:

"covered_lines": 1374,
"num_statements": 1401,
"percent_covered": 98.0728051391863,
"missing_lines": 27,
"excluded_lines": 0

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

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

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

AKS


Tailwind CSS Framework Configuration

Issue #111 : CSS Configuration( install tailwind css )
The React application was configured to work with Tailwind CSS framework to help in the implementation of designs.
The node_modules/ directory was also deleted as it wasn't supposed to be pushed to the repo initially. The directory has been added to the .gitignore file.
Test link: https://sales.zuri.chat
Slack username: Mikaelson

Please check the conflicting files @shodown96

pull request merged into the dev branch

Unclear what was done here

The Tailwind CSS framework was configured to be used in the react application, The text currently seen is now able to use Tailwind classes.


move to server-side pagination for activities

Client code for https://github.com/wraithgar/api.lift.zone/pull/1

Closes https://github.com/wraithgar/lift.zone/issues/2


create a dummy branch for testing the new SimulationStack pipeline co…

…nfig
Description
Please include a summary of the change and which issue is fixed or which feature is added.

[ ] Issue 1 fixed
[ ] Issue 2 fixed
[ ] Feature 1 added
[ ] Feature 2 added

Fixes # (issue)
How to test this?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce if there is no integration test added with this PR. Please also list any relevant details for your test configuration
cmake ..
make -j8
nrnivmodl mod
./bin/nrnivmodl-core mod
./x86_64/special script.py
./x86_64/special-core --tstop=10 --datpath=coredat

Test System

OS: [e.g. Ubuntu 20.04]
Compiler: [e.g. PGI 20.9]
Version: [e.g. master branch]
Backend: [e.g. CPU]

Use certain branches for the SimulationStack CI
CI_BRANCHES:NEURON_BRANCH=master,

please retest

@WeinaJi : this could be closed & branch could be deleted now?

@WeinaJi : this could be closed & branch could be deleted now?

yes, this is no more needed. I will close it.


CMake config error with ECAL_THIRDPARTY_BUILD_TINYXML2=OFF

The following error occurs after trying to build eCAL with ECAL_THIRDPARTY_BUILD_TINYXML2=OFF with the commit cfdfcd2a852bfb2dcc934d40f99209026bc955f7. In previous versions, it used to work fine. The workaround is to set ECAL_THIRDPARTY_BUILD_TINYXML2 to on or leave it by default.
CMake Error at CMakeLists.txt:284 (_find_package):
  By not providing "Findtinyxml2.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "tinyxml2",
  but CMake did not find one.

tinyxml2Config.cmake
tinyxml2-config.cmake

  Add the installation prefix of "tinyxml2" to CMAKE_PREFIX_PATH or set
 "tinyxml2_DIR" to a directory containing one of the above files.  If
 "tinyxml2" provides a separate development package or SDK, be sure it has
 been installed.
Call Stack (most recent call first):
  app/sys/sys_core/CMakeLists.txt:24 (find_package)

-- Configuring incomplete, errors occurred!

Hello @pablorcum, since the last minor version update of ecal, there is a new component  called ecal_sys which requires tinyxml and is also part of the QNX build (if BUILD_APPS=ON). Because of this circumstance please leave ECAL_THIRDPARTY_BUILD_TINYXML2 on enabled as it is by default.

Hello @pablorcum, since the last minor version update of ecal, there is a new component  called ecal_sys which requires tinyxml and is also part of the QNX build (if BUILD_APPS=ON). Because of this circumstance please leave ECAL_THIRDPARTY_BUILD_TINYXML2 on enabled as it is by default.


Extend default dupemap timeout to 60s

Fixes #1127

Codecov Report

Merging #1128 (29cb408) into master (047c891) will decrease coverage by 10.27%.
The diff coverage is 50.99%.

@@             Coverage Diff             @@
##           master    #1128       +/-   ##
===========================================
- Coverage   59.57%   49.29%   -10.28%
===========================================
  Files         108      147       +39
  Lines        5803     8768     +2965
===========================================
+ Hits         3457     4322      +865
- Misses       1823     3824     +2001
- Partials      523      622       +99

Impacted Files
Coverage Δ

pkg/config/consts.go
0.00% <0.00%> (ø)

pkg/config/genesis/config.go
0.00% <0.00%> (ø)

pkg/core/chain/legacy.go
0.00% <0.00%> (ø)

...kg/core/consensus/blockgenerator/candidate/mock.go
0.00% <0.00%> (ø)

pkg/core/consensus/comms.go
0.00% <0.00%> (ø)

pkg/core/consensus/fixtures.go
0.00% <0.00%> (ø)

pkg/core/chain/mock.go
9.09% <9.09%> (ø)

pkg/core/chain/loader.go
17.59% <18.42%> (-37.10%)
:arrow_down:

pkg/core/chain/chain.go
48.93% <49.30%> (-6.55%)
:arrow_down:

pkg/core/consensus/agreement/handler.go
54.11% <51.61%> (-11.27%)
:arrow_down:

... and 201 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 e5feeb6...29cb408. Read the comment docs.


Added initial caps for gender value

Added Initial letter caps for patient's gender

Looks good, merging.


:saved changed?

Why looks :saved folder now different in Windows?
left pic -> new style
right pic -> old style

After I started the new pre release the new :saved folder was created. It's look bold in the explorer.

The names of directories Instaloader creates get a special treatment on Windows, because several characters are illegal in Windows path names, such as the regular colon (:). Version 4.4.3 introduced a series of improvements to the path name handling on Windows via #631, one of which was the change of the colon replacement character to be more consistent with the other chosen characters.

thx


CLI user

Minor adjustments
This PR addresses added by @pwalczysko post merged

Builds fine and looks good, both changes.
Ready to merge