Catlinks at the bottom of all the content and fix the overlapped footer

Trying to solve #9, I think one solution might be to use this little snippet (first commit):
#catlinks {
	clear: right;
}

I added at the bottom of the stylesheet but if you think it should be in another place, you can replace it without problems (my PRs allow edits from maintainers).
But, in the another hand, I detect one problem with the footer when it is in a mobile device. This is the current result (and error):

And this is how it looks after disable the bottom: 0 in .smwofootergrid.container, that I deleted in the second commit of this PR:

@kghbln, could we test in smw.o? I hope it works and solved both issues.
Regards,
Iván

But, in the another hand, I detect one problem with the footer when it is in a mobile device. This is the current result (and error):

Can you at least scroll?


Lab fixes

Issue #, if available:
Description of changes:
Changed cloudformation.yaml file name as this is the name of the stack on WS
Renamed folder tenants-microsservices to tenant-microservices
Fixed serviceaccount.yaml annotation
Fixed irsa principal arn
Changed producer queue ssm parameter name
Enabled consumer to poll for messages
Removed folders that are not needed on the GitOps codecommit repo (helper, tenant-microservices)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

LGTM


Skywalking page can't show data by hot deployment type

Please answer these questions before submitting your issue.

Why do you submit this issue?
[√] Question or discussion
[ ] Bug
[ ] Requirement
[ ] Feature or performance improvement

Question

What do you want to know?
Does skywalking support hot deployment? My understanding is that it should be supported, because JDK guarantees the ability of agentmain.
When I use the cold start（premian）, I can get the link data normally

When I try to deploy using the hot deployment method（agentmain）, I can only get the information at the JVM level, but not other information (such as link or trace information)

below is java code's core main method in my agent.jar:
public static void main(String[] args) {
try {
List vmList = VirtualMachine.list();
for (VirtualMachineDescriptor virtualMachineDescriptor : vmList) {
System.out.println("pid=" + virtualMachineDescriptor.id() + "\t" + virtualMachineDescriptor.displayName());
if (virtualMachineDescriptor.displayName().toLowerCase().contains("UserApplication".toLowerCase()) ||
virtualMachineDescriptor.displayName().toLowerCase().contains("LoginApplication".toLowerCase())) {
String pid = virtualMachineDescriptor.id();
VirtualMachine virtualMachine = VirtualMachine.attach(pid);
                virtualMachine.loadAgent(
                        "/Users/gaoweijie/Documents/project/skywalkingDemo/testProject/skywalking/skywalking-agent/skywalking-agent.jar=agent.service_name="
                                + virtualMachineDescriptor.displayName() + ",collector.backend_service=localhost:11800" );
        }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }

Which version of SkyWalking, OS and JRE?
JDK1.8 、  MAC-OS 、the latest version apach Skywalking.

Duplicate of #3326

Our department leader hopes to be able to use the hot deployment method very much, so that we can quickly promote this system to the merchants. So is there any way to achieve hot deployment? Such as  modify source code from "premain" to "agentmain"?  Or modify startup mode?  Or modify the configuration file?
Can you provide relevant documents of hot deployment?


docs: refenrece dockerhub image instead of ghcr

Please replace the ghcr reference with the DockerHub image link here according to the TRG.

Hi @almadigabor , in the latest README.md file, we have already replaced ghcr reference with the DockerHub image link. Or could you please clarify more on this what is required here if I did not understand this correctly.

Hi @agg3fe! I think you could get rid of this line in the README. The image will be eventually in dockerhub, that's a requirement for the release.
I've also found references here:

https://github.com/eclipse-tractusx/sldt-semantic-hub/blob/8445198124fa9836af854a92dc0db08e14eba882/charts/semantic-hub/README.md#L37
https://github.com/eclipse-tractusx/sldt-semantic-hub/blob/8445198124fa9836af854a92dc0db08e14eba882/charts/semantic-hub/values.yaml#L73

Can you explain what this image is used for?

Hi @almadigabor,
We have raised the PR for removing ghcr reference from ReadMe.MD and this will be merged soon.
Regarding 'image: ghcr.io/catenax-ng/jena-fuseki:4.7.0' , this is the DB used for Semantic-Hub. We are using it to store some aspect model images into it directly. This is our private image from catena-x repo.


Linkify package is not working inside expanded

I'm using Linkify package to make Rich Text. When I place Linkify into expanded, the clickable link cannot click.

Problem resolved.


Optimize transitions

Based on work by @hirasso in #15

Ensure value never exceeds 1
Initialise with random value
Improve initial transition by forcing reflow
Some refactoring and additional parameters

Hi @daun , any news on when you want to merge this into master? :)

@hirasso Ready to merge, just waiting for a review by another maintainer.

Apologies didn't notice I was blocking!


Label text above bar graph

Is it possible to add label text (such as totals above a stacked bar chart) above a bar in a bar chart? I have found a temporary fix, but it does not work well with re-sizing:
d3.selectAll('.c3-axis-x g.tick').each(function() {
var selectedtext = d3.select(this).text();
var translatestring = this.attributes[1].value;
var translatevalue = translatestring.substring(translatestring.lastIndexOf("(") + 1, translatestring.lastIndexOf(","));
chart.internal.main.append('text')
.attr('y', 5)
.attr('x', translatevalue)
.attr('text-anchor', 'middle')
.style('fill', 'black')
.text('Summation Text');
});

Hi @nsang92!
You're on the right path, you just need to create a function to reposition your elements that gets called on the window.onresize event.
Might also want to consider using SVG tspan elements as well, which can help with text positioning.
That said, this is neither a feature request or a bug, so could you please continue this discussion in the Google Group? Thanks!


Missing support for extendable expects

The pull request https://github.com/pestphp/pest/pull/232 as been merged, and this issue is a feature request so we could have autocomplemention on extendable expects. Example:
expect()->extend('toBeWithinRange', function ($min, $max) {
    return $this->toBeGreaterThanOrEqual($min)->toBeLessThanOrEqual($max);
});

test('numeric ranges', function () {
    expect(100)->toBeWithinRange(90, 110);
});

Note that expect()->extend can be the entire test suite.

@adelf Do you see any problems with implementing this? Is this doable and so on?

Is there any specific place for this extending? Like, service provider?

Well, I guess it's most likely to be in tests/Pest.php, but I guess it'd be used in plugins too.

The better is to scan the entire tests folder, for now.

@nunomaduro how about packages, they won't have their extensions in the tests folder right?
Meaning we would also have to lookup all files in all packages

Ok - scan for all packages that require "pestphp/pest" on their composer files.

Hey @adelf, I wanted to give this a go, but was hoping you could give me some pointers 👍
So basically I need to add custom methods to the type Expectation, what is the best way of doing that? 😄
For finding all of the extensions, my thoughts were to create a new indexer and store them that way. So I can just look through the index for all the methods.

Hey @adelf, I wanted to give this a go, but was hoping you could give me some pointers 👍
So basically I need to add custom methods to the type Expectation, what is the best way of doing that? 😄
For finding all of the extensions, my thoughts were to create a new indexer and store them that way. So I can just look through the index for all the methods.

Generated helper code (like _ide_helper.php) will be the best for users' experience, but it's hard to store fresh, and asking a user to generate it every time not good...
So, yes. You can just build an index, collect all these methods. Just names will be enough for now I think. And then the usual completion contributor for MethodReference. There will be a warning about non-existing method, BTW...

Generated helper code (like _ide_helper.php) will be the best for users' experience, but it's hard to store fresh, and asking a user to generate it every time not good...
So, yes. You can just build an index, collect all these methods. Just names will be enough for now I think. And then the usual completion contributor for MethodReference. There will be a warning about non-existing method, BTW...

BTW, seems we also need a TypeProvider for $this for lambdas inside extend.

BTW, seems we also need a TypeProvider for $this for lambdas inside extend.

Ah yeah, so it's easier to define your extends also...
@adelf is this a task you will be up to / have time for?
We could prob. force all plugins to have an ide helper file for now. So we "only" have to think about the extends defined in test folder.
But is it really not possible to inject methods into a php type without using an ide helper file?

Ah yeah, so it's easier to define your extends also...
@adelf is this a task you will be up to / have time for?
We could prob. force all plugins to have an ide helper file for now. So we "only" have to think about the extends defined in test folder.
But is it really not possible to inject methods into a php type without using an ide helper file?


Add a new category of quotes (e.g., motivational, funny, etc.)

Add functionality for different categories of quotes, such as motivational, funny, inspirational, etc. Users should be able to select a category and see quotes specific to it.

Hi, can I have this assigned to me?

Sure, fire on

Solved by PR #9 & #10


Check for unconverted Markdown lists after running Jekyll.

@yaoshengzhe @alainjobart
If the writer doesn't put a newline before the list, it might look fine
in GitHub, but get passed through as plain text in Jekyll.
It's hard to detect this case in the raw Markdown without actually
parsing Markdown, because we'd need to distinguish between the first
item of a list, and subsequent items.
However, after running Jekyll, all Markdown lists should have been
converted, so we look for any unconverted lists before publishing.

LGTM

Great stuff thanks for the check!


Should a test flavor assume that the flavor will be self contained to one folder?

Each flavor currently runs every test file, one at a time, to see if it has the tags nose is looking for.
I want to open up a discussion here on this. I know @hush-hush thought we should make them more self contained, if only because it wouldn't take as long to run.
However, as a matter of practice, I'm not sure that we can assume this. At the very least for default, this is not true. However, perhaps we can change how it parses the flavor variable or include a secondary variable.
This is already leading to issues, as we can see here: https://github.com/DataDog/integrations-core/pull/98, so I think that it's something we have to address and figure out how to resolve.

I'm pretty sure we can assume that integration tests that expect the software to be installed (i.e. in travis terms, the tests that are run in a dedicated flavor) will only ever be in the folder of their respective integration.
Then we can keep a default flavor for tests (usually mock and unit tests) that don't require any software/docker images to be set up beforehand. This flavor would still need to run every test file to see if there are related tests to run.
Because of the default flavor we still need to keep the annotations on the tests (e.g. @attr(requires='<integration_name>')) since we have to distinguish the tests that need some setup from those that don't. That said we could make these annotations a little less redundant by changing them to something like @attr(requires='setup') since (with this improved logic) the only information we need from these annotations is whether a test requires a setup phase (-> dedicated flavor) or not (-> default flavor).

I agree as well... Each integration should be expected to be self-contained. So other than the default flavor it should be safe for nose to only look for tests in that particular integration's folder.

Yeah, I think that makes the most sense as well. I don't think there's one now that would require this, and I think this change makes sense regardless.

Closing because refers to an outdated and long settled discussion


Missing Information about Deployment Requirements

Recently I tried to get the software running. I'm currently failing hard.
Are there any specific requirements on installation and running the software?
I think it would be really great to have install and requirements guide on that.
Is it possible to interact with 3rd party provisioned devices?

The requirements for running the software is described on the front page of the project. We also provide a manual that goes into more detail at https://github.com/CSIS/EnrollmentStation/blob/master/Manual-GUI.pdf
The application only supports Windows Enterprise Certificate Authority as well as Yubikey Neo Premium (for the CCID support). If you have any specific requests for the documentation, let me know.

Closing issue due to inactivity.


Intermittent test failure on TestHandleConnectionsCleanup()

This part of the test seems to be failing under certain conditions: https://github.com/oklog/oklog/blob/master/pkg/ingest/conn_test.go#L68-L85
See Travis job https://travis-ci.org/oklog/oklog/jobs/218623755 for a failure. (It's on my branch, but I don't think my changes affect this test)
=== RUN   TestHandleConnectionsCleanup
--- FAIL: TestHandleConnectionsCleanup (1.06s)
	conn_test.go:75: HandleConnections successfully torn down (accept tcp [::]:43165: use of closed file or network connection)
	conn_test.go:84: timeout waiting for Close: initial Closes=0, current Closes=0
...
...

The command "go test -v -race ./{cmd,pkg}/..." exited with 1.

Ugh, I should have fixed that.  Thanks for the report.

This was fixed as of v0.3.0. Thanks for the report.


Group error classes in one place

I am trying to produce an error in the CLI. Currently, we have at least three error classes introduced in various places:
https://github.com/informalsystems/quint/blob/1d67fb43758aa08195fe1a80e1385328d884f33e/quint/src/quintIr.ts#L26
https://github.com/informalsystems/quint/blob/1d67fb43758aa08195fe1a80e1385328d884f33e/quint/src/quintError.ts#L18
https://github.com/informalsystems/quint/blob/1d67fb43758aa08195fe1a80e1385328d884f33e/quint/src/quintParserFrontend.ts#L40
We also have adapter functions, e.g.:
https://github.com/informalsystems/quint/blob/1d67fb43758aa08195fe1a80e1385328d884f33e/quint/src/cliCommands.ts#L147
It's getting harder to navigate across error handling. Shall we group all three classes (if we need all three of them) and their adapters in a single file, e.g., quintIr.ts?
@bugarela, @shonfeder, wdyt?

Yep, we should centralize those in quintError (quintIr would be too flooded with error stuff). There's also ErrorTree. We should also ensure we are using QuintError to represent errors and ErrorMessage should be strictly an output format.


Coq 8.10

This is not really a PR, but reflects the current status of the 8.10 branch port,  the main points are:

no plugin building in checker and pcuic: extraction is too brittle and produces ill-scoped things, the safechecker and erasure are enough anyway.
Removed Cumulative_ctx
Fixed the binding of constants to use the new Coqlib setup.

I still need to update the test-suite/demo and translations.

@mattam82 What is the status of this? Are you looking for assistance?

I'm still working on it, I was on vacations :) Now examples go through but translations need to be adapted still, hopefully this will be done by the end of the week.

Thanks. Please let me know if you need some help.

Actually, this might be done :) @SimonBoulier There is an ugly hack in AstUtils.mind_body_to_entry, we should have a look together how to fix it properly (we need translations to offer a translate_context function I think to translate parameter contexts of inductives).

Ok, it works!

Wow cool. Do you mean that coq-8.10 becomes the new official branch? Maybe we can change the default branch and notify all contributors.
We can have a look at the hack next week.

@SimonBoulier @TheoWinterhalter if you want to first try building the coq-8.10 branch on your side just to check, then we can move indeed.

Ok, I will try on my side!

It compiles for me with coq 8.10.2 and ocaml 4.09.0.
It seems the test-suite also passes. Seems safe to merge.

Just before that, it might be a good idea to update the README of 8.10.

Well, no need to merge, it's just a new branch :) But indeed a README update is needed

Yep, I wrote to fast and then updated to "migrate".

I had a look. Thanks for the job.

It compiles with coq 8.10.1, equations 1.2.1+8.10, ocaml 4.07.1 (all with opam)
The mechanism of registration of constants seems really nice!
Is the checker plugin broken? It does not compile and Extraction is commented in _CoqProject.in. Lot of work to recover it?

The problem here is that extraction fails for the modules as something was introduced in Coq's stdlib (ssrbool I believe) that uses template polymorphism and breaks extraction. The "unsafe" checker is not particularly useful I think, hence I removed it.

Idem for PCUIC. But in this case there is no real plugin. Can we remove it?

Same issue. Let's leave it disabled for now, but once the Coq issue is finished we might want to rebuild the plugin.

Why did you commented  translations/param_original.v? Seems to work well.

That's a mistake, don't hesitate to do a PR to fix this!


[Feat] Support UPF without 'gtp5g' module

There is pushback against upstreaming the 'gtp5g' module: https://lore.kernel.org/netdev/Yio5%2F+Ko77tu4Vi6@nataraja/T/#m888eb5eb3266987f326ed9ab4996a57bb23d5012
It is sometimes difficult to get an out of tree module applied to any platform (for example, sometimes platforms require signed modules)
free5gc should consider gracefully handling the absence of 'gtp5g' module

@iancoolidge
No, free5gc should bind to gtp5g with correct version. If you use the different module, free5gc won't run properly in user space.
If you want to try the different module, you can simply comment out the code in free5gc/upf/internal/forwarder/gtp5g.go line 98, and observe what will happen.
err = g.checkVersion()
	if err != nil {
		g.Close()
		return nil, errors.Wrap(err, "version mismatch")
	}

I'm not talking about a different module, I'm talking about "no" module.
Why not just have a userspace implementation to fall back to?
To me, it feels like if upstream is against the idea of these protocols being implemented in the kernel, it's also a good argument for not doing them in kernel space at all.

@iancoolidge
Module gtp5g is utilized in UPF (User Plane Function). UPF is in charge of data forwarding in data plane. It will create GTP tunnel when the PDU Session is established. It's faster to be processed in kernel space. If you don't install this kernel module, the UPF can't run.

Hi @iancoolidge

Why not just have a userspace implementation to fall back to?

This solution can resolve the upstream issue definitely.
But Implement UPF (data plane) in the kernel space brings more efficiency on the data processing.
Actually, most of Open-Source UPF implementations were kernel based application (XDP, Kernel Module).
Consider to the upstream issue, our documentation has listed the required environments for preventing this kind of problem.
Thanks.


Investigate whether we can speed up operations on tabular data by using another backend

pandas v2.0.0 introduces pyarrow as a new backend, which is supposedly faster than numpy
We could also use pyarrow directly
We could also replace pandas by polars

Generally, the interface of polars seems to be nicer to work with for us than pandas. They also do not have an index, which is closer to our design, too.
Tasks

[ ] Back Table by polars.DataFrame
[ ] Back Row by polars.DataFrame
[ ] Back Column by polars.Series

Overall, polars still needs some time to mature. If a column contains mixed data and no data type is specified explicitly, for example, it just silently replaces values with None that don't match the inferred type:
import polars as pl

series = pl.Series("col", [1, "a", True, None])

for value in series:
    print(value)

# None
# a
# None
# None


chore(deps): upgrade configuration

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-configuration-k8s-29-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 4791

Questions ?
Please refer to the Backport tool documentation


fix: Results not found select

Fixes #2931

This could have other potential side effects, so we need to keep an eye on new incoming issues with select searching, as this is probably the cause


[ffigen] Improve handling of ObjC method families and retention annotations

To deduce whether an ObjC method returns a retained reference or not, we use a combination of method family detection and annotations. But our support for this is incomplete, and misses a few edge cases. The full docs are here.
Specifically, the method family detection rules are slightly more complicated than what we've implemented, we're not handling the annotations that can alter the method family, and we're only handling the NS_RETURNS_RETAINED annotation (the other annotations can opt-out a method that is supposed to return retained due to its method family).
We're also not handling the argument consumption annotations, or the consumes self annotation.
Finally, all these rules (except method families) should also apply to blocks.
Follow up to #1441

https://clang.llvm.org/docs/AutomaticReferenceCounting.html

That was an interesting read! I was rather surprised that method names automatically apply families. Lot's of magic in the name or conciseness.

The objc_method_family annotation is not exposed in libclang, so I'll ignore it for now. It seems pretty obscure anyway.

Finally, all these rules (except method families) should also apply to blocks.

Unfortunately libclang doesn't seem to have a way of accessing __attribute__((ns_returns_retained)) and __attribute__((ns_consumed)) annotations on blocks.
For methods and top level functions, these annotations are on the CXCursor of the declaration, but for blocks I only have a CXType with no declaration cursor. If I annotate a block with NS_RETURNS_RETAINED, the CXType's kind changes from FunctionProto to Unexposed. If I annotate it with __attribute__((ns_returns_retained)) the kind changes to Attributed, which is a bit more promising, but I can't find a way of getting the attribute. If I annotate one of the args with __attribute__((ns_consumed)), nothing happens at all.
I'll fix what bugs I can, and leave parsing these attributes as follow up work: #1490


Add some test helper files behind the test build flag

What does this PR do?
Add some test helper files behind the test build flag (and files using them otherwise inefassign complains)
Motivation
Saves 224kb on dogstatsd x64 binary size (~1%)
Saves 220kb on dogstatsd arm binary size
Additional Notes
Anything else we should know when reviewing?
Describe your test plan
Write there any instructions and details that should be tested during the QA.

@olivielpeau yes unfortunately I don't think ineffassign supports build tags (or at least didn't find a way to) so it only look at files without tags


Turn ENV variables into ARG ones

If anyone wants to use this image as a sub-part of docker-compose, it's impossible to specify PBF file location because within Dockerfile ENV key instead of ARG is used.
Could you replace to the second one, please?

@er1z Done. Can you add documentation how to build with parameters?

Ok, "soon" because a bit of work is in front of me.


Will using arcface loss performs better than CE ?

Theoretically, using arcface should have a better performance than CE. In fact, it's, really hard to say, in ReID task, most of id loss is still traditional CE loss. I think there must be a good reason.


Tree view for caller callee

Is it possible to generate a tree view showing caller callee with %CPU times at each tree method?

Well, Flame Graph is a visualization of such a tree.
Or please clarify what you mean. Do you have an example?

@apangin  I am planning for a demo next week across my group, are you planning for 1.4 release?

@rpulle My intention was to complete JFR support by 1.4 release. I'm going to finish it soon, but not sure it'll be done by the next week.

@apangin  Can you please clarify on the numbers on profiler output?

how to interpret number "10569704" for alloc profiling?
[alloc] profiling
10569704 (50.00%)       1  java.lang.Object[]
10569688 (50.00%)       1  char[]

how to interpret number "4117339" for cpu profiling?
[cpu] profiling
4117339 (13.00%)       4  [unknown]
2074622 ( 6.55%)       2  MutableSpaceUsedHelper::take_sample()
1060175 ( 3.35%)       1  Monitor::IWait(Thread*, long)

Integrated in #117


Comments on Getting Started Intro page

https://simpleq.proofgeist.com/docs/getting-started-guide/intro
Intro
(about the demo files)
1. alert dialog one (about previously being upload to cloud) ? you don't want people accessing via cloud, do you? is there a way to prevent this dialog?
2. login (reminder about the ReadMe applies to these two demo files as well)

Ah! I see the credentials are on the next guide page:
https://simpleq.proofgeist.com/docs/getting-started-guide/upload_demo_files


[AutoPR resources/resource-manager] typo: resources/resource-manager/Microsoft.Authorization

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/4831

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/3187


The swipe views have different height, so the white empty space will be shown on some swipe views.

Hello damusnet:
I tried to use react-swipe-views to build my mobile web page and it worked well in most of time.
But I encountered a problem that if all the swipe views have different height which determined by the contents of themselves and the difference height value between the one view to another view was significant, so there was a large empty space shown on the view which have few content.
I knew that you used flex property of CSS3 to design the layout ,I thought that it was hard to solve the problem with pure CSS methods if I would still use the flex property as the basis of layout implementation.In consideration of that, I tried to reset the parent of swipe views height value as the current selected swipe view height in the componentDidUpdate callback function but I noticed that the performance seems not good as it caused the div layout repainted.
How do you think about the problem?

Hi,
Every
 is bound by the
 that has a 100% height, and with overflow-y: scroll, it allows to scroll inside the div only. That means that one view's height should have no influence on the others.

Right now I can't reproduce this bug you describe. Can you give me more context like which Browser and OS you use?

Hi damusnet:
I thought the problem is that I put the img elements into each
 with different amount.
And the height value of
 is equal to the height value of the child element in

 which has the largest number of images. In my context, the child of second
 is that one.
According to the img1,img2,img3, it was shown the empty space exists in the first
.
It was shown that the height value of
 is the same as the child div of the second
 according to the img1,img4.
The img5 shows the child element structure which contains text and images.
Looking forward to your reply,thanks!

Hello, sorry for not replying sooner. After careful consideration, I believe you should simply set an height (or max-height) to your
 element. The SwipeView(s) will spread as much as they can inside the SwipeViewsContainer which has a 100% height and needs to be limited. See the
 of the demo.


how to copy & paste between container and host?

@henry2423 ,
How to copy & paste between container and host?

you can refer to this https://github.com/neophack/docker-ros-vnc/tree/master/src/common/novnc


Error on load from different screen

Issue description
Error when calling from screen during Navigator.push
Console log
E/flutter ( 8171): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: NoSuchMethodError: The method 'toImage' was called on null.
E/flutter ( 8171): Receiver: null
E/flutter ( 8171): Tried calling: toImage()
E/flutter ( 8171): #0      RenderRepaintBoundary.toImage (package:flutter/src/rendering/proxy_box.dart:2901)
E/flutter ( 8171): #1      _PageTurnWidgetState._captureImage (package:page_turn/src/builders/widget.dart:40)
E/flutter ( 8171): #2      SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1102)
E/flutter ( 8171): #3      SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1049)
E/flutter ( 8171): #4      SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:957)
E/flutter ( 8171): #5      _rootRun (dart:async/zone.dart:1126)
E/flutter ( 8171): #6      _CustomZone.run (dart:async/zone.dart:1023)
E/flutter ( 8171): #7      _CustomZone.runGuarded (dart:async/zone.dart:925)
E/flutter ( 8171): #8      _invoke (dart:ui/hooks.dart:259)
E/flutter ( 8171): #9      _drawFrame (dart:ui/hooks.dart:217)

Can you send me the part of your code that you're doing it? It's interesting to me...


[US] - Map to incircle a list of roads

As a
Lira Map user with an area of roads I'm interrested in
I want
a map where I can draw a circle around my roads
so that
I can easily get a list of the roads I'm interrested in

Thought to be part of the Sorting Dashboard


Move CPU Isolation docs to Container Security

This moves the documentation about CPU isolation from the outdated warden architecture page to the dedicated container security documentation.
Since cgroups are still used in garden (Diego) and this document is still up-to-date it only makes sense to move this chapter to a site where people actually expect it to be. A link was introduced to point to the new page.
Outdated details about the non-existing DEA architecture were removed.

Hi @animatedmax, can you have a look please?

Great @ljarzynski, thanks a lot!


[Bug]: MelonLoader still wont launch

All of the following criteria must be met

[X] All Requirements must be installed.
[X] Changed the title so that it doesn't just says "[Bug]: "
[X] I have searched the GitHub issues for my bug, even in the closed issues.

All of the following are optional to answer

[ ] Tried reinstalling the Game.
[X] Tried reinstalling MelonLoader.
[X] Tried restarting PC.
[ ] Was able to see the Start Screen.

Describe the issue.
Hi, i have issues with runnning Bloons TD6. I have installed everything needed, but MelonLoader still wont load.
Currently, it's running on Windows 11 with ARM. Does that have to do with it not working?
Latest-Bootstrap.log
Did you attach your log file?
Yes, I attached my log file to the text box above.

Hm. If you're on an ARM laptop, I'm assuming it's running the game through a compatibility layer. You should try installing the x64 version of the .net 6 runtime

MelonLoader hasn't been tested on the ARM compatibility layer yet, so feel free to report any additional issues.

Hm. If you're on an ARM laptop, I'm assuming it's running the game through a compatibility layer. You should try installing the x64 version of the .net 6 runtime

Ok, MelonLoader works properly now. Thanks for your help!


Bring official mysqln closer to simendsjo's rewrite

Everyone:
The in-progress @simendsjo rewrite of this module is a great effort, but in the meantime, this official rejectedsoftware branch is getting more use and requiring more and more maintenance. For maintainers, this forces a choice between "let the forks diverge even more", "hold off and wait for the rewrite", or "duplicate effort between both forks (increasingly difficult as they diverge more)". I don't particularly care for any of those options.
So I'd like to start bringing this official rejectedsoftware version closer in line with @simendsjo's work while trying to minimize breaking changes in this version. I plan to start by breaking this module up into separate modules, following simendsjo's organizational structure.
Objections? Thoughts?
Pinning other mysqln contributors:  @s-ludwig @sshamov @MartinNowak @Geod24 @Arjan @schancel

The other fork appears to no longer be in active development, so with this one's big v1.0.0 release, at this point I don't think there's remaining need to try to merge the two versions any further. Closing this ticket.


Cannot drag map when stateful objects are rendered

However, drag happen when remember is used instead of build, but stateful does not shown when remember used


Make flux switch async

Description:
Updates the switch.flux component to be async.
I had an automation that was triggered by both home assistant start and when the automation itself was turned on as I wanted it to re-run when reloading automations (see below).
Upon startup, this automation would be triggered so quickly in succession that there was a race condition setting self.unsub_tracker in FluxSwitch.turn_on. This would result in two trackers running, one that could never be turned off. This caused lights to still be modified by the fluxer even after the component was supposed to be off.
Making the component async fixes this race condition.
Example entry for configuration.yaml (if applicable):
switch:
  - platform: flux
    name: Bedroom Fluxer
    lights:
      - light.bedroom
    mode: mired
    start_time: '6:00'
    stop_time: '22:00'
    start_colortemp: 4000
    sunset_colortemp: 3000
    stop_colortemp: 1700
  - platform: flux
    name: Closet Fluxer
    lights:
      - light.closet
    mode: mired
    start_time: '6:00'
    stop_time: '22:00'
    start_colortemp: 4000
    sunset_colortemp: 3000
    stop_colortemp: 1900
  - platform: flux
    name: Bathroom Fluxer
    lights:
      - light.bathroom
    mode: mired
    start_time: '6:00'
    stop_time: '22:00'
    start_colortemp: 3500
    sunset_colortemp: 3000
    stop_colortemp: 1900
automation old:
  - alias: Home Assistant Start
    trigger:
      - platform: homeassistant
        event: start
      - platform: state
        entity_id: automation.home_assistant_start
        to: 'on'
    action:
      - service: automation.turn_off
        entity_id: automation.home_assistant_start
      - service: switch.turn_on
        entity_id:
          - switch.bedroom_fluxer
          - switch.closet_fluxer
          - switch.bathroom_fluxer

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

You must fix the lint issues before this can get merged.

I forget lint doesn't run as part of the tests. Should be good to go.


cannot login

Initialize client
client = Client('en-US')
Login to the service with provided user credentials
client.login(
auth_info_1=USERNAME ,
auth_info_2=EMAIL,
password=PASSWORD
)
when trying to login, i got <coroutine object Client.login at 0x787e9e31d690>

@Saul-Github
The synchronous version has been deprecated since v2.0.0.
https://github.com/d60/twikit/issues/152

Thank you


Fail to start if PG pool size is set to <= 0

Martin should not allow PostgreSQL pool size to be set to less than 1

I'm looking into this :)


stuck with deleted pods

Hi guys,
Argo version 2.9.5
As I shared already the Argo get YAML file to @simster7 privately I'm facing a similar issue as #3665
In particular, this is a screenshot of Argo UI:

I am also unable to find the following error in my logs:
Error updating workflow: Operation cannot be fulfilled on workflows.argoproj.io \"workflow-XXXXXXXXX\": the object has been modified; please apply your changes to the latest version and try again Conflict
Thanks for your time and effort in fixing that.
Cheers,
Fabio

Simon is out on vacation this week. Are you able to get us up to speed by providing more information please?

Hey @alexec,
I shared with you on slack the output YAML file of the Argo workflow and a screenshot of the terminal where you can see the issue.
Please let me know if you need more info.
Cheers,
Fabio

Hey @simster7 and @alexec,
I hope you are well.
I'm facing the same issue but this time stuck in ContainerCreating from 8 hours.
I shared with you guys on slack the YAML "live" file.
I can attach here a screenshot of the UI just for tracking:

Please let me know if you need more info or details.
Thanks for your time.
Cheers,
Fabio

Hey guys just an update.
I found 4 more stuck Workflow, I shared the logs to @alexec and @simster7 on slack.
Cheers,
Fabio

Hey, @alexec and @simster7  I shared with you guys another stuck WF (in slack).
This is a screenshot of the UI, just to keep track:

Cheers,
Fabio

@fabio-rigato can you confirm if the pod actually ran? If so, can you provide the controller logs from the period of time it finished.

This seems to be an issue with how pods are scheduled and ran in your environment as opposed to any issues with Argo itself, I think. The controller logs should help diagnosing this.

Hey @alexec , @simster7
thanks for your reply.
I checked in out logs and the pod was definitely running and then disappeared without updating the Argo workflow step status. I shared with you guys the controller log on slack in the time range of the pod execution time.
@simster7 I have just created a fresh k8s cluster with only Argo installed and a couple of our services in different namespaces, I am pretty sure the issue we are facing is not because of our environment. But I am very happy to have a call with you guys and share with you my screen and show you our cluster.
Please let me know how can I help you in fixing this bug.
Cheers,
Fabio

Maybe related #4011

Maybe related #3097 and #3469

Maybe related #3862

@sarabala1979 I've added you as your pointed out there is probably a problem with the pod deletion handler simply ignoring events (because labels are lost). Discussed with @jessesuen.
I've POC removing the podQueue and directly queuing pods. Passed all tests and worked well with 1000 node workflow. I'd lean toward this.
Alex
NOTE! This may not fix this bug!

@sarabala1979 did you want to own the podQueue change?

Sure, I can do it. So we are removing podQueue and inline the logic. @alexec @jessesuen Please confirm my understanding is right.

@sarabala1979 @jessesuen I'd like to back-port any change to v2.11. But I think removing podQueue is too risky to backport. How about:

PR #1 - add the workflow to the wfQueue on pod deletion - back-port to v2.11
PR #2 - remove podQueue - v2.12

Hey guys,
thank you for working on that.
Please let me know when will be available a stable release that fixed this bug.
Hope you a great day.
Cheers,
Fabio


[Update Snap] Sign in with XMTP

Checklist
All items in the list below needs to be satisfied.

[ ] Is the summary of the change documented in this ticket?
[ ] Has a MetaMask Snaps team member reviewed whether the changes need to be vetted?
[ ] If there are changes that need to be vetted, attach a description and the relevant fixes/remediations to this issue.
[ ] The corresponding pull request in this repo has been merged.

Summary of changes:

Summary of update:
This update upgrades our JS SDK from a beta version to the latest production version, which includes some minor updates to the build output, exports, and types.
The full diff between the last published version and the new one is here:
https://github.com/xmtp/snap/compare/v1.3.0...%40xmtp/snap%401.3.5
New Version to be allowListed: 1.3.5


[Keyboard Navigation - Power Toys - Settings]:  Heading levels are not defined in the app.

[Power Toys Settings]
User Experience:
If the content is not operated through a keyboard or keyboard interface, it would not be operable by people with no vision, Some people with hand tremors find using a mouse very difficult , as well as by people who must use alternate keyboards or input devices that act as keyboard emulators. Individuals with low vision would also find it difficult to control it from the keyboard.
Test Environment:
"OS Version: 20221.1000
App Name: Power Toy Preview
App Version: v0.23.0
Screen Reader: Narrator"
Repro-steps:
"1. Launch Narrator.
2. Launch Power Toys settings App.
3. Make narrator in Scan mode(Caps lock +Space key -to enable).
4. Navigate in the app in Heading mode using 'H' key.
5. Observe the issue."
Actual Result:
"Heading are not defined in the app.
NOTE:
This issuue repro throughout the application for all the pop-up, pane, dialog etc."
Expected Result:
Headings should be defined in the app.
MAS Reference:
https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={0cf80872-800d-4643-90cf-0c1c3d3e6260}&cid=84783472-d416-47b6-ae86-e1e12f5a839c
2_MAS2.4.6_Heading_level_not_defined.zip

Added in 0.25.  https://github.com/microsoft/PowerToys/releases/tag/v0.25.0


Crash with AreaBullet::OverlappingObjectData

Godot version:

3.2.3.beta c2a4ce9380
OS/device including version:

Kubuntu 20.04 / AMD Radeon RX 570 / GLES2
Issue description:

Crash when removing scene has Area and KinematicBody
reverting #40157 fixes crash.
edit : changed backtrace log shorter case
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x46210) [0x7f2dc1711210] (??:0)
[2] CowData<AreaBullet::OverlappingObjectData>::size() const (godot/core/cowdata.h:128)
[3] Vector<AreaBullet::OverlappingObjectData>::size() const (godot/core/vector.h:83)
[4] AreaBullet::remove_overlap(CollisionObjectBullet*, bool) (godot/modules/bullet/area_bullet.cpp:140)
[5] CollisionObjectBullet::~CollisionObjectBullet() (godot/modules/bullet/collision_object_bullet.cpp:107 (discriminator 2))
[6] RigidCollisionObjectBullet::~RigidCollisionObjectBullet() (godot/modules/bullet/collision_object_bullet.cpp:238)
[7] AreaBullet::~AreaBullet() (godot/modules/bullet/area_bullet.cpp:75 (discriminator 14))
[8] AreaBullet::~AreaBullet() (godot/modules/bullet/area_bullet.cpp:75)
[9] BulletPhysicsServer::free(RID) (godot/modules/bullet/bullet_physics_server.cpp:1531 (discriminator 3))
[10] CollisionObject::~CollisionObject() (godot/scene/3d/collision_object.cpp:393)
[11] Area::~Area() (godot/scene/3d/area.cpp:765)
[12] void memdelete<Node>(Node*) (godot/core/os/memory.h:119)
[13] Node::_notification(int) (godot/scene/main/node.cpp:171)
[14] Node::_notificationv(int, bool) (godot/scene/main/node.h:46 (discriminator 14))
[15] Spatial::_notificationv(int, bool) (godot/scene/3d/spatial.h:54)
[16] CollisionObject::_notificationv(int, bool) (godot/scene/3d/collision_object.h:39)
[17] PhysicsBody::_notificationv(int, bool) (godot/scene/3d/physics_body.h:42)
[18] KinematicBody::_notificationv(int, bool) (godot/scene/3d/physics_body.h:282)
[19] Object::notification(int, bool) (godot/core/object.cpp:934)
[20] Object::_predelete() (godot/core/object.cpp:388)
[21] predelete_handler(Object*) (godot/core/object.cpp:2054)
[22] void memdelete<Object>(Object*) (godot/core/os/memory.h:114)
[23] SceneTree::_flush_delete_queue() (godot/scene/main/scene_tree.cpp:1112)
[24] SceneTree::idle(float) (godot/scene/main/scene_tree.cpp:547 (discriminator 4))
[25] Main::iteration() (godot/main/main.cpp:2105)
[26] OS_X11::run() (godot/platform/x11/os_x11.cpp:3233)
[27] godot/bin/godot.x11.tools.64(main+0x125) [0x14196db] (godot/platform/x11/godot_x11.cpp:57)
[28] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f2dc16f20b3] (??:0)
[29] godot/bin/godot.x11.tools.64(_start+0x2e) [0x14194fe] (??:?)
-- END OF BACKTRACE --

Steps to reproduce:
it happens with real project.
trying to find a minimal reproducable steps.
Minimal reproduction project:

I'm still trying to figure out minimal reproducible steps.
What I found is that Area.queue_free() on runtime caused crash.
for the workaround, I set Area.collision_mask / layer to 0 instead of removing it.

it seems it happens with all Area, KinematicBody, StaticBody when deleted.

@volzhs Thanks for reporting the issue. However, I'm unable to reproduce the crash. Please provide a minimal reproduction project.


bootstrap4: use custom select menu styling

This change ensures uniform look for the select menu across browsers when using bootstrap 4.
Before:

After:

Thanks for this - I wasn't aware that there was a custom-select option in BS4.
Could you send the PR for this change here please? This repo is just a (legacy) distribution repo and changes won't be pulled in here.
Or if you prefer I can make the change in the source.

I have created the pull request in the source repository. Sorry, I should have read the contributing notes beforehand.
https://github.com/DataTables/DataTablesSrc/pull/123


Field of View Rect

this should not be merged yet until i get the formula right.
P.S. - a semicolon (;) was missing

@dimotsai i dont know how to get the actual mass of the cell. can you tell me? token.size isnt it

The link I posted in #32 might help

@Elite01 what is missing here? maybe I can contribute..


Update action versions

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Implement protocols key derivation scheme for encryption

Implement protocol key derivation scheme with the following hierarchy order:
const derivationPath = [
    'protocols',
    PROTOCOL_URI,
    CONTEXT_ID,
    ...[PROTOCOL_PATH_SEGMENTS],
    DATA_FORMAT,
    RECORD_ID
]

Completed.


Update FilterValidator::validateAttribute()

Revert changes by #19041. Converts nulled value when using 'trim' filter to keep BC (declared in Validator::$builtInValidators).

Q
A

Is bugfix?
✔

New feature?
❌

Breaks BC?
✔

Fixed issues
#19238

That is a bit specific. I feel that it will be confusing if 'filter' => 'trim' will work, but 'filter' => 'rtrim' will fail. And adding exceptions for all possible functions that do not accept null looks unrealistic.

@rob006 only trim declared by default, see Validator::$builtInValidators['trim'] and FilterValidator::clientValidateAttribute()

@WinterSilence Then I would fix trim declaration in Validator::$builtInValidator. Having explicit option like FilterValidator::$castToString could be useful (or support for syntax like ('filter' => 'strval|trim')), but I don't think we should try to automatically cast to string to fix only one possible case for FilterValidator.

@rob006 strval|trim you can set this by rules:
['attribute', 'filter', 'filter' => 'strval', 'skipOnEmpty' => false],
['attribute', 'filter', 'filter' => 'trim', 'skipOnEmpty' => true],

@rob006

Then I would fix trim declaration in Validator::$builtInValidator

how? change skipOnEmpty to false? it's BC

how? change skipOnEmpty to true? it's BC

I already said how: either as optional cast to string setting (Validator::$builtInValidator) or supporting 'filter' => 'strval|trim' syntax (which IMO is better option, since it is more flexible and allows to cover more cases, like strval|trim|strtolower). Yes, you can handle multiple filters as multiple validators, but:
a) you can't do this to fix Validator::$builtInValidators['trim'],
b) having to configure three validators is less convenient than one validator with as filter strval|trim|strtolower.
BTW: another possible syntax to handle multiple filters in one validator is to add filters property, which always expects filters array: 'filters' => ['strval', 'trim', [$this, 'processMyString']].

@rob006

you can't do this to fix Validator::$builtInValidators['trim']

why?
['attribute', 'filter', 'filter' => 'strval', 'skipOnEmpty' => false],
['attribute', 'trim', 'skipOnEmpty' => true],

or
Validator::$builtInValidators['trim']['filter'] = function ($value) {
   return trim($value ?: '');
}

work fine

optional cast to string setting
having to configure three validators is less convenient than one validator with as filter strval|trim|strtolower.

These are new features and they will not solve this problem completely. PR comments not  place to discuss new features. This PR keep type of empty attributes and work in PHP 5.4 - 8.2

This is not how it should be fixed but thanks for trying anyway.


Adding support for passing in p12 key and using a service account

A few minor extractions in here, but mainly this is allowing the use of Signet Oauth with service accounts.
To use a service account call Google::Calendar like this:
    conn = Google::Connection.new_with_service_account(
      :client_id => ENV["GOOGLE_CLIENT_ID"],  # the email/user of the service account
      :signing_key => OpenSSL::PKey::RSA.new(ENV['GOOGLE_KEY'], ENV['GOOGLE_KEY_SECRET'])
    )
    Google::Calendar.new({:calendar => ENV['GOOGLE_CALENDAR_ID']}, conn)

Signing_key could also be a p12 key directly loaded using
Google::APIClient::KeyUtils.load_from_pkcs12('client.p12', 'notasecret')

however this requires access to config files on the filesystem

Thanks for the addition!

No problem, I needed the feature! I may end up adding stuff down the road to allow calendar creation so I can move to a distributed calendar model instead of a shared one, but this makes it so my app works again :P


sunodo deploy should support AWS KMS

📚 Context
After #383, it's possible to use sunodo to deploy your application to a public blockchain and self-host the validator.
In case it's needed to deploy to mainnet, the recommended way is to use a service like AWS KMS to hold the wallet.
✔ Solution
sunodo deploy should be able to get the AWS credentials from the environment  + KSM Key ID  to make the deployment.
📈 Subtasks

[ ] add --aws-kms-key-id argument to sunodo deploy

🎯 Definition of Done

[ ] sunodo user can deploy to mainnet/testnet using an AWS KMS key

Sunodo deploy is not actually running the node. The KMS params can still be specified when running the node.
What do you have in mind exactly? Improve the documentation, or actually change any code?

I mean, today the user needs to pass a wallet via Metamask to deploy the contracts, I was thinking this could be done already using the KSM wallet.
I may be confusing the roles of application developer (deploy app contracts) vs validator (make claims (Authority))

I may be confusing the roles of application developer (deploy app contracts) vs validator (make claims (Authority))

Exactly. The deployer can be any account.
The dapp owner is being set to the deployer, but can be transferred afterwards.
And the node wallet address is already manually entered in the deploy process. That has to be the KMS account address.


Notebooks: Only have One Active Session Active at a Time

In the notebook model, we should only have one active session at a time; now that multiple providers can be passed into the model, only have one session active for the current provider and dynamically start/shutdown sessions based on kernel change events.

Close as dupe of other issue


Performance issue in the definition of testResizeToRangeWithDynamicSpatialShape, core/preprocessor_test.py(P1)

Hello, I found a performance issue in the definition of testResizeToRangeWithDynamicSpatialShape, core/preprocessor_test.py, tf.shape(out_image) will be created repeatedly during program execution, resulting in reduced efficiency. I think out_image_shape and in_image should be created before the loop.
Looking forward to your reply. Btw, I am very glad to create a PR to fix it if you are too busy.

Thanks for looking into it.
I am a bit busy to look into this right now
but will be great if you can create a PR


[IRGen] Assign layout strings for static layout generic types in meta…

…data initialization function
rdar://127535274
The layout string needs to be assigned before completion, to make it available in recursive metadata initialization. Setting it in the completion function causes a race between other metadata initializers using it and the completion function running.

@swift-ci smoke test


Uncaught exception when syncing a to-many relationship

Since attempting to update to the latest version of Sync (2.0.0) and Xcode (8.0), from 1.12.3 and 7.3 respectively. I have been experiencing a crash due to an uncaught exception.
It happens at NSManagedObject_Sync.swift:185. It appears that one of my managed objects (ICRoutePolylineItem) is being asked for the key "busID", which it has never had, let alone has it been a primary key. Here's my managed object model and an example of the JSON being synced:

Normally, the JSON would have more specific addresses and coordinates, but I removed them for the purpose of example. I have ensured that the managed object model properly maps remote primary keys to their appropriate local ones, as I had to match the mapping given to me form the remote server. I haven't modified those mappings for a while, and it did not manifest itself until updating to version 2.0.0, so I don't believe that is the issue.
I feel that Sync is confused as to which entity it is wanting the primary key from, because the other end of the relationship has the primary key it's looking for, but not this one.

Thanks a lot for reporting this issue, sadly at the moment I'm really busy at work. Hopefully I'll get time to have a look at this issue early next week, I hope that's ok for you. Have a good weekend!
But as always PRs are very welcome, if there's something hard to understand I can take some time to give some guidance.

@pwestrich Could you help me by saying what are you using for primary key in each entity?

Working on a fix here, but need more info to reproduce: https://github.com/hyperoslo/Sync/pull/290

busId is the primary key for both Bus and Route, and index is the primary key for RouteStop and RoutePolylineItem.

@pwestrich Thanks!

Hi again @pwestrich
I haven't been able to reproduce the issue. Do you have any idea what I might be missing?
https://github.com/hyperoslo/Sync/pull/290

I'm not sure. From what I can see your managed object model and JSON look like mine. I'm nowhere near my work computer at the moment. I'll see what I can do Monday morning when I'm back.

@pwestrich Don't worry! Have a great weekend 🎉

@pwestrich I was able to reproduce the bug by calling Sync two times, one after the other. Seems like the crash is related to updating.

I do have two calls to Sync, but removing the second one has no effect; it's the first one that causes it, which is the one that updates the Route and its subset of objects.
I have confirmed that your model and JSON do look like mine.

Issue fixed here: https://github.com/hyperoslo/Sync/pull/290 🎉
Should be available through CocoaPods in the upcoming Sync release.

Fixed on Sync 2.1.2

Awesome. Thanks a lot.


Use SSO access_token directly instead of exchanging it

We noticed that exchanging the SSO token for an access_token in the refresh_access_token method does not work anymore (and received a 401 when trying to POST to https://owner-api.teslamotors.com/oauth/token).
However, it works perfectly fine if the returned access_token is used directly. The only downside is: its only valid for 8 hours (28800 seconds).

Thanks for getting this implemented!


Add a script to help the new test/update test workflow for snapshot tests

Problem
Adding a new snapshot test is difficult now, as it requires that you have already populated the expected directory if you need one.
Proposed solution
Add a script that uses a combination of @gems//bundler:bundle and the //gems/sorbet/test/snapshot:actual_*/actual.tar.gz targets to bootstrap a new expected directory from a minimal example test. This could subsume the functionality in tools/scripts/update_exp_files.sh.

https://sorbet.org/blog/2022/07/27/srb-tapioca


Prediction downloading error

I have used the Google Colab web portal to make many successful predictions, however my most recent several attempts have all ended without downloading the predicted structure for later manipulation. I get the following error message:

NotImplementedError                       Traceback (most recent call last)
 in
230
231 # --- Download the predictions ---
--> 232 get_ipython().system('zip -q -r {output_dir}.zip {output_dir}')
233 files.download(f'{output_dir}.zip')
2 frames
/usr/local/lib/python3.8/dist-packages/google/colab/_shell.py in system(self, *args, **kwargs)
93       kwargs.update({'also_return_output': True})
94
---> 95     output = _system_commands._system_compat(self, *args, **kwargs)  # pylint:disable=protected-access
96
97     if pip_warn:
/usr/local/lib/python3.8/dist-packages/google/colab/_system_commands.py in _system_compat(shell, cmd, also_return_output)
434   # is expected to call this function, thus adding one level of nesting to the
435   # stack.
--> 436   result = _run_command(
437       shell.var_expand(cmd, depth=2), clear_streamed_output=False)
438   shell.user_ns['_exit_code'] = result.returncode
/usr/local/lib/python3.8/dist-packages/google/colab/_system_commands.py in _run_command(cmd, clear_streamed_output)
161   locale_encoding = locale.getpreferredencoding()
162   if locale_encoding != _ENCODING:
--> 163     raise NotImplementedError(
164         'A UTF-8 locale is required. Got {}'.format(locale_encoding))
165
NotImplementedError: A UTF-8 locale is required. Got ANSI_X3.4-1968
SEARCH STACK OVERFLOW
I have already tried fiddling with my browser's download permissions, but that has not remedied the issue. Thank you for your assistance.

Could you try replacing
!zip -q -r {output_dir}.zip {output_dir}

from cell 5 with:
import shutil
shutil.make_archive(output_dir, 'zip', output_dir)

Working smoothly now. Thank you muchly!


feat: bump swapper to support KK CoW swaps

Description

Notice

[ ] Have you followed the guidelines in our Contributing guide?
[ ] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

develop

PR #2774   👈

This comment was auto-generated by Graphite.


Fix Transition_frontier_diff variant

The previous version of this variant had more overlap than necessary and didn't account for some cases. This one recognizes that new root and new best tip almost always happen at the same time.
As an bonus, this also simplifies the dispatch logic.

Removed the Destroy event as the extensions are just connected to the lifetime of the frontier, so they'll be thrown out and recreated automatically already.


Cant get it to Work

Hay can u please make an tutorial about that i tried exactly With Wrapping but theres no Effect.

mhh looked like its only not working When im transforming >Text in an animation

na Its all Okay, Ah 1 Thanks for the Awesome Plugin!
2. the Problem was that i had an Text Widget, that was already in an
Animation  and changed Transformation of the Default Values, and looks like
when i apply the Blooma fter it its not Working, When i delete Aniamtion
and made new with bloom it worked flawlessy.
Am Fr., 12. Aug. 2022 um 17:52 Uhr schrieb seiko_dev <
@.***>:

Hello. I honestly do not understand what you are having trouble with.
But since the Issue is closed, should I be concerned?
—
Reply to this email directly, view it on GitHub
https://github.com/seiko-dev/UI_Blooman/issues/56#issuecomment-1213262327,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABX7ECJXXF3757Y5AAHA7KDVYZXKNANCNFSM56LTJZHA
.
You are receiving this because you modified the open/close state.Message
ID: @.***>


vs2022 generating a bad namespace.

extension output:

settings:

speculation:
there appears to be a conflict between visual studio and this extension regarding this field. need to resolve the string first, or get the resolved value instead if that is possible.

Thanks for the report!
I'm afraid I don't know how to reproduce the issue you are having.
I see 2 potential options here:

provide the exact VS version and a project with the .vs config folder that reproduces this problem
download the solution, debug and fix it your self. I think this will be the fastest from

hi mate, no problem.
love the extension and was surprised it did not work for my case.
forgot to mention vs2022 community.
will take a look myself but it will be low priority and with some learning to do, last extension i made was for vs2015.

Sure thing!!
Thanks a lot! People who handle the problem themselves deserves all my
respect.
It's pretty straight forward. Just update the VS with the Component to
develop VS components and run it. It will stop at all the breakpoints you
have defined.
On Tue, Sep 17, 2024 at 12:51 PM dogknees @.***> wrote:

hi mate, no problem.
love the extension and was surprised it did not work for my case.
forgot to mention vs2022 community.
will take a look myself but it will be low priority and with some learning
to do, last extension i made was for vs2015.
—
Reply to this email directly, view it on GitHub
https://github.com/pautx24/VsNamespaceFixer/issues/51#issuecomment-2355305890,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGBANKE3AM6X37H2WV3WU3LZXACSPAVCNFSM6AAAAABN23MFZKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJVGMYDKOBZGA
.
You are receiving this because you commented.Message ID:
@.***>


ETV is lost on page refresh

Describe the bug
ETV is not saved on page refresh
To Reproduce
Steps to reproduce the behavior:

Search "CozyEss Birthday Decoration"
https://www.amazon.com/vine/vine-items?search=CozyEss Birthday Decoration
ETV has not been reported yet
Click "see Details"
ETV is reported and displaying correctly on popup close
Refresh the page.
ETV is lost again

Expected behavior
On page refresh, ETV should remain.
Browser
Chrome
Additional context
This happens on almost all ASIN that are parents and has multiple variant. The variant child ETV is reported but instead, the parent is  showing in "Notification Monitoring last 100"
Suggestion: Show all variants in the "Notification Monitoring last 100"  feature.

The bug you describe and the "additional context" are 2 separate issues:
For the problem of the ETV not persisting:
That was a problem a few days ago and should be fixed by now. (Make sure to update your extension to the latest version, which right now is 2.9.9)
You account (UUID) also needs to have a certain age to be allowed to contribute data. If you don't meet certain criteria, your ETV won't be saved.
Notification Monitor issues:

Variants in notification monitor: no, some product have upward of 50+ variants and that would be an absolute mess. The current system will display the parent item, which is found before any variant, and the ETV will be updated when/if found.

Under the old notification system of the new API, products with variants won't get an ETV displayed.

The new instant notification system is about to get an update and the parent item will have the ETV of the latest variant found.

For reference, the listing should display a range of ETV prices when multiple variants with different prices have been found for a parent item. This is resource intensive on the database and not something I can implement (at the moment) in the notifications.
Hope this clarifies a bit.

I believe this was resolves. If it is still an issue, feel free to reopen


GELU activation Functions?

Please make sure that this is a feature request. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:feature_template
System information

TensorFlow version (you are using): TF 2.0.

Are you willing to contribute it (Yes/No):
Yes, pending review, I would be happy to write this in.

Describe the feature and the current behavior/state.
Create a high-level API implementing the GELU activation function.  This was the activation function used in BERT[0], and the GELU authors prove its success on  a number of benchmarks like CIFAR-10[1].
Gelu is not mentioned in a search on tensorflow.org[2].
[0] "We use a gelu activation (Hendrycks and Gimpel, 2016) rather than the standard relu, following OpenAI GPT." https://arxiv.org/pdf/1810.04805.pdf
[1]"Ultimately, the GELU obtains a median error rate of 7.89%, the ReLU obtains 8.16%, and the ELU obtains 8.41%."  https://arxiv.org/pdf/1606.08415.pdf
[2] https://www.tensorflow.org/s/results?q=gelu
Will this change the current api? How?
Yes, this would expand the API. A good way to implement it would be adding to activations.py [3] The implementation used in BERT, which may need some modification, is here [4].
[3] https://github.com/tensorflow/tensorflow/blob/00fad90125b18b80fe054de1055770cfb8fe4ba3/tensorflow/python/keras/activations.py
[4] https://github.com/google-research/bert/blob/master/modeling.py#L264
Who will benefit with this feature?
All developers writing custom layers, particularly those using keras.layers.Dense.
After implementing, we will not have to worry about any optimization problems which may come from mixing activation functions training on top of BERT models.
Any Other info.

from math import pi
B = tf.keras.backend

SQRT_2_D_PI = B.sqrt(2 / pi)

@tf.function
def gelu(x):
    right = B.tanh(SQRT_2_D_PI * (x + 0.044715 * B.pow(x, 3)))
    return 0.5 * x * (1 + right)

Hello,
Gelu has about 100 hits on ArXiv and has been used in at least one popular model. Given that it would be easy to add and easy to maintain, we can definitely add it to activations.py. Feel free to open a PR and assign me as a reviewer.

Hi @fchollet, greetings from SIG-Addons. Addons has already had C++/CUDA kernel for gelu activation, which is much faster than Python op. We would like to migrate our implementation to core. Wonder if we should issue a PR for tf.nn.gelu first or put all things into one? Thanks!
https://github.com/tensorflow/addons/blob/master/tensorflow_addons/custom_ops/activations/cc/kernels/gelu_op.h
https://github.com/tensorflow/addons/blob/master/tensorflow_addons/activations/gelu.py

@bwindsor22 Hi, Brad. Gelu activation has been implemented in Addons, you might be interested in it: https://github.com/tensorflow/addons/blob/master/tensorflow_addons/activations/README.md

Feel free to open a PR and assign me as a reviewer.

@fchollet @karmel  Hi, François, Karmel. Is it time to port gelu from addons to tf-core? I believe Tzu-Wei @WindQAQ would like to help it.

@facaiy sounds good, we should port the Addons Gelu to core. Please open a PR.

Tagging in @karmel and @seanpmorgan, RE: graduation from addons to core.

cc @Windqaq who will be submitting the PR in ~two weeks after exams. There was some discussion about whether or not we should use the C++ implementation or just composite python ops, but the reported speed up looks to be ~3x so IMO we should use the op implementation (which is pretty straight forward):
https://github.com/tensorflow/addons/blob/master/tensorflow_addons/custom_ops/activations/cc/kernels/gelu_op.h#L37

Just observing ALBERT followed the GELU trend too. Thanks a million folks!
https://arxiv.org/pdf/1909.11942.pdf

Gelu is in Tensorflow now: https://github.com/tensorflow/tensorflow/pull/41178. Can we close this?

Looks good to me! Thanks!


Type information in outputs broke flux Kustomization variable substitution

We were using outputs of tf-runner in flux Kustomizations as a source for variable substitution, like so:
spec:
  postBuild:
    substitureFrom:
    - kind: Secret
      name: foo

However, this workflow is broken after upgrade to tf-controller 0.14.0 due to this change: https://github.com/weaveworks/tf-controller/commit/1583733bb6e3e0de3f4bc933215a838a63ef80cf
Reason being is that kustomize-controller freaks out when it sees variables with . in the name (even if those specific variables aren't used for substitution).
Is there any way to disable this functionality?

We were able to solve it with transforming every output to string, because apparently only non-string output types produce .type variables.

Hi @artem-nefedov
Sorry to hear that it's biting you.
Will be looking into this as there is no a workaround on the Kustomization controller's side.
Maybe the changing type information key from "output.type" to be "output__type" would solve the problem.


Inspector is broken in RTL

React Native version:
0.62.0-RC
Steps To Reproduce
Actually, This issue has been raised twice before (#24731 and #15530) and each time, it closed by @Probot without any proper discussion or solution. but it still exists in the latest RN version.
the problem is Inspector does not respect to app layout direction and it always shows inspect highlight box from left to right direction.

Use an RTL language or enforce RTL layout
Toggle Inspector
Try to inspect an element

The highlighted bounding box is aligned to the opposite side (mirrored).
Describe what you expected to happen:
The highlighted bounding box should overlay the selected element.
Snack, code example, screenshot, or link to a repository:

To make sure that this issue gets enough attention this time, I have to mention some people I know that contribute to the core. :))))
@hramos @cpojer @dulmandakh @grabbou @friederbluemle

A

a

a


[Bug]: RawLog is missing

What happened?
searchTx response missing RawLog
Osmosis Version
main
How to reproduce?
No response

This is intentional, it is removed in SDK v50 and was backported to our fork. The data was duplicated with events, is there something you need from the logs that you can't parse from the events?

Also go stung by this, breaking our indexers.

@shapeshed recommending connecting to osmo-test-5, as we update that a week prior to mainnet so integrators will not break in prod.
Will also do a better job of communicating this in the future.


Add "event" and "events" to blacklisted collectives slugs

Coverage remained the same at 67.287% when pulling c92ebcad99f322ce2389a1b3e3408370bfbb62e3 on chore/collective-slugs-blacklist-2 into fa9cc0e6414a60d9365cae62fcd4e3aa39431a53 on master.


fix incorrect result of left join with other conjuncts

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run buildall


Notes for 0.6

Very preliminary dump of high-level release note items. Please help point out any missing bullets and fill in any info you can.

@geeknoid can you be careful to not force push PRs with existing comments

Yeah, there are some serious bugs with VirtualService that we should
probably keep it quiet for now. It's rather rough.
On Fri, Mar 2, 2018 at 9:00 AM Zack Butcher<EMAIL_ADDRESS>wrote:

@ZackButcher commented on this pull request.
In _about/notes/0.6.md
https://github.com/istio/istio.github.io/pull/1048#discussion_r171903799
:

+order: 95

+layout: about
+type: markdown
+---
+{% include home.html %}
+
+In addition to the usual pile of bug fixes and perf improvements, this release includes the new or
+updated features detailed below.
+
+## Networking
+
+- Custom Envoy Config. Pilot now supports ferrying cuatom Envoy config to the
+proxy. TBD: link?
+
+- External Services. TBD: what can we say here?
AFAIK we are planning to ship the CRDs by default with 0.6; you'll be able
to use both old and new side-by-side for at least this next release.
Or are we planning to punt this till 0.7 too?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio.github.io/pull/1048#discussion_r171903799,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJGIxuiZzqomgHoiC0k8IsRw7ACWH0iUks5taXq-gaJpZM4SZKsB
.

/lgtm for security part

in case it got lost
https://github.com/istio/istio/pulls?q=is%3Apr+is%3Aclosed+label%3A"kind%2Fimportant+for+release+notes"


feat: add btreemap benchmarks

Adds a benchmarks canister that is used for benchmarking btreemap insertions/removals.

For reference, here are the benchmark numbers:
+ dfx canister call benchmarks btreemap_insert --query
(831_679_957 : nat64)
+ dfx canister call benchmarks btreemap_remove --query
(1_559_244_733 : nat64)


Fix AxisSize when final dimesion size is 1

Fixes #140

@dzenanz  I can't share any test images at the moment, perhaps I'll add some in the future.

I rebased this on master (for correct CI testing).

Thanks for your bug spotting and the fix @HaaPut. I improved and reformatted your PR as #144.


When I started fmriprep using the docker command, I couldn't resolve error "AttributeError: type object 'loggers' has no attribute 'warning'"

What happened?
When I executed the following command, I encountered the error shown below and can't resolve it.  This includes the `config_filename`, `ignore`, `force_index`, and `index_metadata` arguments. The recommended usage pattern is to initialize a new BIDSLayoutIndexer with these arguments, and pass it to the BIDSLayout via the `indexer` argument.
  warnings.warn("The ability to pass arguments to BIDSLayout that control "
You are using fMRIPrep-20.2.0, and a newer version of fMRIPrep is available: 23.1.4.
Please check out our documentation about how and when to upgrade:
https://fmriprep.readthedocs.io/en/latest/faq.html#upgrading
WARNING: Version 20.2.0 of fMRIPrep (current) has been FLAGGED
(reason: Functional outputs in standard space can be wrong depending on the original data's orientation headers - see https://github.com/nipreps/fmriprep/issues/2307).
That means some severe flaw was found in it and we strongly
discourage its usage.
231104-02:12:05,474 nipype.workflow IMPORTANT:

    Running fMRIPREP version 20.2.0:
      * BIDS dataset path: /input.
      * Participant list: ['2023'].
      * Run identifier: 20231104-021202_30bb688c-f490-4c00-a7d3-eea8b5e54c8c.
      * Output spaces: MNI152NLin2009cAsym:res-native.
      * Pre-run FreeSurfer's SUBJECTS_DIR: /output/freesurfer.
Process Process-2:
Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/process.py", line 297, in _bootstrap
    self.run()
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/process.py", line 99, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/miniconda/lib/python3.7/site-packages/fmriprep/cli/workflow.py", line 84, in build_workflow
    retval["workflow"] = init_fmriprep_wf()
  File "/usr/local/miniconda/lib/python3.7/site-packages/fmriprep/workflows/base.py", line 64, in init_fmriprep_wf
    single_subject_wf = init_single_subject_wf(subject_id)
  File "/usr/local/miniconda/lib/python3.7/site-packages/fmriprep/workflows/base.py", line 304, in init_single_subject_wf
    func_preproc_wf = init_func_preproc_wf(bold_file)
  File "/usr/local/miniconda/lib/python3.7/site-packages/fmriprep/workflows/bold/base.py", line 167, in init_func_preproc_wf
    config.loggers.warning(
AttributeError: type object 'loggers' has no attribute 'warning'`

What command did you use?
> docker run -ti --rm `
>>   -v C:/Users/natakegami/fmriprep/Nifti:/input `
>>   -v C:/Users/natakegami/fmriprep/output:/output `
>>   -v C:/Users/natakegami/fmriprep/license.txt:/license `
>>   poldracklab/fmriprep:latest `
>>   /input /output participant `
>>   --participant-label sub-20230808 `
>>   --fs-license-file /license `
>>   --skip-bids-validation `
>>   --n-cpus 4 `
>>   --fs-no-reconall

What version of fMRIPrep are you running?
20.2.0
How are you running fMRIPrep?
Docker
Is your data BIDS valid?
Yes
Are you reusing any previously computed results?
No
Please copy and paste any relevant log output.
No response
Additional information / screenshots
No response

Please do not use poldracklab/fmriprep or :latest. Use nipreps/fmriprep and a specific version. I would recommend using fmriprep-docker to help construct your command.
It looks like our docs are a bit sparser than they used to be, but instructions can still be found here: https://fmriprep.org/en/20.2.2/installation.html#the-fmriprep-docker-wrapper
In any case, the latest versions are 20.2.7 (LTS) and 23.1.4.

Thank you for your prompt reply!
I am using Windows, but I cannot successfully set the path for fmriprep-docker.
Therefore, I am trying the following command now:
docker run -ti --rm
-v C:/Users/natakegami/fmriprep/Nifti:/input   -v C:/Users/natakegami/fmriprep/output:/output
-v C:/Users/natakegami/fmriprep/license.txt:/license    nipreps/fmriprep:latest
/input /output participant   --participant-label sub-20230808
--fs-license-file /license   --skip-bids-validation
--n-cpus 4    --fs-no-reconall
I have two questions:
①Is there a difference in behavior between using the fmriprep-docker command and pulling fmriprep-docker using the docker command?
②There are two latest versions, but why is there such a difference in their numbers? Is there any difference between them?
Thank you for your support

①Is there a difference in behavior between using the fmriprep-docker command and pulling fmriprep-docker using the docker command?

No.

②There are two latest versions, but why is there such a difference in their numbers? Is there any difference between them?

Yes. 20.2.7 is the long term support (LTS) release. 23.1.4 is the latest release. The older one does not have some newer features, but will also not have new bugs. I would try latest, and if that doesn't work well, then try the LTS.

After changing the repository to nipreps, the process was completed!
It seems that NiPreps is an active community that currently oversees several preprocessing software.
I wasn't aware of that.
I was recommended by others not to include —fs-no-reconall and to specify a working directory with -w.
If I include —fs-no-reconall, will the output change?
Thank you!

If I include —fs-no-reconall, will the output change?

Yes. BOLD-T1w coregistration is significantly better with FreeSurfer reconstruction.

Thank you for your response.
Is it correct to understand that if I don't include the —fs-no-reconall argument,  the reconstruction will be done by FreeSurfer and the image quality will improve?

the reconstruction will be done by FreeSurfer and

Yes.

the image quality will improve?

No. The quality of registration should improve, but this will not change the quality of the image for better or worse.

I'm not quite familiar with the term 'registration', but I'll look into it.
Ultimately, is it recommended to use —fs-no-reconall or not?

No, we do not recommend using that. The defaults are the recommended options, so running recon-all is recommended.

Thank you.
In that case, I'll try running it without specifying —fs-no-reconall.


request(n) vs on/off for flow control

Reactive-streams uses request(n) as the flow control mechanism. I'm wondering if any alternate flow control mechanisms have been considered before. One idea I'm thinking of is a switch on / switch off model:
public interface Subscription {
  // Starts emitting elements. The publisher can emit as many elements as
  // it want until switchOff() is called.
  void switchOn();

  // Halts emitting elements. The publisher should eventually stop emitting
  // elements. The subscriber can call switchOn() to resume.
  void switchOff();

  // Same semantics as the existing cancel()
  void cancel();
}

// the Publisher/Subscriber/Processor interfaces are unchanged

This model has two main advantages:

When the subscriber is operating at the same or higher speed as the producer, there is no need to do any request() calls, which may improve throughput.
When a processor needs to translate between input and output types, it doesn't have to convert / estimate the request count. One example is a processor that receives ByteBuffers, decode them to UTF-8 strings, and emits each line as a String.

On the other hand there seem to be some obvious disadvantages:

switchOff() is inherently racy in the sense that publishers can't practically guarantee the subscriber will not receive elements after switchOff() is called, so flow control is less "strict". Even if publishers try their best to honor switchOff(), "leftover elements" can still be a problem in longer processing pipelines. By pipeline I mean means a series of processors connected together.
It's not obvious how to implement certain types of publishers, the simplest example being a publisher that emits elements generated from a generator function. If it just keeps emitting elements in switchOn(), the subscriber may never get a chance to call switchOff(). In general switchOn() provides less information than request(n) so publishers are more restricted.

I'm not proposing changing anything here (obviously). I'm mostly curious if something like this have been considered before and whether the advantages / disadvantages above are well founded.

The disadvantages are exactly what you enumerated.

When the subscriber is operating at the same or higher speed as the producer, there is no need to do any request() calls, which may improve throughput.

If you use larger request counts then the cost of these requests are amortized.

When a processor needs to translate between input and output types, it doesn't have to convert / estimate the request count. One example is a processor that receives ByteBuffers, decode them to UTF-8 strings, and emits each line as a String.

You don't need to, actually. What Akka Streams does is that evers processing stage maintains a buffer, and processing logics do not call request, instead they consume elements from this buffer directly. Once buffer occupancy drops below a threshold, the framework in the background automatically requests the next batch. This approach turned for us to be the only one that properly composes and works, especially in the presence of cycles and fairness requirements.

Same thing happens with RxJava, although few of the algorithms use thresholding and just request(1) once one element is consumed. The pattern requires you to maintain a counter of elements so you can start and stop the upstream in case of an async boundary in addition ot a reqular queue:
long count;
public void onNext(T value) {
   queue.offer(value);
   if (++count == max) {
      subscription.switchOff();
   }
}

void drainOnAnotherThread() {
    T q = queue.poll();
    if (q != null) {
        if (--count <= threshold) {
           subscription.switchOn();
        }
    }
}

Here, you now have a race on the count variable which has to be turned into an AtomicLong at least at which point you essentially ended up with the same structures as they are now: switchOff is no-op and switchOn() is just request(prefetchAmount).

@drewhk Thanks, that's a great pointer. Do you know was there any discussion on the cycles / fairness / composability concerns I can read more about?
@akarnokd You are quite right. A user of the switchOn/switchOff mechanism will probably use some sort of low water mark / high water mark, which can be effectively simulated with the approach @drewhk mentioned. (By the way I just came across your blog series on RxJava internals. It's very illuminating!)

Do you know was there any discussion on the cycles / fairness / composability concerns I can read more about?

Not that I know of. We have some internal documents about our design decisions but these have been not yet compiled into a public consumable format. I plan to write up these after 2.0. Although if you are interested in the more theoretic background then Petri net theory covers most of the results that are applicable to bounded streaming (more specifially, well formed, free choice Petri nets). This is my favorite on this topic: https://www7.in.tum.de/~esparza/bookfc.html (available freely)

@drewhk That's so unexpected and awesome, thanks!

Hi Max,
we had a lot (many many many) of discussions before we settled on the
existing solution.
The interfaces and spec of Reactive Streams are best thought of as
distributed entities where all method invocations are message sends. With
that in mind it is not feasible to employ Nak:ing since there can be
message loss.

Cheers,
√
On 11 Nov 2015 08:53, "Max Ng"<EMAIL_ADDRESS>wrote:

Reactive-streams uses request(n) as the flow control mechanisms. I'm
wondering if any alternate flow control mechanisms have been considered
before. One idea I'm thinking of is a switch on / switch off model:
public interface Subscription {
// Starts emitting elements. The publisher can emit as many elements as
// it want until switchOff() is called.
void switchOn();
// Halts emitting elements. The publisher should eventually stop emitting
// elements. The subscriber can call switchOn() to resume.
void switchOff();
// Same semantics as the existing cancel()
void cancel();
}
// the Publisher/Subscriber/Processor interfaces are unchanged
As I can see this model has two main advantages:

When the subscriber is operating at the same or higher speed as the
producer, there is no need to do any request() calls, which may
improve throughput.
When a processor needs to translate between input and output types,
it doesn't have to convert / estimate the request count. One example is a
processor that receives ByteBuffers, decode them to UTF-8 strings, and
emits each line as a String.

On the other hand there seem to be some obvious disadvantages:

switchOff() is inherently racy in the sense that publishers can't
practically guarantee the subscriber will not receive elements after
switchOff() is called, so flow control is less "strict". Even if
publishers try their best to honor switchOff(), "leftover elements"
can still be a problem in longer processing pipelines. By pipeline I mean
means a series of processors connected together.
It's not obvious how to implement certain types of publishers, the
simplest example being a publisher that emits elements generated from a
generator function. If it just keeps emitting elements in switchOn(),
the subscriber may never get a chance to call switchOff(). In general
switchOn() provides less information than request(n) so publishers are
more restricted.

I'm not proposing changing anything here (obviously). I'm mostly curious
if something like this have been considered before and whether the
advantages / disadvantages above are well founded.
—
Reply to this email directly or view it on GitHub
https://github.com/reactive-streams/reactive-streams-jvm/issues/295.

@viktorklang Thanks for explaining this perspective also.
I think I've got the answers thanks to everyone. Closing this issue.

Thanks for the great question, Max!
--
Cheers,
√
On 15 Nov 2015 00:31, "Max Ng"<EMAIL_ADDRESS>wrote:

@viktorklang https://github.com/viktorklang Thanks for explaining this
perspective also.
I think I've got the answers thanks to everyone. Closing this issue.
—
Reply to this email directly or view it on GitHub
https://github.com/reactive-streams/reactive-streams-jvm/issues/295#issuecomment-156758075
.


ConfigMap labelling support for property sources

It enables ConfigMap versioning similar to that in Spinnaker. More details here: https://piotrminkowski.com/2020/03/23/kubernetes-configmap-versioning-for-spring-boot-apps

@piomin I talked about this today with the broader team and we wanted to know more about what about Spinnaker does that you think is valuable, can you elaborate?
Also our initial impression was that is might be better to take a more general approach of having the ability to filter ConfigMaps and Secrets based on labels, annotations, etc.  One filter may implement the versioning functionality you are proposing here

@ryanjbaxter I think it could be also interesting https://spinnaker.io/reference/providers/kubernetes-v2/#traffic, or any more advanced form of traffic management.
Ok, I follow your idea. I'll try te prepare such change in this PR with more generic approach basing labels.

@piomin in what way do you think that the model from spinnakers traffic management could be applied here?

@ryanjbaxter For example, we are talking about loadbalancer in SERVICE mode in another issue here: https://github.com/spring-cloud/spring-cloud-kubernetes/pull/562. Currently, it does not do any load balancing since it just call a single service always (or I'm missing something). We could give a possibility to use some additional configuration settings to provide not only a single service name, and load balancer would call addtional services like in this example from Spinnaker documentation.
And also one thing. I pushed some changes, that enable labellng mechanism for ConfigMap you have already proposed. But I have error during build on your CicrleCI:
Could not resolve dependencies for project org.springframework.cloud:spring-cloud-kubernetes-core:jar:2.0.0-SNAPSHOT: The following artifacts could not be resolved: org.springframework.boot:spring-boot:jar:2.4.0-SNAPSHOT, org.springframework.boot:spring-boot-autoconfigure:jar:2.4.0-SNAPSHOT, org.springframework.boot:spring-boot-test-autoconfigure:jar:2.4.0-SNAPSHOT, org.springframework.boot:spring-boot-starter-web:jar:2.4.0-SNAPSHOT, org.springframework.boot:spring-boot-starter-json:jar:2.4.0-SNAPSHOT, org.springframework.boot:spring-boot-starter-webflux:jar:2.4.0-SNAPSHOT, org.springframework.boot:spring-boot-configuration-processor:jar:2.4.0-SNAPSHOT: Failure to find org.springframework.boot:spring-boot:jar:2.4.0-20200629.135853-137 in https://repo.spring.io/libs-snapshot-local was cached in the local repository, resolution will not be reattempted until the update interval of spring-snapshots has elapsed or updates are forced.
When I'm trying to builod it locally I have a following error:
Could not find artifact org.springframework.cloud:spring-cloud-dependencies-parent:pom:3.0.0-20200629.151922-184 in spring-snapshots (https://repo.spring.io/libs-snapshot-local)
Did you change something in dependencies? In build 108 everything worked properly.

repo.spring.io is having issues today

@piomin I dont really see what the ability to call other services via a load balancer has to do with versioning configmaps.

@ryanjbaxter ok, I thought you were asking about this traffic management and generally about other interesting features of Spinnaker that my be applied here. Let's move back to the config versioning only - sorry for missunderstanding. Typically you are able to rollback deployment on Kubernetes, but Kubernetes does not allow you to rollback ConfigMap or Secret. So if your configuration is changing together the application, and you need to perform rollback, you have to change configuration in Secrets or ConfigMaps manually (for exaple you may have there feature toggle or smth like that). With this approach you may have multiple versions of your ConfigMaps and in case of deployment rollback everything works out-of-the-box.

@piomin but what happens if the configmap from the previous version of your app gets deleted?  You have nothing to roll back to.  When we did versioning in Spring Cloud Config we relied on the versioning provided by the backing implementation, if there was one.  If you needed to restore some configuration you went to your git repo (or svn) and went to the version of the file you wanted and restored it.
The solution you are proposing forces people to keep their configmaps around infinitely if they want to ave a chance or rolling back their config.
That said I think if this is the solution you want to implement for versioning configmaps that is fine with us.  However we don't want it baked into Spring Cloud Kubernetes.  This is why we are proposing a more abstract way of providing a way of filtering configmaps.

@ryanjbaxter well, I could also ask what happens if there is no configmap with metadata.name corresponding to the application name :) We are forcing users to have such configmap if they want that the current mechanism works for them, right? :)
About that versioning concept - maybe we are not forcing them to keep their configmaps infinetely, but only such many versions back as the numbers of replication controllers history that allows to rollback deployment.
But of course it shouldn't be a part of ConfigMapPropertySource code.

@ryanjbaxter I removed code responsible for versioning support, and just left the code for generic labelling support. I see that such support has been currently implemented for Secret, so I just do it in similar way  for ConfigMap sources.

I am fine with taking the changes as is, but I was actually envisioning something different.  Let me describe
You could have and interface called PropertySourceFilter with a method called filter that would take in either a ConfigMap or Secret and return a boolean value if it was something the app was interested in using as a property source.
Apps using Spring Cloud Kubernetes could provide a bean like the following
@Bean
public List<PropertySourceFilter> myFilters() {

  List<PropertySourceFilter> filters = ....
  filters.add((configMap) -> {
    //implement filter logic such as versioning
  });
  return filters;

Then we could get this list filter out the ConfigMaps and Secrets the app wants as a property source.
This type of functionality would eliminate the need for name matching as well and allow the app to use whatever name it wants and pick ConfigMaps and Secretes based on other parameters, like labels, and annotations.
Maybe the default implementation just matches name so we retain the existing functionality.

@ryanjbaxter Maybe let's merge these changes and I create another PR with the proposal of changes you described ?

@ryanjbaxter any feedback on it?

I think I would rather implement the proposed solution I had above, rather than have some in between solution in the code for a while.

imo, if we ever implement this, we should drop explicit support for labels in secrets implementation and provide this filtering idea instead. It's just a bit un-uniform now, config maps don't have that, while secrets do.
I was thinking that we could have a few beans conditionally enabled like : VersioningSupport or LabelsSupport, etc. At some point in time, if there is no PR for this, I might pick it up.

@ryanjbaxter the original issue has been fixed - adding labels support for config maps; but obviously not the suggestion you had with PropertySourceFilter, which is a big change...
what do you want to do with this defect? thank you


Tests timeout when run all at once

There is some issue where after n tests pexpect runs into a timeout.
If the tests are run single they pass and its always another test which fails - even introducing a backoff time did not solve this issue.
A typical error looks like this
Could not start sclang successfully: Timeout exceeded.
<pexpect.pty_spawn.spawn object at 0x10dc1feb0>
command: /Applications/SuperCollider.app/Contents/MacOS/sclang
args: [b'/Applications/SuperCollider.app/Contents/MacOS/sclang', b'-i', b'jupyter']
buffer (last 100 chars): "receding error dump is for ERROR: Primitive '_GetLangPort' failed.\r\nFailed.\r\nRECEIVER: NetAddr\r\n\r\n\r\n"
before (last 100 chars): "receding error dump is for ERROR: Primitive '_GetLangPort' failed.\r\nFailed.\r\nRECEIVER: NetAddr\r\n\r\n\r\n"
after: <class 'pexpect.exceptions.TIMEOUT'>
match: None
match_index: None
exitstatus: None
flag_eof: False
pid: 25481
child_fd: 24
closed: False
timeout: 30
delimiter: <class 'pexpect.exceptions.EOF'>
logfile: None
logfile_read: None
logfile_send: None
maxread: 2000
ignorecase: False
searchwindowsize: None
delaybeforesend: 0.05
delayafterclose: 0.1
delayafterterminate: 0.1
searcher: searcher_re:
    0: re.compile('Welcome to SuperCollider.*')
E
======================================================================
ERROR: test_hello_world (test.test_kernel.ScREPLWrapperTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/scheiba/github/own/sc_kernel/test/test_kernel.py", line 60, in test_hello_world
    repl = ScREPLWrapper(self.sclang_path)
  File "/Users/scheiba/github/own/sc_kernel/sc_kernel/kernel.py", line 190, in __init__
    raise e
  File "/Users/scheiba/github/own/sc_kernel/sc_kernel/kernel.py", line 187, in __init__
    cmd.expect('Welcome to SuperCollider.*', timeout=15)
  File "/Users/scheiba/github/own/sc_kernel/venv/lib/python3.8/site-packages/pexpect/spawnbase.py", line 343, in expect
    return self.expect_list(compiled_pattern_list,
  File "/Users/scheiba/github/own/sc_kernel/venv/lib/python3.8/site-packages/pexpect/spawnbase.py", line 372, in expect_list
    return exp.expect_loop(timeout)
  File "/Users/scheiba/github/own/sc_kernel/venv/lib/python3.8/site-packages/pexpect/expect.py", line 181, in expect_loop
    return self.timeout(e)
  File "/Users/scheiba/github/own/sc_kernel/venv/lib/python3.8/site-packages/pexpect/expect.py", line 144, in timeout
    raise exc
pexpect.exceptions.TIMEOUT: Timeout exceeded.
<pexpect.pty_spawn.spawn object at 0x10dc1feb0>
command: /Applications/SuperCollider.app/Contents/MacOS/sclang
args: [b'/Applications/SuperCollider.app/Contents/MacOS/sclang', b'-i', b'jupyter']
buffer (last 100 chars): "receding error dump is for ERROR: Primitive '_GetLangPort' failed.\r\nFailed.\r\nRECEIVER: NetAddr\r\n\r\n\r\n"
before (last 100 chars): "receding error dump is for ERROR: Primitive '_GetLangPort' failed.\r\nFailed.\r\nRECEIVER: NetAddr\r\n\r\n\r\n"
after: <class 'pexpect.exceptions.TIMEOUT'>
match: None
match_index: None
exitstatus: None
flag_eof: False
pid: 25481
child_fd: 24
closed: False
timeout: 30
delimiter: <class 'pexpect.exceptions.EOF'>
logfile: None
logfile_read: None
logfile_send: None
maxread: 2000
ignorecase: False
searchwindowsize: None
delaybeforesend: 0.05
delayafterclose: 0.1
delayafterterminate: 0.1
searcher: searcher_re:
    0: re.compile('Welcome to SuperCollider.*')

Maybe https://github.com/capital-G/sc_kernel/commit/81886708c1a529f0fb3d93606d55bb7975636b21 fixes this

Seems to be not a problem anymore. This was probably caused by
a) not terminating the repl
b) using too large commands (e.g. for autocomplete)


layers: Move fb from RENDER_PASS_NODE to GLOBAL_CB_NODE

This is part of a renderpass instance, not of the renderpass itself.
If stored where MT put it, things go horribly wrong when recording
command buffers in parallel.
Signed-off-by: Chris Forbes<EMAIL_ADDRESS>

+1. I am curious why things go horribly wrong though. Only one thread should be calling begin or end for that render pass at a time.

LGTM :+1:

@lentinem for a given command buffer. Multiple threads may record instances of the same renderpass into /different/ command buffers concurrently, though.

@lentinem we don't even need to bring threads into it -- a single thread, doing interleaved recording of two command buffers which contain instances of the same renderpass, is enough.

Cherry-picked to master.