Bump ecstatic version

Please ensure that your pull request fulfills these requirements:

[x] The pull request is being made against the master branch
[ ] Tests for the changes have been added (for bug fixes / features)

What is the purpose of this pull request? (bug fix, enhancement, new feature,...)
Attempt to solve #619

What changes did you make?
Provide some example code that this change will affect, if applicable:

Is there anything you'd like reviewers to focus on?
The content tests all fail.  I don't see a difference in the api for ecstatic between major versions.
it should serve files from the proxy's root and file content
    ✗ should match content of the served file
        »
        actual expected

        hello, I know nodejitsu
         // /Users/ag69970/code/anthem-ai/http-server/node_modules/vows/lib/assert/macros.js:14

Please provide testing instructions, if applicable:
I am not familiar with vows or ecstatic.  Someone who is should be able to wrap this up easily.

+1

This also fixes a high-security alert from npm
CVE-2019-10775
high severity
Vulnerable versions: <= 4.1.2
Patched version: No fix
Versions of ecstatic prior to 4.1.2, 3.3.2 or 2.2.2 are vulnerable to Open Redirect. The package fails to validate redirects, allowing attackers to craft requests that result in an HTTP 301 redirect to any other domains.

Recommendation
If using ecstatic 4.x, upgrade to 4.1.2 or later.
If using ecstatic 3.x, upgrade to 3.3.2 or later.
If using ecstatic 2.x, upgrade to 2.2.2 or later.

guys can we please upgrade this?

I’m probably not going to get back to this. I think there were concerns raised that this was not trivial (in another issue, perhaps).


Text to Speech Avatar

Hi,
Part of Text to Speech avatar - one of the mentioned use case was chatbot for a travel website, but everywhere see that demo on  Text to speech Avatar on browser. Is there a way where we can utilize this feature in azure bot. Any help around the same, will be helpful.
[Enter feedback here]

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

ID: e873515a-55f7-ecdf-37dd-9b5dbb13c211
Version Independent ID: f8b9132b-c867-cd3a-c772-eaa87108711b
Content: Text to speech overview - Speech service - Azure AI services
Content Source: articles/ai-services/speech-service/text-to-speech.md
Service: azure-ai-speech
GitHub Login: @eric-urban
Microsoft Alias: eur

@shilpaCM
Thanks for your feedback! We will investigate and update as appropriate.

Hello @shilpaCM
You can use the Text to Speech avatar feature in Azure Bot Service to create a chatbot with a lifelike avatar that can speak to users. Here are the general steps to follow:

Create a bot using Azure Bot Service. You can use any of the supported languages and frameworks, such as C# or Node.js.
Add the Text to Speech avatar feature to your bot by integrating the Azure Cognitive Services Speech Service. You can use the Speech SDK to add speech capabilities to your bot, including the ability to synthesize speech from text and play it through the avatar.
Customize the avatar to match your brand and use case. You can use the Azure Bot Service Web Chat control to display the avatar in your chatbot and allow users to interact with it.

Explore these resources to integrate Text-to-Speech avatar feature into your Azure Bot Service chatbot:
https://learn.microsoft.com/en-us/azure/ai-services/speech-service/tutorial-voice-enable-your-bot-speech-sdk
https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-text-to-speech?view=azure-bot-service-4.0

@shilpaCM
We are going to close this thread, if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.
#Please-close


[ICMPv6] Allow application to register ICMPv6 handler.

This PR allows application to register ICMPv6 handler.
I modified ICMP Handler in order to receive all ICMPv6 instead of only Destination Unreachable. In that way  application or any other module can decide which type of messages it wants to process.
Currently otIcmp6RegisterHandler demands its handler to be statically allocated. In this way i avoid to have configurable maximum number of handlers (as its with StateChange callback). Would that be okay?
Apart of above:

Add API to send ICMPv6 Echo Request with specific Identifier
Modify cli example to use OpenThread's C API when it comes to Echo Request/Reply
Adjust other modules: Address Resolver, NCP

Btw. I see you have API clean up PR pending, i hope this one will not break much.

Codecov Report

Merging #1380 into master will decrease coverage by -0.36%.
The diff coverage is 91.07%.

@@            Coverage Diff             @@
##           master    #1380      +/-   ##
==========================================
- Coverage   69.29%   68.94%   -0.36%
==========================================
  Files         171      171
  Lines       26881    26694     -187
  Branches     3385     3365      -20
==========================================
- Hits        18627    18403     -224
- Misses       6843     6904      +61
+ Partials     1411     1387      -24

Impacted Files
Coverage Δ

src/core/net/ip6.cpp
56.58% <ø> (ø)
:white_check_mark:

src/core/thread/mle.cpp
80.31% <ø> (-0.94%)
:x:

src/core/net/icmp6.hpp
100% <100%> (ø)
:white_check_mark:

src/core/thread/mle_router.cpp
80.23% <100%> (+0.26%)
:white_check_mark:

include/openthread-types.h
100% <100%> (ø)
:white_check_mark:

src/core/thread/address_resolver.cpp
76.24% <100%> (+0.09%)
:white_check_mark:

src/core/openthread.cpp
46.87% <100%> (+1.04%)
:white_check_mark:

src/ncp/ncp_base.cpp
25.11% <100%> (-12.52%)
:x:

src/cli/cli.cpp
38.65% <87.5%> (+0.21%)
:white_check_mark:

src/core/net/icmp6.cpp
80.68% <91.66%> (-3.32%)
:x:

... and 14 more

Continue to review full report at Codecov.

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


Evaluation with empty predictions

Hello!
I tried to run the model evaluation script with the pretrained model weights and a custom dataset. When the model doesn't predict anything in a point cloud, it seems that the function do_eval complains. I got the following error:
Traceback (most recent call last):
  File "evaluate.py", line 390, in <module>
    main(args)
  File "evaluate.py", line 374, in main
    do_eval(format_results, val_dataset.data_infos, CLASSES, saved_path)
  File "evaluate.py", line 63, in do_eval
    iou2d_v = iou2d(torch.from_numpy(gt_bboxes2d).cuda(), torch.from_numpy(det_bboxes2d).cuda())
  File "PointPillars/utils/process.py", line 432, in iou2d
    bboxes_x1 = torch.maximum(bboxes1[:, 0][:, None], bboxes2[:, 0][None, :]) # (n, m)
IndexError: too many indices for tensor of dimension 1

The iou2d function doesn't seem to account for empty detections. Do you have any suggestions how to fix this or how it should behave?
Thanks in advance for any help!

Hello @wojtat , good question.
Update the code
https://github.com/zhulf0804/PointPillars/blob/b9948e73505c8d6bfa631ffdf76c7148e82c5942/evaluate.py#L59
to
iou2d_v = iou2d(torch.from_numpy(gt_bboxes2d).reshape(-1, 4).cuda(), torch.from_numpy(det_bboxes2d).reshape(-1, 4).cuda())

For other commands using iou2d(), .reshape(-1, 4) is also added as above.
Then have a try ?

Hi, after reshaping some of these detection arrays, it runs without crashing.
Thanks for the help!


minimize docker image size

Looks like fail is not related to your PR, it even happens on master for some reason : ( see https://github.com/romanovskyj/gongfig/issues/54

no problem! here is the docker usage updated for readme

Codecov Report

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

@@           Coverage Diff           @@
##           master      #56   +/-   ##
=======================================
  Coverage   72.95%   72.95%
=======================================
  Files           4        4
  Lines         318      318
=======================================
  Hits          232      232
  Misses         76       76
  Partials       10       10

Continue to review full report at Codecov.

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


copilot source registered multiple times.

Running :CmpStatus shows:
# ready source names
- dictionary
- nvim_lsp_document_symbol
- nvim_lsp_signature_help
- nvim_lua
- buffer
- path
- luasnip
- nvim_lsp:null-ls
- copilot
- copilot
- nvim_lsp:sumneko_lua
- copilot
- copilot

It appears any time an InsertEnter event occurs, the source is added. Perhaps using once would address the issue.

Thanks for the catch, this shouldn't be the case and I'm not sure why it is. I'll look into it.

This seems to be fixed for me after the latest patches, please reopen if the issue pops back up.

Looks better.. I am seeing this message now though:
method setEditorInfo is not supported by any of the servers registered for the current buffer

Looks better.. I am seeing this message now though:
method setEditorInfo is not supported by any of the servers registered for the current buffer

Update and try now

That fix worked.


feat: remove headers based on pattern matching

Extends the plugin to be able to remove arbitrary headers using pattern matching. It's much costly hence should be used sparingly.
Interestingly, you can still spam it by sending more than 100 headers :man_shrugging: https://docs.konghq.com/2.0.x/pdk/kong.service.response/#kongserviceresponseget_headersmax_headers

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


Subscription leak

SubscriptionManager::subscriptions maps is never cleaned up from subscription tracking and leaks their references.
I assume it should be cleaned up on unsubscribe ?

@gluck it most certainly should. Mind making a PR?


New workflow

Changed to action/setup-go work flow instead of circlci.

Sorry. This was meant for a fork.


glClear not working in eframe web

For some reason the color buffer isn't cleared in eframe web. The easiest way to replicate is with and App::update that has no CentralPanel (so the egui doesn't fill the background) but has an egui::Window.

@emilk seems like the issue is from the post processing. I returned a temporary (None, "") here and that solved the clearing issue, though it is a temporary solution.

Good catch @arshiyasolei - I made a PR with a fix


AddSub + Unsub closes my channels

I'm using a pattern where I have a communication channel that I use for a goroutine, and that channel is used to subscribe to a topic:
comms := make(chan interface{})
go func() {
  for msg := range comms {
    // do some stuff
  }
}()

mySub.AddSub(comms, "some-topic")

The problem is now and then I change the topic that I'm interested in (in my code, it's when users move from one room to another room):
mySub.Unsub(comms, "some-topic")
mySub.AddSub(comms, "some-other-topic")

Unsub will close my channel if "some-topic" is the only topic that I'm listening to. Is there a way so that when unsubscribing, the pubsub lib doesn't automatically close my channel? I can't reverse the order of the Unsub/AddSub since in reality the code is a bit more asynchronous than the example above.
The workaround for now is to create a dummy topic that all channels are subscribed to but never actually broadcasts anything.

@robbrit could you also change topic by simply subscribing to the new topic first, so that the subscription count never drops to 0?
I do agree though, closing the channel during an unsubscribe was surprising to me, particularly if the channel was created by me and not given to me from the pubsub API.
On the other hand, I understand that there isn't an API exposed to determine what topics a channel is subscribed to, and I can easily imagine use cases where it would be desirable to close the channel when subscriptions drop to 0.

The idea behind closing the channel after unsubscribing from all topics was to ensure that subscribed goroutines don't end-up waiting forever.
If you don't have information about old and new rooms at the same time, you can check whether the subscription channel has been closed and create a new one.


No project was found  on "dotnet ef database update"

PM> dotnet ef database update
No project was found. Change the current working directory or use the --project option.
had to do a cd .\RazorPagesMovie before running the command again

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

ID: 6719f08e-3bd7-dc1a-71df-f2ef9fbca9d8
Version Independent ID: 7096fdb3-612e-9e00-bd0b-8ea4886a09ce
Content: Add a model to a Razor Pages app in ASP.NET Core
Content Source: aspnetcore/tutorials/razor-pages/model.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@simonkp  thanks for reporting this. I'll get it fixed in the next update.

@simonkp  thanks for the report. I added directory instructions.


'NoneType' object is not subscriptable

I get the following error if the product is not available anymore.
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-129-1b28dcb36038> in <module>
----> 1 product = amazon.get_product('B071YR89XJ')

~/dev/project/lib/python3.6/site-packages/amazon/paapi.py in get_product(self, product_id, condition, merchant, async_req)
    166                                                     'get_products for multiple requests')
    167         return self.get_products(product_id, condition=condition, merchant=merchant,
--> 168                                  async_req=async_req)[0]
    169
    170     def search_products(self, item_count=10, item_page=1, items_per_page=10, keywords=None,

TypeError: 'NoneType' object is not subscriptable

eg. page: https://www.amazon.com/natiga-ng-0141-Cherrys-Enamel-Brooch/dp/B071YR89XJ
even the amazon page shows 404 but product used to be available.
in this case error handling could be improved.
Thanks

Solved on next release, thanks for the help!


Console spamming Exnihilo Adscensio error

Error: https://pastebin.com/W3wAwK4M

That's actually a bug in Exnihilo. Please report to them


Add all UI dependencies.

Coverage remained the same at 19.237% when pulling 21ba9cb8ae70fbce47b30207b55ded5aef2e0969 on fix/release into 5624417c076bc58b4c3f6374dd91f0f15f640f0a on master.


Privacy Day Task; law.mit.edu/OpenConsent - Needs to be updated

Need to get the link to the unconference project for privacy day onto this page, with ideally.
The I Don’t Agree campaign weblink with a note:  Developed in London during the FutureOfCommerce Un-Conference is now in action.
Assets usable so far

Link to  the project presentation https://docs.google.com/presentation/d/1a7rVNFULxttnf8xlZKHYKlZw88XuNurqQZCDD50g4bo/edit?usp=sharing
Link to the I Dont Agree website - and a notice that this is now in progress (get involved)
A link to get involved in the project to go forward and
Two Unconference videos - introducing the effort

Mark - I invite you to write up some HTML you propose for the page so I have something to consider.

ah,, this is the problem, I would have to learn html again.  its been 15 years

Is there an existing link to the hackathon/unconference material?

You can do it in markdown on a GitHub page (using the .md extension) and it is just as good.   Actually, it is much better, because it is focused on basic content and it only needs sufficient functionality with winks and images and not really a lot of fuss around formatting. Also you can do it right here in the same get hub repository that the project is using. That is invaluable.
As a "why using GitHub issues is the very best method ever in the whole wide world for project management and getting things done" example that you can feel the goodness of, try this:
(1) once you have it finished the markdown file, please provide a link in a comment to this issue.
(2) at that point I can either add it as HTML to the project page on the Drupal web site as is, or iterate the markdown using this very issue thread for your consideration, and upon agreement incorporate the corresponding HTML into the webpage
Github issues support markdown. However, it is recommended that you create a markdown file in the repository and refer to that in this thread because it is not possible to link to individual comments within an issue at this point.  So in this issue thread when there is a question about having specific content go this way or that way it's possible to literally put it between dividing lines within the issue ticket to show examples or to put it within a table with one example on the left and another option on the right or any other way that makes sense to discuss and resolve that snippet of content and therefore to resolve this issue and publish or appropriate page.
(3) when this issue is resolved then all we have to do is close the issue and we have both a record of what happened that we or others can review later to know what happened and also a simple and always up-to-date task list based on filtering only active issues in the project repository.
Many people are used to and perhaps without thinking continue to use email for project management. That with my preferred method for many years and I had not yet found a project management system that was better feeling then direct email from me to others for projects I was in charge of until github issues.  I hope that you have an opportunity to see with this issue item related to a web page that matters to you how very easy, efficient, effective, and significantly better then on the next best option this get hub issues method can be.

The existing material is in the project roster on the wiki of the event site. The report out video that you did on YouTube is not yet there. There are other materials that you have generated as well and all that should be added to the page you're creating.

Just realized - this issue is not relevant to the work Caitlin and Didar are doing now and should not be on this ticket service at this time while an active development and project cycle are in process.  When you know what content you prefer describing the global open consent project please just communicate that to me directly and we can close this ticket on this project now.

https://github.com/OpenConsent/PrivacyDay/issues/1


More info on what is happening :)

As I have say on issue 29 https://github.com/crowdsecurity/cs-cloudflare-bouncer/issues/29# the bouncer seem to do something ? maybe ? But I don't know if the script is broken, if CF is slowing down the process ? If I just need to wait ?
Then it should be really helpfull to get more information on each process/step when we do -d or -s ...
This was 35min ago now :
INFO[28-06-2021 15:00:56] ip list crowdsec_block already exists         account_id=xxxxx
INFO[28-06-2021 15:00:56] ip list crowdsec_block already exists         account_id=xxxxx

Hi Dude ;)
Democrate_Agnostique (oui, ça date)


RuntimeError: Unexpected error on find the converter for op <class 'mrcnn.model.BatchNorm'>

I'm trying to convert a MaskRCNN model (.h5) to .onnx with keras2onnx.
Execution code
keras2onnx.convert_keras(model.keras_model, "test1.onnx", target_opset=11)
Error message
RuntimeError: Unexpected error on find the converter for op <class 'mrcnn.model.BatchNorm'>
MaskRCNN's BatchNorm corresponds to BatchNormalization in onnx's Operator Schemas,
but the names are different, so we get an error.
System information
OS Platform and Distribution : windows10
ONNX version : 1.9.0
Python version: : 3.7.10
keras2onnx : 1.8.0
tensorflow-gpu =1.14.0 (MaskRCNN is not well compatible with tf2.x.)
keras : 2.2.4
Reproduction instructions
using maskRCNN

import config
import mrcnn.model as modellib
import os
from mrcnn import utils

model = modellib.MaskRCNN(mode="training", config=config,
model_dir="logs/model")
config = Config()

MODEL_PATH = 'mask_all.h5'
model.load_weights(MODEL_PATH, by_name=True,
exclude=["mrcnn_class_logits", "mrcnn_bbox_fc",
"mrcnn_bbox", "mrcnn_mask"])

import keras2onnx
keras2onnx.convert_keras(model.keras_model, "mask_all.onnx", target_opset=11)

Expected behavior
Mask_all.onnx is generated by converting mask_all.h5.

Just edit operator definitions?
If it's solution, I would like to know how to edit the operator definition.


Store info in region cache won't be refreshed if tiflash nodes were ever scaled-in

Bug Report
Please answer these questions before submitting your issue. Thanks!
1.  This time, produce many remote reads by e.g. scale-out some tiflash nodes (to trigger region movement).

2. What did you expect to see? (Required)
The queries after scale-in succeed.
3. What did you see instead (Required)
Query failed with:
other error for mpp stream: ... get store failed:  2: invalid store ID ...

This is because that a stale store info (the scaled-in store) exists in region cache in tiflash client-c. When doing remote read, tiflash will ask pd about the latest region info using the stale store id. However, when encountering the error of invalid store id, the backoff logic doesn't invalidate the store info in the region cache before, causing tiflash keeps using the invalid store id until the backoff threshold is triggered and subsequently reports error.
4. What is your TiFlash version? (Required)
6.1.5

PD: v6.1.5
error message is put into grpc status error: https://github.com/tikv/pd/blob/v6.1.5/server/grpc_service.go#L468-L470
The behavior of tiflash is as expected because it's recommended to retry grpc error.
PD: master
error message is put into response of GetStore: https://github.com/tikv/pd/blob/bde0a1b4255e623c4c86d9dfe07fbf0bd552502b/server/grpc_service.go#L483-L488
We need to close it issue and make PD to cherry pick commit bde0a1b4255e623c4c86d9dfe07fbf0bd552502b to related branches.

But I think we can not just cherry pick PD commit, since client-c does not handle the error in the response of GetStore?
https://github.com/tikv/client-c/blob/88d295d74502803780266a73873e6e1f685d4e13/src/pd/Client.cc#L423 just call return response.store();

PD's fix is https://github.com/tikv/pd/pull/5310. This PR will be backported into 6.1 and released in 6.1.7. Closing this one.

PD part only miss in release 6.1, and the cherry-pick is https://github.com/tikv/pd/pull/6724


Traces sample rate cannot be disabled

Environment
sentry/sentry-laravel: 3.0.1
laravel/framework: 9.39.0
Steps to Reproduce

Use the default config file containing: 'traces_sample_rate' => (float) (env('SENTRY_TRACES_SAMPLE_RATE', 0.0)),

Expected Result
I would expect Performance tracing to be disabled
Actual Result
It is not disabled and we're almost at the point where we have to upgrade our sentry plan because we're running out of events rapidly

I moved this to the core SDK, as the issue needs to be fixed there.
I think we are missing the following behavior:

By default, traces_sample_rate should be null, so we do exit early and do not take anything else into account.
If a user applies traces_sample_rate 0 or higher, we check in the order of traces_sampler -> parent_sampled -> traces_sample_rate.

@stayallive How does this sound to you?

So zero doesn't really mean zero I guess? I will have to document this carefully in my downstream package :)   Having a toggle + sample rate seems potentially more intuitive.

@cleptric this sounds good to me, as long as we document this correctly. Are you aware if other SDKs handle it a similar way?
Currently the docs aren't a 100% correct either too: https://docs.sentry.io/platforms/php/configuration/options/#tracing-options

Yes, our Python SDK uses None https://github.com/getsentry/sentry-python/blob/e6238d828e11d63833b9a1400aaf8286b05d1c02/sentry_sdk/tracing_utils.py#L113##

Fixed in 3.12.0 https://github.com/getsentry/sentry-php/releases/tag/3.12.0


Using dart:ui from non-main-thread Isolates crashes

Latest update (tl;dr: no current plans): https://github.com/flutter/flutter/issues/10647#issuecomment-1167923640
Steps to Reproduce
In a fresh codebase generated by flutter create, I added the following functions and amended the main() function. Code taken from this example:
void echo(SendPort sender) {
  print("echo() the Isolate has been spawned!");
  ReceivePort receivePort = new ReceivePort();
  sender.send(receivePort.sendPort);
  receivePort.listen((data) {
    String msg = data[0];
    SendPort replyTo = data[1];
    print("Isolate received: $msg");
    WidgetsFlutterBinding.ensureInitialized();
    replyTo.send("Greetings from echo() the Isolate!");
  });
}

Future sendReceive(SendPort port, String msg) {
  ReceivePort receivePort = new ReceivePort();
  port.send([msg, receivePort.sendPort]);
  return receivePort.first;
}

void main() {
  ReceivePort receivePort = new ReceivePort();
  Future<Isolate> remote = Isolate.spawn(echo, receivePort.sendPort);
  remote.then((_) => receivePort.first).then((sendPort) {
    sendReceive(sendPort, "message sent from main()").then((msg) {
      print("Main received: $msg");
    });
  });
  runApp(new MyApp());
}

When I comment out the WidgetsFlutterBinding.ensureInitialized(); call, everything runs smoothly. Leaving it in, the app crashes. When I run it in SkyShell with that call left in, I get a seg fault:
echo() the Isolate has been spawned!
Isolate received: message sent from main()
Segmentation fault: 11

What is happening here? Should WidgetsFlutterBinding.ensureInitialized() be able to be called from a spawned Isolate?
Flutter Doctor
[✓] Flutter (on Mac OS X 10.12.5 16F73, locale en-US, channel alpha)
    • Flutter at /Users/emshack/flutter
    • Framework revision e2f54df5ab (10 days ago), 2017-06-02 10:43:54 -0700
    • Engine revision 1f2aa07571
    • Tools Dart version 1.24.0-dev.3.0

[✓] Android toolchain - develop for Android devices (Android SDK 25.0.3)
    • Android SDK at /Users/emshack/Library/Android/sdk
    • Platform android-25, build-tools 25.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version: OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] iOS toolchain - develop for iOS devices (Xcode 8.3.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 8.3.2, Build version 8E2002
    • ios-deploy 1.9.1
    • CocoaPods version 1.2.0

[✓] Android Studio (version 2.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Gradle version 3.2
    • Java version: OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] IntelliJ IDEA Community Edition (version 2016.3.4)
    • Dart plugin version 163.13137
    • Flutter plugin version 12.1

[✓] Connected devices
    • iPhone 7 Plus • 09A7F58D-C832-4D91-B681-F67134E64361 • ios • iOS 10.3 (simulator)

dart:ui doesn't exist in non-main isolates, so I wouldn't expect much of the Flutter framework to work there.  FYI @Hixie.
We're currently in the process of making some improvements to our engine to allow exposing dart:ui on non-main isolates, but those are not yet complete.

Ok, please let me know when something like this would be possible!

This will also help another part of our project where we currently spawn another process and communicate via HTTP as a workaround.  So +1 to making this work in an isolate.

@GaryQian is currently working on wiring up libtxt as our new txt backend.  I'm told that's the largest single blocker to being able to use dart:ui off the main thread.  I suspect it may be several months before that's all landed and integrated and off-main-thread dart:ui is support at our current schedules though.  @abarth or @Hixie may correct my estimates however.

@chinmaygarde Any idea what the current status of this is?
We will have to come to a decision on what needs to be supported here by 1.0.

Launching multiple Flutter views in their own isolates when their own dedicated threads is now supported (and is the default). Having multiple isolates talk to the same view is not currently supported and is not a priority.
We should probably not crash when WidgetsFlutterBinding.ensureInitialized is called from a secondary isolate however. Happy to work towards understanding if the current scheme of having multiple Flutter views solves @emshack's use case.

I need this so much, especially for a heavy things like Path.combine.
I'm having a frame running for 3 seconds because there is no way to isolate native executions on Path.

I have same problem

Same problem

Did you guys find any solution to open UI from isolate ?

Issue replicable on latest beta.
I/flutter (16811): echo() the Isolate has been spawned!
I/flutter (16811): Isolate received: message sent from main()
E/flutter (16811): [ERROR:flutter/runtime/dart_isolate.cc(882)] Unhandled exception:
E/flutter (16811): UI actions are only available on root isolate.

Although moving WidgetsFlutterBinding.ensureInitialized(); inside main() method doesn't throw the said error.

flutter doctor -v
[✓] Flutter (Channel beta, 1.22.0-12.2.pre, on Mac OS X 10.15.4 19E2269, locale
    en-IN)
    • Flutter version 1.22.0-12.2.pre at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 2bafdc8226 (4 days ago), 2020-09-25 12:48:22 -0700
    • Engine revision f763b5b9b9
    • Dart version 2.10.0 (build 2.10.0-110.5.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.49.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.11.0

[✓] Connected device (2 available)
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome
      85.0.4183.121

• No issues found!

Issue replicable on latest beta.
I/flutter (16811): echo() the Isolate has been spawned!
I/flutter (16811): Isolate received: message sent from main()
E/flutter (16811): [ERROR:flutter/runtime/dart_isolate.cc(882)] Unhandled exception:
E/flutter (16811): UI actions are only available on root isolate.

Although moving WidgetsFlutterBinding.ensureInitialized(); inside main() method doesn't throw the said error.
flutter doctor -v

could you give a small example , please?  thank you

Is this still not possible? i'm building 1000's of Paragraph objects and would like to do it in in non-main isolates.. but still getting this crash

I am using dart:ui for image processing. Processing a bunch of images freezes my UI, and I, unfortunately, was unable to get the code running in a isolate.
// Some sample code that can't be run in an isolate:
Future<Image> pngRead(File pngFile) async {
  final bytes = await pngFile.readAsBytes();
  final codec = await instantiateImageCodec(bytes);
  final frame = await codec.getNextFrame();
  return frame.image;
}

Future<Image> generateImage(
  CustomPainter? painter,
  int width,
  int height,
) async {
  final recorder = PictureRecorder();
  final canvas = Canvas(recorder);
  painter?.paint(canvas, Size(width.toDouble(), height.toDouble()));
  final picture = recorder.endRecording();
  return picture.toImage(width, height);
}

@Hixie @chinmaygarde Hi bro, I think this is very important thing that flutter should support.
What should I do if I want to change app language via Get.updateLocale()?
App always lag when I call that method on main isolate. That's too sad!
Please support us a solution, thank you!

Any progress on this? we're stuck to proceed with flutter because of the below issues.

We've to use multiple isolates for painting a spreadsheet but dart:ui is not available in non-ui isolates.
send the ui:image to the root isolate immediately. currently the decoding of image received at ui isolate takes a lot of ms.

Is there a way to overcome this issue?

It has been 5 years, Flutter still not fix this problem, It is very important for us,  I could fix this problem with SurfaceView on Android, how to fix this on Flutter?

Any updates on this?

Regarding usecases, I am using dart ui.PictureRecorder to draw a series of PNG images to be used in an overlay that gets merged on top of a user uploaded video. At a frame rate of 30+ frames per second, the app needs to generate thousands of PNGs for a 10 minute video. Of course this doesn't run well on the main isolate and I need to run this work on a pool of isolates. I initially ran in to the same problem that started this thread while attempting to use regular isolates. As such, I switched to use the Flutter Isolates package..  Dart UI works in the Flutter Isolates package, however, I ran into other bugs that have been open for years that render the package unusable for this kind of work.
Unfortunately this is one of a many dead-ends I have encountered while trying to build my app in flutter. I will be honest, I really don't want to spend my time filling in the gaps of a half-functional framework with patches, PRs, and design doc I have to write myself. I just want to build a beautiful app (like Tim Sneath says all the time at the flutter events. ), but this has proved very difficult with flutter. Using flutter for a real-world project is like  trying to use a kid's plastic toy hammer on a real construction job.

@Hixie FYI, I describe a use-case and attempted mitigations related to this constraint in #115257

From a Flutter application developer’s perspective, dart:ui is no different from any other general purpose dart library.  For example, an application developer might use dart:math for literally infinite many use cases, some of which might need to run inside an isolate for performance reasons. The developer would be surprised and disappointed to find that after successfully compiling their Flutter application, a call to dart:math breaks when called from an isolate at runtime.  This is exactly what happens with dart:ui as evidenced by the number of issues I have stumbled across that are all asking to use some component of dart:ui in an isolate. Within each of those issues, there are many additional use cases contributed by other users via comments.  Most of these use cases are attempting to use dart:ui as a generic drawing or image  processing tool.
I gather that there are some “unsafe” components in dart:ui that should not be called from an isolate that can impact application rendering and frame scheduling.  But, to reiterate, many of these use cases are looking to use the “safe” components of dart:ui  (Canvas, Picture, PictureRecorder, Paint, Path,  Radius, Rect, Offset, Image, Gradient, etc.), using dart:ui as a generic drawing or image manipulation tool.  But then, why are these "safe" generic drawing utilities packaged with “unsafe” Flutter components?  Alternatively,  why are the “safe” generic drawing utilities indiscriminately restricted from isolates along with the “unsafe” Flutter components. To go back to the analogy, would it make sense for the Flutter team to restrict  dart:math from isolates if there was some special Flutter code packaged with dart:math. Of course it doesn't, but it appears that that is exactly what is happening with dart:ui.

Reproduces on the latest versions of flutter. Updating labels.

code sample
import 'dart:isolate';

import 'package:flutter/material.dart';

void echo(SendPort sender) {
  print("echo() the Isolate has been spawned!");
  ReceivePort receivePort = ReceivePort();
  sender.send(receivePort.sendPort);
  receivePort.listen((data) {
    String msg = data[0];
    SendPort replyTo = data[1];
    print("Isolate received: $msg");
    WidgetsFlutterBinding.ensureInitialized();
    replyTo.send("Greetings from echo() the Isolate!");
  });
}

Future sendReceive(SendPort port, String msg) {
  ReceivePort receivePort = ReceivePort();
  port.send([msg, receivePort.sendPort]);
  return receivePort.first;
}

void main() {
  ReceivePort receivePort = ReceivePort();
  Future<Isolate> remote = Isolate.spawn(echo, receivePort.sendPort);
  remote.then((_) => receivePort.first).then((sendPort) {
    sendReceive(sendPort, "message sent from main()").then((msg) {
      print("Main received: $msg");
    });
  });
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: const Home(),
    );
  }
}

class Home extends StatelessWidget {
  const Home({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Material App Bar'),
      ),
      body: const Center(
        child: Text('some text'),
      ),
      floatingActionButton: FloatingActionButton(
        child: const Icon(Icons.add),
        onPressed: () {},
      ),
    );
  }
}

logs
Launching lib/main.dart on macOS in debug mode...
Building macOS application...
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, id:00008103-000329201AD1001E }
{ platform:macOS, arch:x86_64, id:00008103-000329201AD1001E }
Debug service listening on ws://<IP_ADDRESS>:51624/HWY-7KvoUsw=/ws
Syncing files to device macOS...
flutter: echo() the Isolate has been spawned!
flutter: Isolate received: message sent from main()
[ERROR:flutter/runtime/dart_isolate.cc(1097)] Unhandled exception:
UI actions are only available on root isolate.
#0      FfiTrampoline____nativeSetNeedsReportTimings$Method$FfiNative$Ptr (dart:ffi)
#1      PlatformDispatcher.__nativeSetNeedsReportTimings (dart:ui/platform_dispatcher.dart:546:24)
#2      PlatformDispatcher._nativeSetNeedsReportTimings (dart:ui/platform_dispatcher.dart:543:52)
#3      PlatformDispatcher.onReportTimings= (dart:ui/platform_dispatcher.dart:535:29)
#4      SchedulerBinding.addTimingsCallback (package:flutter/src/scheduler/binding.dart:308:26)
#5      SchedulerBinding.initInstances (package:flutter/src/scheduler/binding.dart:240:7)
#6      ServicesBinding.initInstances (package:flutter/src/services/binding.dart:37:11)
#7      PaintingBinding.initInstances (package:flutter/src/painting/binding.dart:20:11)
#8      SemanticsBinding.initInstances (package:flutter/src/semantics/binding.dart:18:11)
#9      RendererBinding.initInstances (package:flutter/src/rendering/binding.dart:30:11)
#10     WidgetsBinding.initInstances (package:flutter/src/widgets/binding.dart:249:11)
#11     new BindingBase (package:flutter/src/foundation/binding.dart:151:5)
#12     new _WidgetsFlutterBinding&BindingBase&GestureBinding (package:flutter/src/widgets/binding.dart)
#13     new _WidgetsFlutterBinding&BindingBase&GestureBinding&SchedulerBinding (package:flutter/src/widgets/binding.dart)
#14     new _WidgetsFlutterBinding&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding (package:flutter/src/widgets/binding.dart)
#15     new _WidgetsFlutterBinding&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding (package:flutter/src/widgets/binding.dart)
#16     new _WidgetsFlutterBinding&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding (package:flutter/src/widgets/binding.dart)
#17     new _WidgetsFlutterBinding&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding (package:flutter/src/widgets/binding.dart)
#18     new _WidgetsFlutterBinding&BindingBase&GestureBinding&SchedulerBinding&ServicesBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding (package:flutter/src/widgets/binding.dart)
#19     new WidgetsFlutterBinding (package:flutter/src/widgets/binding.dart)
#20     WidgetsFlutterBinding.ensureInitialized (package:flutter/src/widgets/binding.dart:1260:7)
#21     echo.<anonymous closure> (package:ent/main.dart:13:27)
#22     _RootZone.runUnaryGuarded (dart:async/zone.dart:1593:10)
#23     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
#24     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#25     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:774:19)
#26     _StreamController._add (dart:async/stream_controller.dart:648:7)
#27     _StreamController.add (dart:async/stream_controller.dart:596:5)
#28     _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:189:12)
Application finished.

flutter doctor -v
[✓] Flutter (Channel stable, 3.7.7, on macOS 13.2.1 22D68 darwin-arm64, locale en-GB)
    • Flutter version 3.7.7 on channel stable at /Users/nexus/dev/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2ad6cd72c0 (9 days ago), 2023-03-08 09:41:59 -0800
    • Engine revision 1837b5be5f
    • Dart version 2.19.4
    • DevTools version 2.20.1

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] Android Studio (version 2022.1)
    • Android Studio at /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Community Edition (version 2022.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 72.1.4
    • Dart plugin version 223.8888

[✓] VS Code (version 1.76.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.60.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.2.1 22D68 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 111.0.5563.64

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

[!] Flutter (Channel master, 3.9.0-9.0.pre.32, on macOS 13.2.1 22D68 darwin-arm64, locale en-GB)
    • Flutter version 3.9.0-9.0.pre.32 on channel master at /Users/nexus/dev/sdks/flutters
    ! Warning: `flutter` on your path resolves to /Users/nexus/dev/sdks/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutters. Consider adding /Users/nexus/dev/sdks/flutters/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/nexus/dev/sdks/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutters. Consider adding /Users/nexus/dev/sdks/flutters/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 53dfd23b04 (4 hours ago), 2023-03-17 01:59:19 -0400
    • Engine revision d9e65441ea
    • Dart version 3.0.0 (build 3.0.0-339.0.dev)
    • DevTools version 2.22.2
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] Android Studio (version 2022.1)
    • Android Studio at /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Community Edition (version 2022.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 72.1.4
    • Dart plugin version 223.8888

[✓] VS Code (version 1.76.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.60.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.2.1 22D68 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 111.0.5563.64

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

If Google does not want to fix this issue, can they provide a workaround with a working example?

From a Flutter application developer’s perspective, dart:ui is no different from any other general purpose dart library. For example, an application developer might use dart:math for literally infinite many use cases, some of which might need to run inside an isolate for performance reasons. The developer would be surprised and disappointed to find that after successfully compiling their Flutter application, a call to dart:math breaks when called from an isolate at runtime. This is exactly what happens with dart:ui as evidenced by the number of issues I have stumbled across that are all asking to use some component of dart:ui in an isolate. Within each of those issues, there are many additional use cases contributed by other users via comments. Most of these use cases are attempting to use dart:ui as a generic drawing or image processing tool.
I gather that there are some “unsafe” components in dart:ui that should not be called from an isolate that can impact application rendering and frame scheduling. But, to reiterate, many of these use cases are looking to use the “safe” components of dart:ui (Canvas, Picture, PictureRecorder, Paint, Path, Radius, Rect, Offset, Image, Gradient, etc.), using dart:ui as a generic drawing or image manipulation tool. But then, why are these "safe" generic drawing utilities packaged with “unsafe” Flutter components? Alternatively, why are the “safe” generic drawing utilities indiscriminately restricted from isolates along with the “unsafe” Flutter components. To go back to the analogy, would it make sense for the Flutter team to restrict dart:math from isolates if there was some special Flutter code packaged with dart:math. Of course it doesn't, but it appears that that is exactly what is happening with dart:ui.

I second that. In my point of view, there are two main usecases:

Run intensive rendering-related code in other isolates as to not block main thread.
Use general classes related to rendering, but not coupled to Flutter, to implement custom render-related code.

The 1st one is harder to implement, since it requires changing the engine, and is related to other limitations of the current state of threading in Dart.
The 2nd one is simpler, and could be easier to implement. I imagine Dart can easily choose to allow importing files from dart:ui that do not import from anything related to flutter. I don't know if that's possible, but is sounds more doable than solving the 1st point.
Personally, more than a couple times I had to implement code related to rendering, either as a Dart library or to run in an Isolate, not necessarily on Flutter. Being unable to use Offset, Rect, Size, Color etc. is just a weird decision. Why should I manually implement Rect if there is a perfect implementation available in core? Instead, devs are expected to make them from scratch (a 3rd party library for those rendering utils would be nice), basically making libraries naturally incompatible with each other, for not adhering to a common interface.

Would one way of potentially working around this be to use Lightweight flutter engines in a pure Flutter app? (ie. notAdd-to-App).  Since instances of the Lightweight flutter engines have their own threads but share some resources they would be fast to start up and perhaps could be used for offscreen rendering?    There are so many use cases which require being able to draw to a canvas in an isolate is required to get Flutter to perform any where near native solutions.

This is disappointing
Flutter should take a look at this issue please

By all accounts this has been an issue since 2017, and in the 6 long years since, the issue has never been addressed.  For all the talk of Flutter having a highly performant rendering engine, it does not support any use-cases where complex imagery has to generated.  The only possibility to accomplish this without affecting user interactions is if the rendering of the imagery in background isolates.  With that not being possible, Flutter is orders of magnitude slower than Skia / Xamarin in accomplishing this, so slow as to be unusable.  I guess Flutter is only meant for cartoons, forget use cases like GIS or real time updates ...

@Medit8r I hit this issue back in 2021, not sure if I commented here, but seems like this issue is not going to be fixed unless there is a change in the flutter design itself, something I doubt they will pull anytime soon, the project I started back then in flutter I had to rewrite twice to go around this issue with no luck sadly, I went to discover different technologies and as far as I know Xamarin is Xml based, not much what a flutter dev would like to move to, the technology I recommend is Jetpack compose and Compose Multiplatform, developed by JetBrains themselves, I worked with it, they have coroutines where u can pull some ui logic into another thread (if safe to call it a thread), but basically what we exactly want! which is to offload some ui code into another isolate. Kotlin is also super cool as well, so no complains so far, apart from being relatively new, back then I doubted the move from flutter, but looking into 2023, Although flutter is very promising and I like it, I simply don't regret the move I made. So I recommend it to everyone.👌

Isolates from the Flutter Isolates package works fine with calls to dart.ui on both IOS and Android. I have been using it to generate lots of images from a pool of Flutter Isolates.

Just want to add my use case:
I use dart:ui & Canvas to render thousands of video frames.
I'd like to use multiple isolates to increase speed.

I released a new plugin that workarounds this issue.  https://pub.dev/packages/dart_ui_isolate
It is similar to the flutter_isolate package, but is specifically aimed at allowing dart:ui to run in an isolate.

@chipweinberger Thank you for that! We dropped a project a couple of years ago because of this issue. We're planning to give it another chance in the next couple of months, so I'll be testing your plugin then.

I've released a new plugin. https://pub.dev/packages/dart_ui_isolate
It is very similar to the flutter_isolate package, but is specifically for allowing dart:ui to run in an isolate, without the additional complexity of external plugin support.
Due to that, it supports FlutterEngineGroup which saves 100s of megabytes of memory.

Can you show an example of how to use it with widgets?

What I understood from @chipweinberger, ui isolates can be used from Android, iOS and OSX. Are there any plans to support the other platforms?
Independently, even when using this functionality on supported platforms, I'm either holding it wrong or it's pretty clunky. Let's say I rasterize an image with dart:ui on a child ui isolate, I then have to copy the image bytes into the dart isolate to then send it over, to then decode the image which will copy the bytes back to native. Naively, I would have hope to use ImageDescriptor, i.e. just sending a pointer to the image in memory, however ImageDescriptor doesn't seem to be serializable[^1]. With this new functionality, should it be?

Can you show an example of how to use it with widgets?

Non-authoritatively: I don't think that's an intended use-case

[^1]: Unhandled Exception: Invalid argument: is a regular instance reachable via : Instance of '_NativeImageDescriptor'

deduping into https://github.com/flutter/flutter/issues/13343


Add version number to the archive

Adding a version number to the archive will improve the build integrity on CI.

@royshil ping I cannot assign you as a reviewer because I don't have write access to this repo

@umireon you're now an admin here


Add notes on running the application in dev env

There are some manual tinkering that is necessary for initial setup
which is not documented. This addition should help any new-comers run
the application from scratch.

:thought_balloon: :+1:


Please help! Win 10 Pro LTSC x64 v1809 10.0.17763.3232

termsrv.zip
TNX!!!

file from previous post helps!
https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini

why update.bat didn't work?


Fixes #36 - Babel and CoreJS used instead of ts-loader to transpile and polyfill

@predikament & @asgvard do you want to check this?
Main change is moving from ts-loader to Babel+CoreJS that provides a clean and polyfilled ES5 build, this closes #36

Any news about this PR ?

@predikament & @asgvard do you want to check this? Main change is moving from ts-loader to Babel+CoreJS that provides a clean and polyfilled ES5 build, this closes #36

Hello @MFlyer!
Thanks a lot for your contribution, it is highly appreciated.
I wanted to inform you that we have scheduled this (technically #36) to be looked into during our current sprint, so it should be addressed soon.
(@siarheipashkevich: I hope this answers your question as well. ⬆)
As a side note we are not 100% convinced regarding replacing the loader to resolve this issue, so we will look a bit more into the pros and cons of the different approaches in relation to fixing this.
If we do decide this change is the way to go then we will likely merge this PR as it stands, but we'll of course let you know regardless.
Cheers,
@predikament

Hello,
Since declaration files are quite crucial, we would like to still rely on the TS config and ts-loader. We are also using ts-loader on other projects, so we'd prefer to have it consistent.
However, this problem can be solved by replacing Reflect with the other alternative.
Also what we've done on some projects that require ES5, we have added this package to a Bable loader on that project itself via include path, so it gets transpiled additionally in the host project. That could be a temporary solution for anyone having this problem. It's not a lot of work in terms of finding a solution to it and make a new release, but it needs to be agreed internally on who will work on it and when, and that takes time :)
Thanks for your patience.

@asgvard any news on this?
Cheers
M.

Hi @MFlyer ,
We decided to replace Reflect.deleteProperty by just using delete, as it was done in this PR. Then we haven't introduce any change to ts-loader.
Please let me know if that works properly for you.
In the meantime I will close this PR.


Decompiler shows uint8_t as char

Describe the bug
Most of the time, especially dealing with unsigned data, I'd prefer to see the data in hex. I have Options > Decompiler > Display > Integer Format = Force Hexadecimal. However the decompiler still shows uint8_t typed data as char. In this case, uint8_t is coming from generic_clib, with base type of uchar.
This seems maybe similar to https://github.com/NationalSecurityAgency/ghidra/issues/2565
To Reproduce
Steps to reproduce the behavior:

Define a function taking uint8_t such as void f(uint8_t)
Have a call like f(1)
Decompiler shows f('\x01')

Expected behavior
Decompiler should show f(1) (or f(0x01))
Environment (please complete the following information):

OS: Windows [Version 10.0.19042.928]
Java Version: openjdk 15.0.2 2021-01-19
Ghidra Version: f91ba90fe8b73d60df7ceb52427a61c8f4a8ebcf
Ghidra Origin: locally built

A pending change allows the decompiler to respect the format settings on typedef data-types.  For the situation described here: you would find the uint8_t typedef within the Data Type Manager window and select the Settings... menu action from the right-click pop-up menu, then in the resulting dialog select "hex" from the Format drop-down menu.


Python 3.5 support

Is Python 3.5 support a feature people want?
Problem definition
Variable annotations are not supported in Python 3.5. This causes a syntax error on module load.
Example variable annotation:
def fn():
    a: int = 5
    return a

There may also be other issues that can only be found once the code is run without variable annotations.
Current behaviour and workarounds
No work-around possible: Python 3.5 raises a SyntaxError as the variable-annotation syntax is not supported
Proposed solution
Remove variable annotations and annotate variable types using comments

Python 3.5 is officially deprecated by Python maintainers


signal problem on solaris

I've been able to compile and run libmill on ancient solaris version running on ancient SPARC box:
SunOS 5.10 Generic_141414-10 sun4u sparc SUNW,Sun-Blade-100
The only problem seem to be signals used in two tests (chan, signals). Those two tests fail in weird ways.

Maybe we should use sigaction(2), instead of signal(2). But do you want to support ancient solaris?

It's just that I have an access to the box. I haven't expected it to work but, surprisingly, it did. The fact that it works on a RISC processor is good news as well.

Too many unknowns here, ancient computer, uncommon microarchitecture, different OS. We should try on Solaris/Illumos on a modern hardware rather. Closing the ticket for now.


urlifijs and slugify behaves differently

Leading to some errors when slugifying non latin words

Approved solution: Vendorize https://github.com/dreikanter/python-urlify and use it instead of django slugify

A test branch is almost ready, but I'd refrain to merge this at this later stage, pushing to 3.1.2

Moving to 3.2 as this will change the CMS behavior

@yakky any update on this?

It's a more hairy issue than it looks. Let's skip this to 3.3. Django itself it's changing a bit the way it handles this

Linked to #4272
Closing this as wontfix


We need more information on the SelfSizingDelegate

What i m missing is a MeasureMode,
MeasureMode
{
   Undefined,
   Exactly,
   AtMost
}

Undefined is -  ok i don’t have any constrain use the max value you want,: MeasureMode AtMost  - says take this constrain (parent size), measure yourself on it and try to be the min size you want , and MeasureMode.Exact is ok please use the size i gave to you .. for example in Stretch mode ..
void HandleSelfSizingDelegate(Xamarin.Flex.Item item, ref float width, ref float height)
{
    var widthMode = FlexMeasureMode.Undefined;
    var heightMode = FlexMeasureMode.Undefined;

    var availableWidth = item.Parent.Width;
    var availableHeight = item.Parent.Height;
    var size = _measure?.Invoke(item as IFlexNode, availableWidth, widthMode, availableHeight, heightMode);
    width = (float)size.Value.Width;
    height = (float)size.Value.Height;
}

Here's my code on the Xamarin.Forms side of things
Size MeasureView(IFlexNode node, float width, FlexMeasureMode widthMode, float height, FlexMeasureMode heightMode)
{
	var constrainedWidth = (widthMode == FlexMeasureMode.Undefined) ? float.MaxValue : width;
	var constrainedHeight = (heightMode == FlexMeasureMode.Undefined) ? float.MaxValue : height;

	View view = node.Data as View;

	var sizeRequest = view.Measure(constrainedWidth, constrainedHeight);

	var sizeThatFitsWidth = (float)sizeRequest.Request.Width;
	var sizeThatFitsHeight = (float)sizeRequest.Request.Height;

	var finalWidth = SanitizeMeasurement(constrainedWidth, sizeThatFitsWidth, widthMode);
	var finalHeight = SanitizeMeasurement(constrainedHeight, sizeThatFitsHeight, heightMode);

	return new Size(finalWidth, finalHeight);
}

static float SanitizeMeasurement(float constrainedSize, float measuredSize, FlexMeasureMode measureMode)
{
	float result;
	if (measureMode == FlexMeasureMode.Exactly)
	{
		result = constrainedSize;
	}
        else if (measureMode == FlexMeasureMode.AtMost)
	{
		result = Math.Min(constrainedSize, measuredSize);
	}
	else
	{
		result = measuredSize;
	}

	return result;
}

Closing per prior discussion, we will instead introduce per-case fixes.


update multicluster subscription operator to V0.1.9 under channel rel…

…ease-2.0
Signed-off-by: Xiangjing Li<EMAIL_ADDRESS>Thanks submitting your Operator. Please check below list before you create your Pull Request.

Flat operator directory structure is obsolete from 23-rd of October 2019, only nested directory structure will be accepted.

Updates to existing Operators

[x] Is your new CSV pointing to the previous version with the replaces property?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml ?
[x] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Submit operators to both upstream-community-operators and community-operators at once
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

/test CVP

/test CVP

/test CVP

/test CVP

/test CVP

@mvalahtv @J0zi  Could you help check why the CVP/operator-catalog-initilalization failed.  I got the error message The specified key does not exist.  not sure how to fix it

/test CVP

/test CVP

@mvalahtv @J0zi I changed the new CSV version to 0.2.2 under channel release-2.0 to make sure the new version is the biggest number across all csv channels. Hope this help pass the CVP/operator-catalog-initilalization test.  Could you help restart the CVP test?

@mvalahtv  @J0zi The CVP/operator-catalog-initialization test still failed with the same message The specified key does not exist. no idea now. Please let me know if there is anything wrong in my PR.

/test CVP

@xiangjingli sometimes we have to request for CVP test. I just did it.

/test CVP


CPack usage

How do you think about to reuse the software "CPack"?

I'm not aware that anyone currently needs or intends to distribute binary-only releases of CTS. In fact, the official conformance procedure requires building from source.


Add Mastering DPC++

Description
Includng the sample files for the Book: Data Parallel C++ Book Source Samples
Data Parallel C++: Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL
by James Reinders, Ben Ashbaugh, James Brodman, Michael Kinsner, John
Pennycook, Xinmin Tian (Apress, 2020).
Purpose
Many of the samples in the book are snips from the more complete files in this repository. The full files contain supporting code, such as header inclusions, which are not shown in every listing within the book. The complete listings are intended to compile and be modifiable for experimentation.
Running the tool
1. Update your fork to the latest from oneapi-src/oneAPI-samples
2. Create a branch ex: (New Docs2021.4)to hold the new docs changes
3. Switch Branch navigate to the new Branch
4. Update guids.json and content.json as appropriate
4. Navigate to oneAPI-samples/.repo-tools/Docs_Automation/
5. run create_docs.py
6. This will generate the three files in the repo root. CODESMPLESLIST.md, CHNGELOGS.md, REDME.md

Checklist
Administrative

[x] Review sample design with the appropriate (James Reinder)
[x] None If you have any new dependencies/binaries, inform the oneAPI Code Samples Project Manager: @JoeOster

Code Development

[x] Implement coding guidelines and ensure code quality. see wiki for details
[ ] Adhere to readme template
[ ] Enforce format via clang-format config file
[x] Adhere to sample.json specification. https://github.com/oneapi-src/oneAPI-samples/wiki/sample-json-specification
[x] Ensure/create CI test configurations for sample (ciTests field) -Chapter 20 are samples that dont compile, so skipping these examples https://github.com/oneapi-src/oneAPI-samples/wiki/sample-json-ci-test-object
[x] Run jsonlint on sample.json to verify json syntax. www.jsonlint.com

Security and Legal

[x] Virus scan

Review

[ ] Review DPC++ code with Paul Peterseon. (GitHub User: pmpeter1)
[x] Review readme with Tom Lenth(@tomlenth) and/or Joe Oster(@JoeOster)
[ ] Tested using Dev Cloud when applicable

Please run against 2021.4

@only issue with 2021.4 is a long file name for ci.


results of a pipeline comes with a big delay

if i run a big pipeline, i check the status every couple of seconds, as soon as i get status: completed
i ask for the result of the pipeline/
sometimes i get the right result and sometimes i get that the results are not still aviliable and it can take up to several minutes until they are.
as a user i would like to ask for the results as soon as i ask them. without a delay

There is a delay in the all cluster

seems to be resolved for now


Update Actor.runCommand

Description

Update Actor.runCommand. it works for non-op entities now.
Motivation and Context

The purpose of this function is to conveniently execute a command with some specific entities as the subjects in the scripts. but previously, it only worked with players who have OP permission. that means, it was not faithful to its original things to do.
but I'm not sure that it is fit to master branch as sizeof VirtualCommandOrigin and CommandPosition are not officials, and the hooked native constructor for VirtualCommandOrigin is declared not in commandorigin.ts, but in implements.ts to avoid cycle-importing errors.
Screenshots (if appropriate):
Types of changes

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Checklist:

[ ] My code follows the code style of this project.
[X] I have tested my changes and confirmed that they are working

Thanks for your contribution.
about CommanPosition and CommandPositionFloat. it's no need to destruct because they don't have any dynamically allocated fields. I renamed some functions for this reason.

oh I forgot they have only floats and bools.
thanks


Installation using command nvm install "18.12.1" --reinstall-packages-from=current -y --latest-npm

Operating system and version:
OS Linux, Distribution Ubuntu, Version 20.04
nvm debug output:

nvm --version: v0.39.2
$SHELL: /bin/bash
$SHLVL: 1
whoami: 'brunolnetto'
${HOME}: /home/brunolnetto
${NVM_DIR}: '${HOME}/.nvm'
${PATH}: ${HOME}/.meteor:${NVM_DIR}/versions/node/v19.6.0/bin:${HOME}/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$PREFIX: ''
${NPM_CONFIG_PREFIX}: ''
$NVM_NODEJS_ORG_MIRROR: ''
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu)'
uname -a: 'Linux 5.15.0-60-generic #66~20.04.1-Ubuntu SMP Wed Jan 25 09:41:30 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux'
checksum binary: 'sha256sum'
OS version: Ubuntu 20.04.5 LTS
curl: /usr/bin/curl, curl 7.68.0 (x86_64-pc-linux-gnu) libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3
wget: /usr/bin/wget, GNU Wget 1.20.3 built on linux-gnu.
git: /usr/bin/git, git version 2.25.1
grep: /usr/bin/grep (grep --color=auto), grep (GNU grep) 3.4
awk: /usr/bin/awk, GNU Awk 5.0.1, API: 2.0 (GNU MPFR 4.0.2, GNU MP 6.2.0)
sed: /usr/bin/sed, sed (GNU sed) 4.7
cut: /usr/bin/cut, cut (GNU coreutils) 8.30
basename: /usr/bin/basename, basename (GNU coreutils) 8.30
rm: /usr/bin/rm, rm (GNU coreutils) 8.30
mkdir: /usr/bin/mkdir, mkdir (GNU coreutils) 8.30
xargs: /usr/bin/xargs, xargs (GNU findutils) 4.7.0
nvm current: v19.6.0
which node: ${NVM_DIR}/versions/node/v19.6.0/bin/node
which iojs:
which npm: ${NVM_DIR}/versions/node/v19.6.0/bin/npm
npm config get prefix: ${NVM_DIR}/versions/node/v19.6.0
npm root -g: ${NVM_DIR}/versions/node/v19.6.0/lib/node_modules

nvm ls output:

        v14.7.0
        v16.0.0
       v16.14.0
       v16.14.2
       v16.18.0
       v18.12.1
->      v19.6.0
         system
default -> node (-> v19.6.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v19.6.0) (default)
stable -> 19.6 (-> v19.6.0) (default)
lts/* -> lts/hydrogen (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.2 (-> N/A)
lts/gallium -> v16.19.0 (-> N/A)
lts/hydrogen -> v18.14.0 (-> N/A)

How did you install nvm?
Run command:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash
What steps did you perform?
Run commands:
$sh_c "export NVM_DIR=\'$HOME/.nvm\'"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

And command:
nvm install "18.12.1" --reinstall-packages-from=current -y --latest-npm

What happened?

No .nvmrc file found
v19.6.0 is already installed.
Now using node v19.6.0 (npm v9.4.0)
bash: [: -ne: unary operator expected
bash: [: -ne: unary operator expected
nvm_ensure_default_set: a version is required
bash: [: -ne: unary operator expected

What did you expect to happen?
I do not expect to have the las 4 lines. Please, fix it!
Is there anything in any of your profile files that modifies the PATH?

If you are having installation issues, or getting "N/A", what does curl -I --compressed -v https://nodejs.org/dist/ print out?

*   Trying <IP_ADDRESS>:443...
* TCP_NODELAY set
* Connected to nodejs.org (<IP_ADDRESS>) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=*.nodejs.org
*  start date: Feb  3 00:00:00 2023 GMT
*  expire date: Mar  5 23:59:59 2024 GMT
*  subjectAltName: host "nodejs.org" matched cert's "nodejs.org"
*  issuer: C=GB; ST=Greater Manchester; L=Salford; O=Sectigo Limited; CN=Sectigo RSA Domain Validation Secure Server CA
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x55df34343310)
> HEAD /dist/ HTTP/2
> Host: nodejs.org
> user-agent: curl/7.68.0
> accept: */*
> accept-encoding: deflate, gzip, br
>
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* old SSL session ID is stale, removing
* Connection state changed (MAX_CONCURRENT_STREAMS == 256)!
< HTTP/2 200
HTTP/2 200
< date: Tue, 14 Feb 2023 18:39:40 GMT
date: Tue, 14 Feb 2023 18:39:40 GMT
< content-type: text/html
content-type: text/html
< last-modified: Tue, 14 Feb 2023 15:40:08 GMT
last-modified: Tue, 14 Feb 2023 15:40:08 GMT
< cache-control: max-age=14400
cache-control: max-age=14400
< cf-cache-status: HIT
cf-cache-status: HIT
< age: 9571
age: 9571
< vary: Accept-Encoding
vary: Accept-Encoding
< strict-transport-security: max-age=31536000; includeSubDomains; preload
strict-transport-security: max-age=31536000; includeSubDomains; preload
< x-content-type-options: nosniff
x-content-type-options: nosniff
< server: cloudflare
server: cloudflare
< cf-ray: 7997ed887cdda5a3-GRU
cf-ray: 7997ed887cdda5a3-GRU
< content-encoding: br
content-encoding: br

<
* Connection #0 to host nodejs.org left intact

Haveyou tried installing v0.39.3, which includes a number of bugfixes compared to v0.39.2?

Hold my glass of water.

Wow, all lines are gone! Refreshing.

@ljharb It will be off-topic, but I would like to have a kin opinion on two libraries I wrote in javascript:

arqeo: Provide boolean check for artifacts (a variable fulfilling certain boolean-condition or an array of them);
retoric: Provide class-oriented objects for boolean reasoning (future feature: combine with module arqeo to persuade the developer on the reason which handling-artifact is not adequate in a given situation).

They both kind of seem like they're just replacements for the builtin array methods, like some/every/filter/etc?

Yeah, because they are built with these tools. The goal is not to substitute these commands, but to work along and provide an abstraction layer of aggregation to them.

¯\_(ツ)_/¯ it's not clear to me why these packages are any better than directly using the builtin methods, but i'm sure you understand your use case better than i do.

It is no better, but regardless of which, there are always a new language or feature to live along.


Removed hardcoded identifier.

Use classmetadatainfo to de-hardcode 'id' (for other identifier names like uuid). Allows multiple identifiers too.

Could you add test that failed before this fix? Just so we're sure it still works

Could you add test that failed before this fix? Just so we're sure it works

Sorry, don't know how. It's running well on my local though :|

Basically copy this: https://github.com/KnpLabs/DoctrineBehaviors/blob/3eed95ec2e2512b8995ce039d0767bac661fd7c4/tests/ORM/TranslatableTest.php#L30-L50
And instead of TranslatableEntity create own class, that has different id name.

Hi, I'm going through old opended issues and PRs to cleanup too-long-opened items and close them. Thank you for your contribution and time.
We needs a feature with test and passing CI to be able to merge it without letting a bug in.
If this is still relevant for you, please add code with test and make CI pass first. Then we'll able to merge your feature without further waiting :+1:
Thank for understanding.


Fix json transformation, etc

In this PR:

add conversion code for ClientEvent.data  (event's data field is sent as a string-serialized form as written in Pusher Protocol.
make PusherClient#trigger generic and change its signature to conform to other Pusher client

Hi @tkqubo
I think this fix is great! Could you rebase the changes so I can merge?

I think we shouldn't consider the triggering data as String in PusherActor. Can you check https://github.com/dtaniwaki/akka-pusher/commit/583b729c5fb0985d338a3d268f2b310f72d2f3d3 to allow the user of PusherActor to set the triggering data type explicitly.

@tkqubo I think you are right. We allow those who want to use the pusher actor to use only String for triggering event. In that sense, your PR is totally great. Can you just reorganize the PR and make it again?

@dtaniwaki Thanks I see, I will split my PR into some :smiley:

I will close this PR as soon as I reorganize it :rocket:

@dtaniwaki  I just split this PR into then:

#5 Add string conversion for client event's data property
#6 Fix WebhookRequest deserialization
#7 Make PusherClient#trigger generic
#8 Fix trigger's signature

So I will close this PR, thanks!


Read configuration for multiple apps

I have situation when I would like to get configs from configuration server for my app (we can call it A) but apart for it I also want to read configuration for something that A is using - we can call it B and this is some configuration set globally that many application can use. The question is: how to read more then one application configuration using Steeltoe?

@dominikjeske You can use different files on the server side. You can put shared configuration in Application.yml and app specific information in ApplicationA.yml and ApplicationB.yml. Please note that the closest equivalent to the spring profile concept is Environment in Dotnet as determined byASPNETCORE_ENVIRONMENT  So if its set to Development, for example the specific configs will be found in ApplicationA-Development.yml

@hananiel Application.yml is global for everyone and I would like to have a control of what configs are get. For example I have some global configuration C, D, E and for some applications I would get only C and for others C and D (of course as addition to application A individual config).

@dominikjeske do you perhaps have a minimal spring sample that you can share that can achieve this. At the very least, if you have a solid spring cloud config server config on the server side, we can figure out how to consume it with the steel toe client.

@hananiel Generally I'm trying to figure out how to do such use case with Steeltoe+config server. Each app have its own repository (I named apps sharka, sharkb...) this is easy with pattern for repositories but.. applications are using external components that have its own configuration I named it ProfileA, ProfileB... So the question is - how to load more then one configuration (for example sharka+ProfileB). I tried pattern matching magic to match more then one but it stops after first find. As far as I know I can configure only one app in Steeltoe/config server. I also tried composite but I failed to use it with multiple repositories (maybe it is possible but I can't figure it out). Below sample config
spring:   profiles:    active: git   cloud:     config:       server:         git:           uri: https://xxx/scm/arch/poc_configserver_teama.git           repos:             ProfileA:               pattern: 'ProfileA'               uri: https://xxx/scm/arch/poc_configserver_profileA.git             ProfileA:               pattern: 'ProfileB'               uri: https://xxx/scm/arch/poc_configserver_profileB.git             sharka:               pattern: sharka               uri: https://xxx.com/scm/arch/poc_configserver_teama.git             sharkb:               pattern: sharkb               uri: https://xxx.com/scm/arch/poc_configserver_teamb.git

@dominikjeske, I think, if I understand you correctly, the use of "spring profiles" is what you want to use.  This is best documented in the spring boot documentation (https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config.files.profile-specific) and also in the Config Server documentation (https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#_environment_repository)
On the Steeltoe side, you can configure what "profile(s)" you want the config server to return by specifying the "Spring:Cloud:Config:Env" configuration value in your "appsettings.json" file.  This can be a comma separated list, that specifies one or more "profiles" and the config server will return to you those specific configuration values defined as part of the profile(s).  As @hananiel mentioned earlier, the default for "Spring:Cloud:Config:Env" setting is ASPNETCORE_ENVIRONMENT .. which is usually "Production" or "Development".   But, if you specify it in appsettings.json, we should honor that setting, instead of the default, when making the request of the config server.

@dtillman thanks for info. I'm aware of profiles and I know that I can use more then one and it can be anything. So in my example I could give multiple profiles but... keep in mind that my requirement is to use multiple repositories. If everything would live in one repository it would return me all profiles just like you say. But I want to get application data from one repo and component data from second repo. I tried to make patterns https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#_pattern_matching_and_multiple_repositories in such way they should return me two repositories but the problem is that config server is always returning first repository ;(
Do you understand know what I'm trying to achieve?

@dominikjeske : Ahh ... I think I get it... is this what you're looking for:
https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#composite-environment-repositories

I have tried this but I have concerns... It appears that only way to use it is to merge all repositories in composite and use it as whole. I'm not sure how it will perform when I will use 100 repositories in such composite? I tried to use composite inside multiple repos with patterns but it was not designed to use in such way. I will try with one huge composite but I feel it could be better to use multi repo way and client that can download more than one app - but maybe I'm wrong ;)

Spring:Cloud:Config:Env

Could you please give an example for this?
I don't quite get it.
What I want to achieve is to get configs for multiple profiles for example the "global" one defined as application.yml,
appName-profileName.yml and I would like to also somehow get appName-commonProfileName.yml


error about train the model

Thanks for the great works.
when i train the model with MOT17 dataset by the following command:
python3 -m torch.distributed.launch --nproc_per_node=2 tools/train_net.py --config-file configs/dla/DLA_34_FPN_EMM_MOT17.yaml --train-dir my_train_results/MOT17_TEST/ --model-suffix pth
i got the error:
Traceback (most recent call last):
File "tools/train_net.py", line 132, in
main()
File "tools/train_net.py", line 128, in main
train(cfg, train_dir, args.local_rank, args.distributed, logger)
File "tools/train_net.py", line 80, in train
logger, tensorboard_writer
File "./siammot/engine/trainer.py", line 51, in do_train
result, loss_dict = model(images, targets)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/parallel/distributed.py", line 619, in forward
output = self.module(*inputs[0], **kwargs[0])
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/apex-0.1-py3.6-linux-x86_64.egg/apex/amp/_initialize.py", line 197, in new_fwd
**applier(kwargs, input_caster))
File "./siammot/modelling/rcnn.py", line 47, in forward
features = self.backbone(images.tensors)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/container.py", line 117, in forward
input = module(input)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "./siammot/modelling/backbone/dla.py", line 297, in forward
x5 = self.level5(x4)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "./siammot/modelling/backbone/dla.py", line 231, in forward
x1 = self.tree1(x, residual)
File "/home/sx/Documents/anaconda/anaconda3/envs/pt170/lib/python3.6/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "./siammot/modelling/backbone/dla.py", line 54, in forward
out += residual
RuntimeError: The size of tensor a (47) must match the size of tensor b (46) at non-singleton dimension 3
can anybody help me ? thank you !

I got the same error. So anybody knows how to solve it?

This error seems to relate with batch_size.

Can you double check your configuration file, and make sure that DATALOADER.SIZE_DIVISIBILITY = 32 in https://github.com/amazon-research/siam-mot/blob/main/configs/dla/DLA_34_FPN_EMM.yaml#L38
This is because the feature size mismatch between different layers in DLA backbone when the image size is not divisible by 32.

Can you double check your configuration file, and make sure that DATALOADER.SIZE_DIVISIBILITY = 32 in https://github.com/amazon-research/siam-mot/blob/main/configs/dla/DLA_34_FPN_EMM.yaml#L38
This is because the feature size mismatch between different layers in DLA backbone when the image size is not divisible by 32.

Thank you，i have checked this parameter ,it is 32,and i have not modified。but I have solved this problem by change the batch size  and i don't konw why this way can work.

hello ，i want to ask you for help! where i can change the batch size,since i do not see it in https://github.com/amazon-research/siam-mot/blob/main/configs/dla/DLA_34_FPN_EMM.yaml


search not working

I have setup the project. App is working is fine except Search and Following Posts features.
Did i miss something?

search is working as far as i think... you may be searching wrong terms

search is working as far as i think... you may be searching wrong terms

Ah yes, i think it only looks for first word of Title which is case sensitive.


invalid prisma user?

Hello,
I cant login anymore on my self hosted cal.com running on docker due to this error:
https://myownhost/api/auth/error?error=%0AInvalid%20%60prisma.user.findUnique()%60%20invocation%3A%0A%0A%0AThe%20column%20%60Team.isOrganization%60%20does%20not%20exist%20in%20the%20current%20database."
How do I solve it please?

How can I fix it on my postgres database?

I got it. I found a solution at https://github.com/prisma/studio/issues/370
I run: npx prisma db push --skip-generate


Official clients that only support shared nodes should display warning to a user that they need to login with their encrypted key at least 5min before start of validation

Official clients that only support shared nodes (more specifically that connect to idena network over node that doesn't have your private key) should display warning to a user that they need to login with their encrypted key at least 5min before start of validation. (By design of protocol if they don't they will not be allowed to do validation or will get late submission)"
Also it would be good, to add this warning in calendar event reminder: if you use web app for validation...

IDs that will make validation on web app with prepared flips to be allowed to be ready to participate, and not running own node during validation, must be logged in before flip lottery. Others, like candidates, and suspended will not need that.

IDs that will make validation on web app with prepared flips to be allowed to be ready to participate, and not running own node during validation, must be logged in before flip lottery. Others, like candidates, and suspended will not need that.

Sounds great! But It supposes to be a message. A RED HUGE ALERT MESSAGE that tells the validated identity that in case of passing the validation through the web app the identity has to be logged in 5 minutes before the validation ceremony. How are people supposed to know about that?


Add InputWidget::createInputField()

to implement behavior described in class docs directly in the class
itself instead of relying on subclasses to respect the description.
fixes #14294

Q
A

Is bugfix?
no

New feature?
yes

Breaks BC?
no

Tests pass?
yes

Fixed issues
#14294

Merged. Good one.

Introducing InputWidget::renderInput() with $type as a required parameter causes declaration compatibility exceptions in PHP 7+
In my projects this change affected at least three widgets:
https://github.com/hiqdev/yii2-combo/commit/af68b1577b830c52048903fe7d02abc4215b0677
https://github.com/kartik-v/yii2-widget-datepicker/blob/master/DatePicker.php#L297
https://github.com/omnilight/yii2-bootstrap-daterangepicker/blob/master/DateRangePicker.php#L114

Ooops ... @SilverFire can you open an issue?

reopened https://github.com/yiisoft/yii2/issues/14294#issuecomment-315144541


Write a blog post about Polkadot

The Polkadot community is growing and new people joining the ecosystem need high quality and engaging content about Polkadot. We would like to find community members to write an article or guide to help the community to learn more about the Polkadot project and how to get involved.
While deeply technical blogs are appreciated, it is also possible to write about the future possibilities enabled by Polkadot (including Substrate).
Take a look at the Polkadot medium for inspiration.
Requirements
A correct submission will:

400 words or more.
Provide information about Polkadot that has not already been written about on Polkadot medium
Include graphics or video tutorials where necessary.

Bounty

This issue now has a funding of 300.0 DAI (300.0 USD @ $1.0/DAI) attached to it as part of the Web 3 Foundation fund.

Just as an FYI for all bounty hunters: the total pot of funds is 300 Dai, but we are looking for 2 submissions. That means that each individual submission is eligible for 150 Dai.

I have completed my article and made it is a submission. You can read here:
https://medium.com/p/b6df8a05ce6f/edit
@EdwardAThomson When you are ready to Publish on Polkadot Medium, add me as a writer to the publication so that I can push it to the publication.

Hey @emmaodia we have reviewed your blog and have some edits we'd like you to make. Once the changes are made and approved then we can pay you the bounty!
Do you have an email address we can contact you on?

I have completed my article and made it is a submission. You can read here:
https://medium.com/p/b6df8a05ce6f/edit
@EdwardAThomson When you are ready to Publish on Polkadot Medium, add me as a writer to the publication so that I can push it to the publication.

Hey @emmaodia we have reviewed your blog and have some edits we'd like you to make. Once the changes are made and approved then we can pay you the bounty!
Do you have an email address we can contact you on?

<EMAIL_ADDRESS>

Hey. I have completed my article. Here is the Medium link to it:
https://medium.com/@serejandmyself/polkadot-for-the-very-dummies-an-introduction-c75db434d4db

@EdwardAThomson
Was I suppose to check this in gitcoin? I got approved there already, so thought I was just meant to drop the actual file here. Was I?
Thanks

@EdwardAThomson
Was I suppose to check this in gitcoin? I got approved there already, so thought I was just meant to drop the actual file here. Was I?
Thanks

Hey @serejandmyself , apologies for the slow reply here. We have received your article and are now putting it through our review process. We'll try to finish it as fast as we can and let you know if you can win the bounty! Thanks for writing it!


chore: bdd-gh-1584435410 to 0.0.1

chore: Promote bdd-gh-1584435410 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment