Finagle load injection

Create infrastructure for finagle load injection in mite.
See the README for full details.
Unrelated changes included in the PR:

upgrade isort, with consequential changes to the isort config file
remove the old cat_msgpack.py helper; we have mite cat now
reformat files

mite/__init__.py
mite/controller.py
mite/recorder.py
mite_amqp/__init__.py
test/perf/http_server.py
test/test_recorder.py
test/test_runner_tracker.py
test/test_volume_model.py
test/test_work_tracker.py
test-requirements.txt

fix the --message-processors argument to mite scenario test for the case when it's empty

@johnarnfield I had a look at the breakpoints (of which I spotted two) -- both are in branches that (according to me) should never be entered, so if we do wind up there I think it's probably serious enough for us to get dropped into the debugger.  I'm slightly violating my own principles in terms of merging breakpoints into the public mite code, but I also think the best place for this code to live is on the master branch (not in a perma-open PR or side branch) until someone on the squad picks it up "for real", so I think I'm going to hold my nose and pragmatically press merge... 😕


Clean up code by using builtin associateBy function

Warnings
detekt-cli/src/main/kotlin/io/gitlab/arturbosch/detekt/cli/OutputFacade.kt#L27 - Type checking is a sign of violating the Open-Closed Principle. Consider introducing an abstraction (interface) for OutputReport, ConsoleReport, with new implementations of the interface for every class.
Generated by  Danger Kotlin against 0d0e23e

Jap, its bad design here.


WIP: [ci] switch to r-devel in Solaris builds (fixes #5216)

Fixes #5216.
Proposes using RDscript instead of Rscript when building the R package prior to uploading it to R Hub.
Notes for Reviewers
As mentioned in https://github.com/microsoft/LightGBM/issues/5216#issuecomment-1127158605, I've opened an issue in https://github.com/wch/r-debug asking about the choice of RDscript vs. Rscript in that image. At least for now, though, I think this PR should be merged if if fixes the Solaris CI builds, to unblock development on #5159 (and the rest of the repo).

/gha run r-solaris

/gha run r-solaris

good news
With the changes in this PR, the Solaris job now successfully builds the R package and pushes it up to R Hub.
bad news
The jobs on R Hub are failing, because one of {lightgbm}'s dependencies is not building successfully on Solaris.
I've opened https://github.com/r-hub/rhub/issues/526 describing this. Essentially, {ps} is failing to build, and it is required through the following dependency chain.
lightgbm
|_testthat
   |_callr
     |_processx
       |_ps

Given that I don't see Solaris checks at any of the following places:

https://cran.r-project.org/web/checks/check_summary.html
https://cran.r-project.org/web/checks/check_flavors.html
https://cran.r-project.org/web/checks/check_results_lightgbm.html

I strongly suspect that Solaris builds might no longer be required by CRAN, now that R 4.2.0 has been released.
I recall seeing another strong signal that Solaris support would no longer be required in R 4.2.0, in this tweet: https://twitter.com/henrikbengtsson/status/1466877096471379970.

However, I haven't yet seen something authoritative from CRAN saying that. I will search the mailing lists and CRAN docs tomorrow to see if I can find something definitive. Maybe we'll be able to remove the Solaris requirement entirely.

/gha run r-solaris

Ok so the conclusion of https://github.com/r-hub/rhub/issues/526 was "a release of {ps} that doesn't build on Solaris made it onto CRAN, so anything depending on it will fail on R Hub Solaris builds".
I think that, from this investigation, I see some strong evidence that we can remove Solaris support in LightGBM.
The evidence:

Solaris builds no longer listed in the CRAN checks

https://cran.r-project.org/web/checks/check_summary.html
https://cran.r-project.org/web/checks/check_flavors.html
https://cran.r-project.org/web/checks/check_issue_kinds.html

this release of {ps} made it onto CRAN without building successfully on Solaris

and wasn't checked on Solaris: https://cran.r-project.org/web/checks/check_results_ps.html

this tweet and the links in it show a bunch of Solaris things being removed from R's source

https://twitter.com/henrikbengtsson/status/1466877096471379970
https://github.com/wch/r-source/commit/e2bfc788d28f901ead40ae54cf0b7f7c6ca20da8
https://github.com/wch/r-source/commit/8df226e3b2c140e48bfbbbe5157a459b7e9a213b

In "CRAN no longer checking on Solaris?" on the r-package-devel mailing list, in December 2021, one of the CRAN maintainers (Uwe Ligges) participated in the thread and didn't say "yes, Solaris support is gone" but also didn't say "no, you need to keep building for Solaris and packages that can't be built on Solaris will be rejected".
in "CRAN Repository Policy" (https://cran.r-project.org/web/packages/policies.html), CRAN says that "Package authors should make all reasonable efforts to provide cross-platform portable code. Packages will not normally be accepted that do not run on at least two of the major R platforms"

I really think that given all of this, we could remove Solaris support from LightGBM.
I appreciate Uwe's plea for people to continue writing portable software, but in this case CRAN removing that check means that similar issues to this {ps} one will show up over time which prevent us from testing that {lightgbm} works on Solaris without significant effort (like running our own Solaris server). Without a way to test, we can't really guarantee that it works, and the only reason we added that support at all was to make the R package more easily accessible by getting it onto CRAN.

@StrikerRUS @jmoralez can you please read through this when you have time and let me know what you think about this question: Should we remove Solaris support in LightGBM?.

Sure, happy to do it! Ok I'll close this PR and open a new one removing Solaris.
And we can use admin powers to merge PRs like #5159 with a failed Solaris GitHub Actions build.

And we can use admin powers to merge PRs like https://github.com/microsoft/LightGBM/pull/5159 with a failed Solaris GitHub Actions build.

Or we can:

wait for a new PR with Solaris job removal will be merged
(hacky way) manually modify /gha run ... comment with Status: success and re-run workflow that checks optional job statuses


Component: Icon

Icon Component

@erinkelley27 - isnt' this already in there somewhere?

@jserrao Yup - closing now.


add metrics in go-libp2p blogpost

@p-shahi
I don't have a lot more to add here, Once we have this and the public grafana dashboard, I'll update the details.
Please let me know if there something else we should talk about. I don't want to discuss all the metrics that we've added, I think that's better served by a doc in the go-libp2p repo.
fixes: #69

For some reason your name is rendering like so

@p-shahi this is the issue: https://github.com/libp2p/blog/blob/main/src/.vuepress/plugins/pageData.js#L44 it should be " and " and not just and

can you include this change in this pr?

Should this blog post also mention how easy it is to use metrics locally, once we have https://github.com/libp2p/go-libp2p/pull/2383?

@marten-seemann that makes sense. I'll edit the post to include that.

@marten-seemann Add a section titled Local development and debugging setup here

Will need a small change depending on how https://github.com/libp2p/go-libp2p/pull/2385 goes

I'll update that, but how is that a blocker?

@MarcoPolo see https://github.com/libp2p/blog/pull/77/files#r1246968409

@sukunrt Is this ready to merge? I think from our last discussion go-libp2p maintainers were all in agreement to display metrics from PL managed grafana (from a bifrost node). Is all that's remaining to add the right link in this post?


command->queryAll() on not supported DBMS

I'm trying to query an AS/400 DB2 database using Command object.
My select command has one parameter and I bind it with $command->bindValue('name', $value, \PDO::PARAM_STR) in order to avoid reading an unsupported Schema.
Anyway $command->queryAll(), at the end, calls $this->db->quoteValue() which needs DB Schema... and it throws yii\base\NotSupportedException
Is there any way to skip quoteValue() call??

No, there is not.
You should declare the Schema for your DBMS. It could be done by extending existing one.

@klimov-paul
How to add new schema to Connection::$schemaMap?

Just like any other property:
'db' => [
    'class' => 'yii\db\Connection',
    'schemaMap' => [
        'myschema' => 'app\my\custom\Schema'
    ],
],

It will remove previous map.
'db' => [
    'class' => 'yii\db\Connection',
    'dsn' => 'pgsql:host=localhost;dbname=yii2app',
//    'dsn' => 'mysql:host=localhost;dbname=yii2app',
//    'dsn' => 'db2:host=localhost;dbname=yii2app',
    'schemaMap' => [
        'db2' => 'app\my\custom\Schema'
    ],
],

Not easily to change only dsn. IYKWIM

So... you need to have several(!) dns maps for the single(!) db connection? Are sure this is necessary?


Releases

What all platforms are we going to release this on?
I've been doing some testing and we should be able to do everything from linux to macos to windows store apps.
I've been running into a lot of trouble packaging the appx. I packaged it into the appx but I cannot figure out how to sign it.
Your thoughts?

I was thinking we'd do all three: Windows, macOS, and Linux. I've built it for macOS and Windows so far. There are some quirks with the different platforms.
I'll take care of packaging and signing. I was thinking we'd do a standard exe not UWP.

I think we should do both - all possible platforms. We could also be able to upload our app to the windows store

Windows store will accept traditional exe or msi apps on Windows 11

@terreng Even today, windows 7 is the most commonly used platform - It will probably be a while before windows 11 is that commonly used.
Check #25 - I have started adding some make config in package.json

We could do windows store and mac app store, but I think we should worry about that later.
Right now we should focus on getting the first version out on our website. Then we can start working on other distribution avenues.

I think windows apps are cleaner and easier to install rather than downloading from github and copying a bunch of files from all over the place.

@ethanaobrien is this you?

I'm not @ethanaobrien , I can't really do Javascript and you guys are here doing full web servers

Yeah, thats not me

@caasi-e I saw you created your account less than an hour before posting here. How did you find this project, and why do you follow @ethanaobrien ?

I've been using/testing out things that @ethanaobrien has recommended for a while, I made an account today to leave the one comment, and I don't plan to make a habit out of commentating. I follow Ethan because he's a personal friend, good-luck on your project

I think windows apps are cleaner and easier to install rather than downloading from github and copying a bunch of files from all over the place.

We'll package it up into an installer program, like most programs do. Users won't have to manually build or install it.

@terreng Once we do releases, would I be able to package and release a windows store app. I would be willing to pay $20 to create the account

I think we can create a shared account and allow us to both publish releases. But please, let me have a chance to look into packaging and publishing options for all three platforms before we do anything. I'm going to keep working on the new UI for now, and we can come back to this once it's time to release.

Awesome!

@terreng I'm going to go ahead and say what I've been thinking and then you can tell me what you think
I think we need to put this app out there, In every place we can. The more places/platforms we have it available on, the more it will spread, the larger chance that someone will write one of those articles on it.
I suggest we publish to the microsoft store, and (I'm not familiar with it at all) flatpack. If we could it would be cool if we could even put it in the linux repositories.

We can publish this a variety of places once it's ready for release. 👍

@terreng
I've compiled for some (not all) platforms and uploaded them to the folder here. I've tested and they all seem to work
Do you have a macOS you can use to compile .dmg packages?
https://drive.google.com/drive/folders/1MmJYRceI1g1ZLNvANZ3AlnG9KB8GF3_h?usp=sharing

@ethanaobrien What platforms do you have to test on? I have both macOS and Windows. Do you have a Linux machine? Windows 7? 10? Let me know.

I have windows. I also have a linux vm, a windows 7 vm, and it would be easy to make a new one if needed. The one thing I do not have is macOS

Okay great. I can fine tune for macOS and Windows a bit. And you can test on Windows and Linux.

@terreng Can we delete the dist folder. This seems to insanely increase the file size when packing

@terreng Can we delete the dist folder. This seems to insanely increase the file size when packing

The folder should be excluded from packaging, not deleted.

@ethanaobrien I assume the installer will automatically update a previously installed version?

I assume the installer will automatically update a previously installed version?

I would assume so, but not sure

I would assume so, but not sure

Could you test to find out? I would assume, just want to check.
By the way, I'm going to route all downloads from the website to the GitHub releases download URL. The download stats are publicly available through the GitHub API. I do not want the program to have any kind of analytics/telemetry, other than update checking.

I looked in to code signing, and found that it might not be as straightforward as I thought for an open source project. Code signing and macOS App Store would be $99 from Apple. Looks like Microsoft Store is $19 but also requires us to purchase a code signing cert separately. Looks like Microsoft Store allows any publisher name, but Apple requires a legal name or registered business. I also looked at some alternative app stores like Setapp.
I've concluded that we should just publish an unsigned app on our website for now. On Windows, this means users have to click past the UAC prompt. macOS doesn't like users installing unsigned apps either. So we'll need to provide instructions on the website for how to install on both OSes.
Let's look in to proper signing and further distribution after our initial release. I'm wondering if we might find an organization that provides signing / distribution for open source apps.

@ethanaobrien Let's release this next month.

Yeah, I get back from vacation in 2 days should be able to fix the https thing then

@terreng
I went ahead and opened and issue in the electron forge repository seeing if there was a way to pack all the files, apparently this is implemented!
This is the link to the documentation

I just switched from electron-forge to electron-builder, which uses asar by default.

Yeah, I saw, sounds good

Do you have an eta of when we can release?

I'm currently working on building. So very soon.

Are we going to put #83 in the first release? We could at least add it to the documentation and have the config needed to be edited manually (or just document it later and release it as a "hidden" feature?)

I'm not going to include it in the initial release.

@ethanaobrien Good news. It turns out that you actually don't need to sign appx packages for the Microsoft store. I'm working on the submission for the MS store, hopefully it goes through / gets accepted. The direct download from the website / GitHub still won't be signed, but it's less of an issue.

Awesome! Could you let me know when/if it gets approved?

Awesome! Could you let me know when/if it gets approved?

Of course! I'll send the link, and put it on the website.

Awesome!

@terreng could you remind me why we aren't distributing pre built files for Linux distributions?

IIRC I just couldn't get the build to work for some reason. That's it, it could be really simple thing.

@terreng 2 things.
While simple web server is technically unsupported on chromeos, do we want to note that on any modern chromebook (since chrome 84) has a linux console that you can enable, and simple web server installs and runs quite perfectly in it?
Screenshots:

and it works and operates as it would on a normal debian computer.
Second thing, if you think its worth it, it wouldnt be difficult to host a debian repository to update the server debian image from, instead of having to re-download and install it manually every time. For an example of how this would look you can see https://ethanthesleepy.one/debian/, and if youd be interested in it I could tell you more.

While simple web server is technically unsupported on chromeos, do we want to note that on any modern chromebook (since chrome 84) has a linux console that you can enable, and simple web server installs and runs quite perfectly in it?
Screenshots:

Incredible! That's fantastic. I had no idea Chromebooks could do that! (They probably couldn't back when I used them in middle school)
Does everything work okay? Specifically I'm wondering if it can access the filesystem and if the file picker works. What about options like "Keep running when closed"?
I don't have a Chromebook to test with, so it would be great if you could try everything out and see if everything works or not.
If it all works or all mostly works, then can you draft some instructions on how to install it? It would be great if you could take some screenshots of how to enable the Linux console and install the app.
Thanks again for bumping #89 a few weeks ago. Very cool that finishing that also gave us ChromeOS support for free.

Second thing, if you think its worth it, it wouldnt be difficult to host a debian repository to update the server debian image from, instead of having to re-download and install it manually every time. For an example of how this would look you can see https://ethanthesleepy.one/debian/, and if youd be interested in it I could tell you more.

I just opened #169 to solve this problem. I used electron-updater for another project and it worked great. I can't remember why I didn't use it before (I think I thought it required a Windows signing certificate?). Once I switch over to it, the app will be able to update itself automatically so users won't ever have to download new versions from the website ever again. I used it for Windows and macOS, but it looks like it supports Linux too via AppImage! Why don't we wait for me to try it out and we can see how well it works for Linux. Otherwise I would certainly be interested in hearing more about hosting a debian repository. I know very little about how Linux stuff works, so I would certainly want your recommendation on which options work best.
By the way, I just enabled GitHub Sponsors for my account and this repository.

I'm going to propose that we have it set up just for my account for now, since I'm the one who paid to get the app on the Microsoft Store and Mac App Store. I don't suspect we'll get much community funding if at all, but if we do then we can definitely set it up to split it later. Let me know if this sounds good.

Does everything work okay? Specifically I'm wondering if it can access the filesystem and if the file picker works.

With the way chromeos works, the linux container has its own file system. You can go into the files app, right click on "share with linux" and it will be mounted under /mnt/chromeos/.

What about options like "Keep running when closed"?

Just tested, yes and no. The app runs when closed, but does not seem to want to re-appear when clicked, but the server is still on. This is very likely a chromeos security thing. I just tested this in a debian vm and was incorrect, this seems to be an issue with linux as a whole. This is not chromeos specific.
Im sure you already know, but the debian app doesnt correctly display the app image.

I think I thought it required a Windows signing certificate

Yeah, thats correct. I was incorrect about that, sorry about that.

Once I switch over to it, the app will be able to update itself automatically so users won't ever have to download new versions from the website ever again. I used it for Windows and macOS, but it looks like it supports Linux too via AppImage!

Thats really nice!

Why don't we wait for me to try it out and we can see how well it works for Linux. Otherwise I would certainly be interested in hearing more about hosting a debian repository. I know very little about how Linux stuff works, so I would certainly want your recommendation on which options work best.

I would say in the long run, a simple debian repo would just be a convenience for debian (and ubuntu?) users, to update from the built-in package manager.

I'm going to propose that we have it set up just for my account for now, since I'm the one who paid to get the app on the Microsoft Store and Mac App Store. I don't suspect we'll get much community funding if at all, but if we do then we can definitely set it up to split it later. Let me know if this sounds good.

That is definitely good, youre the one whos paid for the domain/mac store/microsoft store/etc, and thank you so much for that.

Sounds good, I'll try to do this when I get the chance


AWS custom runtime failure

Trying to use the function-sample-aws-custom sample, I get the following error:
[2019-06-04 21:47:55.737] - 11 INFO [main] --- com.example.LambdaApplication: Starting LambdaApplication on <IP_ADDRESS> with PID 11 (/var/task started by sbx_user1051 in /var/task)
[2019-06-04 21:47:55.741] - 11 INFO [main] --- com.example.LambdaApplication: No active profile set, falling back to default profiles: default

[2019-06-04 21:47:56.274] - 11 INFO [main] --- org.springframework.cloud.function.web.source.SupplierExporter: Starting
[2019-06-04 21:47:56.496] - 11 INFO [main] --- reactor.Flux.MonoRepeatPredicate.1: onSubscribe(FluxRepeatPredicate.RepeatPredicateSubscriber)
[2019-06-04 21:47:56.497] - 11 INFO [main] --- reactor.Flux.MonoRepeatPredicate.1: request(256)
[2019-06-04 21:47:56.655] - 11 INFO [main] --- com.example.LambdaApplication: Started LambdaApplication in 1.82 seconds (JVM running for 2.536)
[2019-06-04 21:47:56.673] - 11 INFO [Thread-5] --- org.springframework.cloud.function.web.source.SupplierExporter: Stopping
[2019-06-04 21:47:56.674] - 11 INFO [Thread-5] --- reactor.Flux.MonoRepeatPredicate.1: cancel()
END RequestId: fbfba682-52f5-4771-b403-de4046ce0f7d
REPORT RequestId: fbfba682-52f5-4771-b403-de4046ce0f7d	Duration: 2938.69 ms	Billed Duration: 3000 ms 	Memory Size: 1024 MB	Max Memory Used: 90 MB
RequestId: fbfba682-52f5-4771-b403-de4046ce0f7d Error: Runtime exited without providing a reason
Runtime.ExitError

I tried to move to release versions (2.1.5 for spring-boot-starter-parent, 2.1.0 for spring-cloud-function) with no result.
The lambda itself is configured as using a custom runtime and the "Provided" handler (tried several options for this field).
Any idea on what could be wrong ?
Thanks for your help

There was significant work done in AWS module, including custom runtime. Can you please validate your issue with spring-cloud-function 3.0.8.RELEASE and above (we're releasing 3.0.9 tomorrow)

There has been a lot of improvements and enhancements in AWS module with few specifically around Custom Runtime. There are also couple of new samples https://github.com/spring-cloud/spring-cloud-function/tree/master/spring-cloud-function-samples/function-sample-aws-custom and https://github.com/spring-cloud/spring-cloud-function/tree/master/spring-cloud-function-samples/function-sample-aws-custom-bean
So I am going to close this issue as old, but feel free to try and raise new issue if you discover them


Use Promises when communicating with db

User Story:
As a software engineer, I want to use Promises class so that

it is a better way to handle async operation
It is much more self-documenting code then using if statement to catch the error

Promise comes naturally in js. No package has to be given
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
Acceptance Criteria:
Change the if statement catching an error and use .catch statement with Promises.

router.get for /users
router.post for /users

Assigning this to @Cvos0162 as there's a linked PR.

@Cvos0162 is this issue done?

@cwon880 Looks like the linked PR was abandoned

I thought it was going to be handled by other PR...?

Im not too sure could someone from the backend clarify this issue?


Unsigaction does not compile with -m32

hi there,
I'm trying to build qemu-mode and the unsigaction in it (actually just running make binary-only). However, I get:
[+] Building unsigaction ...
make[1]: Entering directory '/afl/qemu_mode/unsigaction'
cc -m32 -fPIC -shared unsigaction.c -o unsigaction32.so || echo "Cannot build unsigation32"
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/9/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/9/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

in Ubuntu 19.10. This seems to assume that -m32 just works. Is this working as intended? At other places AFL++ checks if -m32 works and if not just goes with -m64... https://github.com/vanhauser-thc/AFLplusplus/blob/624f0da6c0f7034cc56784d4b971b2c12ad5aa98/llvm_mode/Makefile#L222

Just the redirection to /dev/null is missing. You don't have the x86 libs in your Ubuntu, it fails gracefully with the || echo 'Cannot build.....

I see. So installing lib32gcc-9-dev should do the trick I guess

yes. I beautified the error now.


[release-1.8] workload entry configure command allows specifying ingress service name

This is an automated cherry-pick of #28446

@istio-testing: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-multicluster-k8s-tests_istio_release-1.8
73b3a08f16a676a184d0dc7d1f30fe3adaedb9a9
link
/test integ-multicluster-k8s-tests_istio_release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@shamsher31 could you make googlebot happy?

@istio-testing: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-operator-controller-tests_istio_release-1.8
73b3a08f16a676a184d0dc7d1f30fe3adaedb9a9
link
/test integ-operator-controller-tests_istio_release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@istio-testing: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-operator-controller-tests_istio_release-1.8
73b3a08f16a676a184d0dc7d1f30fe3adaedb9a9
link
/test integ-operator-controller-tests_istio_release-1.8

integ-security-k8s-tests_istio_release-1.8
73b3a08f16a676a184d0dc7d1f30fe3adaedb9a9
link
/test integ-security-k8s-tests_istio_release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


group label selector is not specific enough

I got this bug via my website:

the script has problems with group titles that only contain numbers. some admins never write ‘Group 3′ but only ‘3’. change function getGroupLabel to

this.getGroupLabel = function (nameOfGroup) {
    return $(".groupWrapper .header_element span:contains('" + nameOfGroup + "')");
};

somewhere at line 460..

fixed in ad41bf3


Create RHI vertex and index buffers asynchronously

In #975, we implemented asynchronous RHI texture creation after discovering the RHIAsyncCreateTexture2D function in Unreal. Similarly, there exist RHIAsyncCreateIndexBuffer and RHIAsyncCreateVertexBuffer that seem to suggest we can do a similar optimization for index and vertex buffers. We may in the process even find ways to directly upload quantized buffers. With run-of-the mill tilesets, this optimization may not improve much - but high-quality photogrammetry tilesets (e.g., centimeter-precise models) will almost certainly bottleneck during render thread vertex buffer creation.
As with the RHI-level texture creation PR, we will have to determine how to "link" the Unreal user-level static mesh object to the RHI-level resource. There will probably be a bunch of edge cases and varying support across platforms, but generally I think this should be possible.

I thought my comment might be useful for your future work. Previously I dealt with partial Vertex & Index buffer uploads in UE4. Apparently UE RHI layer didn't really use offset for static buffers so I ended up modifying that part of RHI (D3D11 only) i.e. source code. Hopefully no more changes required these days to implement direct uplod of quatized buffers.

Thanks for the note @RaiaN! Just to be sure I'm understanding... you're saying you needed to modify the UE source code itself?

Hey @kring. Yeah, what I mean is that in case you wanted to partially update vertex/index buffer X in 4.2X, which is created by the engine itself (at PostLoad time), you would need to modify Lock_ functions as Epic didn't implement support for partial updates of "static" buffers.
However, I assume you might be using BUF_Dynamic instead of BUF_Static so there should be no issues with partial updates in this case.

For reference, here's some of the latest related profiles in Unreal Insights...

from this PR.
Setting up the mesh and material look to be around half the time spent in ::LoadPrimitive, so if we can benefit from more asynchronous operation, fantastic.
Curiously, while we are using RHIAsyncCreateTexture2D for textures, it looks like we are using it in a function that waits for it to complete anyway? (kind of defeating the point)
https://github.com/CesiumGS/cesium-unreal/blob/95e3b227fc4138f9f3307c40c74493f6a4bbb218/Source/CesiumRuntime/Private/CesiumTextureUtility.cpp#L34

Curiously, while we are using RHIAsyncCreateTexture2D for textures, it looks like we are using it in a function that waits for it to complete anyway? (kind of defeating the point)

Waiting in a worker thread is much better than waiting in the game thread.
But in old versions of UE, the wait was "hidden", so it's possible we didn't even realize it was happening. It'd be interesting to explore whether we can eliminate it. But it doesn't defeat the point, in any case.

Waiting in a worker thread is much better than waiting in the game thread.... But it doesn't defeat the point, in any case.

Ah, I think I see.
So using RHIAsyncCreateTexture2D allows for a completion event later (which we don't currently take advantage of), but the other benefit is it can be called from a worker thread, where RHICreateTexture2D cannot?
Apologies for the naive questions, the UE docs on these calls are a bit sparse, and equally sparse.

but the other benefit is it can be called from a worker thread, where RHICreateTexture2D cannot?

Right. It is my understanding that all of the RHI* functions, unless explicitly documented otherwise, can only be called from the render thread.


.runsettings Data Collector not being applied in CLI

When you run dotnet test .\XUnitTest.sln -s .\XUnitTest\.runsettings against this example solution and import the code coverage results into Visual Studio 2022 Enterprise you can see references to unwanted binaries, i.e. Moq.dll. When you use the same .runsettings via Visual Studio's "Analyze Code Coverage" functionality you can only see references to the binaries generated by the build.

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

ID: 61ca4064-7481-a263-60fc-c70127f2ad16
Version Independent ID: 2878af44-8208-7bd8-46d4-3acda3e82ce0
Content: dotnet test command - .NET CLI
Content Source: docs/core/tools/dotnet-test.md
Product: dotnet-fundamentals
Technology: dotnet-cli
GitHub Login: @tdykstra
Microsoft Alias: tdykstra

@nohwnd Can you help with this?

@tdykstra @nohwnd Has slipped the net due the the "not triaged" label being removed.

@jakubch1 please help :)

Currently you have to create runsettings and exclude libraries (https://learn.microsoft.com/en-us/visualstudio/test/customizing-code-coverage-analysis?view=vs-2022)
In VS it is done automatically as we know all projects in the solution. In command line we don't have this knowledge.
We will work on simplifying this: https://github.com/microsoft/codecoverage/issues/12

Please change runsettings exclusions to:
								<ModulePath>.*xunit.execution.dotnet.dll$</ModulePath>
								<ModulePath>.*xunit.runner.visualstudio.dotnetcore.testadapter.dll$</ModulePath>
								<ModulePath>.*xunit.runner.utility.netcoreapp10.dll$</ModulePath>
								<ModulePath>.*xunit.assert.dll$</ModulePath>
								<ModulePath>.*unittests.dll$</ModulePath>
								<ModulePath>.*xunit.core.dll$</ModulePath>
								<ModulePath>.*humanizer.dll$</ModulePath>
								<ModulePath>.*xunit.runner.reporters.netcoreapp10.dll$</ModulePath>
								<ModulePath>.*moq.dll$</ModulePath>


Unable to download stream with muted bits, despite MP4 conversion disabled.

Hi. I've been trying to download this VOD for a good while now to watch locally later: https://www.twitch.tv/videos/1844237156
The log: TwitchLeecher log 28-08-2023.txt
Tried twice downloading as MP4. Failed. Tried downloading twice as TS. Failed.
I'm downloading on a NAS with 17TB of free space.
Looking at the log, it tries to download the unmuted vod and when it stumbles upon something that can't be download because it's muted, it fails outright.

Downloading file 'https://d1m7jfoe9zdc1j.cloudfront.net/30ae6eb63f5904dff200_droosy_38616551931_1070442622/chunked/2736-unmuted.ts' failed!

Imho, if I had the expertise, if I find muted parts, I would download the video and insert silence in the audio and do that until audio comes back. Maybe have an option to force muted/censored VOD like you would actually watch it on Twitch?
Windows 11 x64 (all patched up)
Ryzen 9 5900X
64GB DDR4 3600 CL16 RAM
EVGA GeForce RTX 3070 Ti
2TB Sabrent Rocket Plus nvme drive
Thanks.

Ok, I did some investigation and it seems, that this is a twitch bug, because this used to work a few months ago.
I don't know if the problem is the muted parts, but I found out the following
When watching the stream vod on twitch.tv and having a look at the network tab of your browser, the files gets downloaded the same way as twitch-leecher does. Sometimes, this fails with error 403 (forbidden.) This does not only happen in TwitchLeecher-DX, this happens also in the Browser

Once this error occurs, the vod-playback in the browser fails with error 2000 (A network error occured. try again later)

I will continue to watch this, maybe twitch fixes this anytime soon or I might have to implement something that TwitchLeecher skips this parts.

I will continue to watch this, maybe twitch fixes this anytime soon or I might have to implement something that TwitchLeecher skips this parts.

I think this is the best course of action. I'd insert black frames with text, "Unable to get stream information. This might be because the VOD or clip contains muted audio parts and Twitch Leecher-DX was unable to retrieve neither of them. Video will resume when sound resumes."

c2a9ef13396f26610b2e88625f800e4b05c3958c adresses this.
I will do some cleanup and insert text-frames as @Lebon14 suggested and publish a new version when done. I was able to download the vod's in question with the current build.

Thank you so much! Will update!


Game updated and cheat error

Game updated and cheat error
Capture: https://gyazo.com/9ebc2726d88f12ceb13f89db76b9b56e
Release Notes for 2/11/2020
2020.02.11 -
[ COMMUNICATIONS ]
– Players who receive significantly more communication abuse reports than others will receive a warning. If they continue to receive significantly more reports they will be muted by default. Other players can unmute them through the scoreboard as usual.
– Muting a player will now also hide their name and avatar.
– Reporting a player for abusive communications will now automatically mute them.
[ MISC ]
– Ballistic Shield will now block all melee attacks (knife, axe, fists, etc.)
– Texture and normal updates to the MAC-10 | Classic Crate to match new MAC-10 UV from Kai123

yeah same here, got it fixed?

@Davidjarrieta not fixed

https://www.youtube.com/watch?v=JD4rmt7Ym1A
this video explains why its crasing
submitReport = findPattern<decltype(submitReport)>(L"client_panorama", "\x55\x8B\xEC\x83\xE4\xF8\x83\xEC\x20\x8B\x4D\x08\x56\x57\xE8????\x8B\xF8\x8D\x4C\x24\x0C");

is outdated

if u want to just play the game and not use the reportbot then just remove this line(temporary fix).

i can't find this line

now who can fix it?

in visual studio go to source files -> memory.cpp, then comment out line 40 (submitreport line)

thx, i was searching on reportbot.cpp

you know you can search in github/visual studio too right

@danielkrupinski Report Bot signature needs to be updated it seems like

how tf do i fix this

by removing reportbot or getting the new sig

anyone know what the new signature is

can someone link the updated file

https://github.com/Akandesh/blazedumper

check that repo for updated sigs

check that repo for updated sigs

we need Report Bot signature not offsets

Updated. They added hidden cvar cl_mute_player_after_reporting_abuse, on by default. Also it seems you don't receive confirmation when reporting more than once per 10 seconds.


cmd/scollector: Updated Azure EA collector to add new tags.

Also converted to better invocation style.

I re-pushed this PR, as it never got merged when I originally submitted it, because the TravisCI job was borked back then. I haven't actually changed anything between now and then - but now the checks pass.


Preserve GNOME titlebar layout settings

Use the title bar button layout from GNOME settings. Some people would like to see VSCode preserve OS preferences. This PR adds functionality that hides maximize or minimize buttons according to GNOME tweaks.
Issue: none (or I didn't found)

 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.:x: AlexStrNik sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Only close button

Maximize and close button


Mirror readme items into action.yml

This PR mirrors the stuff from the readme into the action.yml

[x] options list descriptions
[x] title change
[x] description change (with emoji)

@spenserblack 📬 for (hopefully) a quick & ez pr review


Feat : Add GitHub Icon and Link

Description
Add a GitHub icon to the page for easy access to our repository.
Plan

[x] Add a GitHub icon near to copy to clipboard

[x] Add  our repo GitHub link in the icon
[x] Update readme with modified application screenshot

I am excited to work on this @subh05sus  Can you assign me this for SWOC24?

I would like to work on this issue. Can you assign this to me? @subh05sus

I would like to work on this if it hasn't been done already !

can i work on this if it has'nt been done by now?

assign me this issue


Inaccurate file position

First off, I want to thank you for a great plugin that I find very useful.
There is one thing I noticed and I hope you will be able to address it:
As I scroll through file - minimap shows Incorrect position, it is easier to explain on screenshots I've attached:

First: A line that is in the middle of my screen i displayed at the screeen bottom on minimap.
Second: I am scrolled all the content and it is not visible, minimap shows that I am on last code's visible page.

This makes navigation harder since minimap does not give you correct idea where are you at.
I should notice that I am using Windows, a high-dpi display (4k), PhpStorm 2018.1.4

based on the last screenshot I suspect the Show virtual space at the bottom (Editor > General) option is enabled - which, apparently, confuses the plugin and offsets the actual screen location.
:+1:  to have it fixed.

It does help but does not make minimap cursor perfect... I still can see some code not on the screen showed as on-screen in minimap.

Was about to report this.
@decuman Oddly enough, even without this option checked, there's still some empty space under the lest lines of the file.

So it's always a little inaccurate.
I do use Show virtual space at the bottom however, so it'd be awesome to have it fixed.


[Release] Bumped datadog_checks_dev version to 0.9.0

Motivation
New features, release signing fix

Codecov Report

Merging #2324 into master will decrease coverage by 10.8%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master   #2324       +/-   ##
==========================================
- Coverage    85.8%     75%   -10.81%
==========================================
  Files         196      17      -179
  Lines       13840     496    -13344
  Branches     1524      57     -1467
==========================================
- Hits        11875     372    -11503
+ Misses       1530     105     -1425
+ Partials      435      19      -416


goBack doesn't work

Version
5.0.0-alpha.6
Test Case
No Case
Steps to reproduce

index.js

export const history = createHistory();
const historyMid = routerMiddleware(history);

function configureStore(initialState) {
  const tools = window.devToolsExtension ? window.devToolsExtension() : f => f;
  const store = createStore(
    rootReducer,
    initialState,
    compose(
      applyMiddleware(asyncMiddleware(asyncFunc), historyMid),
      module.hot ? tools : f => f
    )
  );

  return store;
}

app.js

import { ConnectedRouter } from 'react-router-redux';
import { Route } from 'react-router-dom';
import { history } from './index';

export default () => (
  <ConnectedRouter history={history}>
    <AppContainer>
      <Route path="/home/index.html" component={AnalysisPage}/>
      {
        META_MENU_ITEM.map(({ item, component }) => (
          <Route path={`/${item}/index.html`} key={item} component={component} />
        ))
      }
    </AppContainer>
  </ConnectedRouter>
);

component.js

export default class Com extends Component {
  render() {
    return (
      <Button onClick={this.goBack}>
          back
        </Button>
    )
  }
}

Expected Behavior
Component also change when address field change.
Actual Behavior
Address field change into the correct url, but the component doesn't changed.

I just found the reason, because I didn't pass the router state into redux Component.

yes,you should user withRouter like this:
......
export default withRouter(connect(...)(YourComponent));

Yeah, I realized that. Thank you.:)


ES Modules Building Failed

I'm trying to use tsukuru in my library which uses the same structure as twurple. The process fails on ES modules building stage. The situation is the same with twurple itself. After yarn build / yarn rebuild I get the following output:
PS C:\Dev\twurple> yarn rebuild
yarn run v1.22.19
$ tsukuru --clean
√ Cleaning CJS outputs (81ms)
√ Checking & building changed projects for CJS (91694ms)
√ Bootstrapping ESM tsconfig files (24ms)
√ Cleaning ES module outputs (20ms)
\ Building ES modules... error TS18003: No inputs were found in config file 'C:/Dev/twurple/node_modules/.cache/tsukuru/esm-bootstrap/common/tsconfig.json'. Specified 'include' paths were '["C:\\Dev\\twurple\\packages\\common\\**\\*"]' and 'exclude' paths were '["../../../../../packages/common/node_modules","../../../../../packages/common/lib","../../../../../packages/common/es"]'.
√ Building ES modules (1ms)
Done in 92.34s.

After building I have lib folders, but es folders are missing.
tsukuru: 0.8.0-pre.5 (0.7.4 does not build at all with complete success console output)
Node: 16.16.0
OS: Windows 10
Am I doing something wrong? 🤔

Probably a Windows issue, as I really only tested this on a Linux environment. Might be something regarding the construction of the input paths.

Probably a Windows issue.

Yes, looks like it is. But there is a workaround. Windows currently has a feature Windows Subsystem for Linux (WSL2). If I run yarn build from Linux shell it works as expected.

Can you try upgrading to version 0.8,0-pre.6 and check if that fixes your problems?

Now it works perfectly. Good job!
PS C:\Dev\donation-alerts> yarn rebuild
yarn run v1.22.19
$ tsukuru --clean
√ Cleaning CJS outputs (32ms)
√ Checking & building changed projects for CJS (7171ms)
√ Bootstrapping ESM tsconfig files (14ms)
√ Cleaning ES module outputs (28ms)
√ Building ES modules (1375ms)
Done in 9.11s.


Fix flag Switch on/off the camera in version 0.1.9

This bug-fix resolve a small porblem in 0.1.9.
The flag Switch on/off not work in 0.1.9.

Thanks.

#128


fix(interactive): Integrate Gremlin Into Calcite Stack

What do these changes do?
Supported Steps are listed in #3136

Related issue number

Fixes

Codecov Report

Merging #3332 (2ae237a) into main (410fad7) will not change coverage.
Report is 1 commits behind head on main.
The diff coverage is n/a.

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #3332   +/-   ##
=======================================
  Coverage   41.04%   41.04%
=======================================
  Files         109      109
  Lines       11298    11298
=======================================
  Hits         4637     4637
  Misses       6661     6661

Continue to review full report in Codecov by Sentry.

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

@longbinlai rename child count of traversal predicates in https://github.com/alibaba/GraphScope/pull/3332/commits/753066126a9d37bd33a50289c0ecee2f56611411


haskellPackages.arbtt: 0.10.1 -> 2019-01-27, dontCheck

Motivation for this change
arbtt was broken for quite a while.
Things done
Recently fixes for the build failure were published to master, so I just bumped the source to current master.
Also needed to disable tests to run, as they seem to be broken in an easy to fix way.
I tested execution of the binaries and they are able to parse my logs.
This needs to be backported to release-18.09.

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

@GrahamcOfBorg build haskellPackages.arbtt

@GrahamcOfBorg build haskellPackages.arbtt

Generally speaking, I'd very much prefer to lobby @nomeata to simply release a new Hackage version.

You wish is my command. Uploaded as 0.10.2.

You wish is my command. Uploaded as 0.10.2.

Thank you very much. :-) We got the update in e98e4d21fa6744da13cd08fd4ebf585fdcdb19c2. So the only issue that's left is the failing test suite:

Running 1 test suites...
Test suite test: RUNNING...
Tests
  Golden tests
    dump small:                                                         FAIL
      arbtt-dump: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    import small:                                                       FAIL
      arbtt-import: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    dump small JSON:                                                    FAIL
      arbtt-dump: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    import small JSON:                                                  FAIL
      arbtt-import: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    import small JSON (list):                                           FAIL
      arbtt-import: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    recover small:                                                      FAIL
      arbtt-recover: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    stats small:                                                        FAIL
      arbtt-stats: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    stats small csv:                                                    FAIL
      arbtt-stats: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    stats small unicode:                                                FAIL
      arbtt-stats: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    stats gap handling:                                                 FAIL
      arbtt-stats: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
    condition binding stats:                                            FAIL
      arbtt-stats: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
  Regression tests
    Issue #4:                                                           OK
    Issue #5:                                                           OK
    Issue #14:                                                          OK
  Parser tests
    Parse condition bindings:                                           OK
    Trying to bind reserved identifiers:                                OK
    Reference bound condition identifiers:                              OK
    Parse condition binding usage in rule:                              OK
    Reference unbound condition identifier:                             OK
    Variables are only accessible within the condition assignment body: OK

11 out of 20 tests failed (0.00s)
Test suite test: FAIL

@peti Thanks for the fix.
arbtt is still brocken on release-19.03. Do I see it right, that e98e4d21fa6744da13cd08fd4ebf585fdcdb19c2 cannot be backported to release-19.03? If yes, I'd try to submit a new PR with the necessary bits but without the problem of hidden future updates you described in https://github.com/NixOS/nixpkgs/pull/57585#discussion_r266206478.

Do I see it right, that e98e4d2 cannot be backported to release-19.03?

We cannot port the whole commit, but it's possible to back-port the part of it that updates arbtt.


write_verilog: write RTLIL::Sa aka - as Verilog ?

Currently, the only ways (determined by grepping for regex \bSa\b) to
end up with RTLIL::Sa in a netlist is by reading a Verilog constant
with ? in it as a part of case, or by running certain FSM passes.
Both of these cases should be round-tripped back to ? in Verilog.
I'm not sure if there was some reason it was written as z. That code
goes back to the very first Yosys commit.

? and z is the same thing in Verilog. ? is just syntactic sugar, only allowed in certain places. From IEEE Std 1364-2005:

...

@cliffordwolf I know that very well. And I think, given that we have z and ? in Verilog map to z and - in RTLIL, there's no good reason for them to not roundtrip back to z and ? in Verilog. (My immediate motivation is improving nMigen's Verilog output, but this would still be my view if I never worked with anything but Verilog.)
If you want me to make sure ? is never emitted other than as a part of casez patterns, I can do that as well, it's a pretty minimal addition.

given that we have z and ? in Verilog map to z and - in RTLIL

That's not correct. See the following example. the z and the ? are both mapped to -.
module test (input [1:0] a, output reg x, y);
  always @* begin
    x = 0;
    y = 0;
    casez (a)
      2'bz1: x = 1;
      2'b1?: y = 1;
    endcase
  end
endmodule

If you want me to make sure ? is never emitted other than as a part of casez patterns, I can do that as well, it's a pretty minimal addition.

Short clarification: I'm not saying I'm categorically against the change (although we must absolutely make sure ? is only used in casez, otherwise we'd produce illegal Verilog), I'm trying to understand what the advantage is this change provides, considering that everything that reads the produced Verilog must treat ? and z the same.

That's not correct. See the following example. the z and the ? are both mapped to -.

Hm, you are right. I misread the code in const2ast. (What semantics for z in switches does RTLIL define?)

I'm trying to understand what the advantage is this change provides, considering that everything that reads the produced Verilog must treat ? and z the same.

Essentially, readability. Most Verilog materials I've seen recommend using exclusively ? in casez because z is more overloaded, and I agree with that. Since ? and z must be treated exactly the same, there is no change for downstream tooling. That's actually good, because it means we can make things a little nicer for human readers without regressing anything.

Thanks!


Add some of the local Solana team to the Organizations page

Didn't actually build this; presume it works, links, and formats well.

This OK with you, @alicialycan? Want to fill in your information?

@steveluscher thanks! I manually copied your info in, because we got Jacky in to run his Hugo-based Quartz tool for the site. Your pages are live --> https://dwebyvr.org/Solana
@alicialycan please do create a Person page for yourself! https://dwebyvr.org/tags/Person/


Production build issue Ionic

When creating Ionic production build, I am running into errors. I have tried with latest Ionic version i.e 3.9.2 and earlier versions up to 3.4.0 and I am not able to create production build with either of those.
I have create a sample repo to highlight the issue so it is easy for anyone to replicate. Following is the repo url:
https://github.com/Yogeshjuya1993/Ionic-Swipe-cards-Demo
I am planning on using this on production app which is due to be launched soon so any help on this is appreciated. Basically this is the only issue which is preventing me from releasing the build.
Looking forward to any help on this.

Compiler works when node_modules folder is removed from package folder. I guess if dependencies from package.json is removed or upgraded, the package can work with Ionic.

I have the same problem. What do I have exactly to do?

I removed the node_modules/ng2-swipe-cards/node_modules folder in my project.

@marmuel @Yogeshjuya1993  did you guys find a solution to this, please help

Get the same error :(

same error ... any solution?

I removed the node_modules/ng2-swipe-cards/node_modules folder in my project.
than it worked in --prod mode .
what's its node modules issue ??

The Module was made with an earlier version of angular and it just needs to
be updated. I believe it was developed for ionic2. The developer has gone
awol so I can help change it but on an individual basis
On Tue, 17 Sep 2019 at 07:22, idanb<EMAIL_ADDRESS>wrote:

I removed the node_modules/ng2-swipe-cards/node_modules folder in my
project.
than it worked in --prod mode .
what's its node modules issue ??
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ViCode/ng2-swipe-cards/issues/65?email_source=notifications&email_token=AGYU47PIYWEH6CMBJ5YIP5LQKBSPVA5CNFSM4FEJXSTKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD63KJFI#issuecomment-532063381,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGYU47LRBFXJDQBGK6ZRB43QKBSPVANCNFSM4FEJXSTA
.

--
This message and attachments are subject to a disclaimer. Please refer to
http://www.it.up.ac.za/documentation/governance/disclaimer/
http://www.it.up.ac.za/documentation/governance/disclaimer/ for full
details.

Is it possible to contribute this “update” for ionic 3 developers and push it to github project ?
Because each time I run “npm install” for other packages the node_modules of this package returns and annoying us .
Some other developers even don’t know that the node_modules of this package need to be removed in order to go to —prod mode .
We have to fix this package ....
Any idea how ?


PSNativeCommandErrorActionPreference non-zero 0 exit code exception false positive

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
There are quite a few programs that return non-zero success exit codes. With the PSNativeCommandErrorActionPreference experimental feature turned on this causes errors to be emitted to the console.
I propose that a variable and/or cmdlet maintain a dictionary of program successful exit codes to be checked at runtime when a program runs a non-zero exit code. The dictionary could also be expanded to include error codes. Imagine a community module(s) with a set of programs and success/error exit codes with descriptions that PowerShell could leverage to return to the user.
Register-ProgramExitCode [-Name] <string> [-ExitCode] <int> [[-Description] <string>] [[-Status] {Success | Error}] [<CommonParameters>]

A current example with brew:
PS /home/thomas> brew
Example usage:
  brew search TEXT|/REGEX/
  brew info [FORMULA|CASK...]
  brew install FORMULA|CASK...
  brew update
  brew upgrade [FORMULA|CASK...]
  brew uninstall FORMULA|CASK...
  brew list [FORMULA|CASK...]

Troubleshooting:
  brew config
  brew doctor
  brew install --verbose --debug FORMULA|CASK

Contributing:
  brew create URL [--no-fetch]
  brew edit [FORMULA|CASK...]

Further help:
  brew commands
  brew help [COMMAND]
  man brew
  https://docs.brew.sh
NativeCommandExitException: Program "brew" ended with non-zero exit code: 1.

Expected behavior
Programs that return successful non-zero exit codes; PowerShell does not write errors.

Actual behavior
Errors are written on all non-zero exit codes.

Error details
Exception             :
    Type        : System.Management.Automation.NativeCommandExitException
    Path        : /home/linuxbrew/.linuxbrew/bin/brew
    ExitCode    : 1
    ProcessId   : 1125
    ErrorRecord :
        Exception             :
            Type    : System.Management.Automation.ParentContainsErrorRecordException
            Message : Program "brew" ended with non-zero exit code: 1.
            HResult : -2146233087
        CategoryInfo          : NotSpecified: (:) [], ParentContainsErrorRecordException
        FullyQualifiedErrorId : ProgramExitedWithNonZeroCode
    Message     : Program "brew" ended with non-zero exit code: 1.
    HResult     : -2146233087
TargetObject          : /home/linuxbrew/.linuxbrew/bin/brew
CategoryInfo          : NotSpecified: (/home/linuxbrew/.linuxbrew/bin/brew:String) [], NativeCommandExitException
FullyQualifiedErrorId : ProgramExitedWithNonZeroCode

Environment data
7.4-preview4

Visuals
No response

As a (largely inconsequential) aside: brew without arguments does result in an error condition: brew considers this invalid syntax, which it signals with exit code 1 and - as a courtesy - outputs its CLI help to stderr. brew -h or brew --help are the expected ways to invoke help (and result in exit code 0).
In the examples below, I'll use test "$(Get-Item  nosuch*)" as a (contrived) example instead; the Unix test utility by design sets its exit code to 1 if the test evaluates to false (which isn't a failure condition).
A more realistic example is robocopy.exe, which uses several nonzero exit codes for success conditions - see the discussion in #18944.
An alternative per-call solution - not mutually exclusive with your proposal - is part of the larger Invoke-NativeCommand proposal in #18991 (it also proposes a per-call solution for overriding $PSNativeCommandArgumentPassing); it currently proposes something like
Invoke-NativeCommand -IgnoreExitCode { test "$(Get-Item  nosuch*)" }; if ($LASTEXITCODE) { ... }
That is, the assumption is that the caller will inspect the exit code later and take appropriate action.
Conceivably, this could be augmented as follows, in cases where the caller only cares about success vs. failure, not the specific exit code (which with test obviously doesn't make sense):
Invoke-NativeCommand -SuccessExitCode 0, 1 { test "$(Get-Item  nosuch*)" }; ...
My personal concerns with respect to a potential Register-ProgramExitCode cmdlet are twofold:

While there definitely are high-profile CLIs - notably robocopy - that call for a solution that doesn't conflict with $PSNativeCommandUseErrorActionPreference, my sense is that they are a small percentage overall - most utilities play by the rules (0 for success, nonzero for failure), so a registry of such exit codes may not be worth the effort.
On the flip side, if maintained at an organization level (rather than via a community module, see next point), I can see the appeal of a set-it-and-forget-it solution (but, as with any preference-variable-like solution, it amounts to invisible state, so that looking at a call in isolation you won't know how its exit code will be handled).

While a community effort always has its appeal, entrusting something as critical as error handling to a community-maintained module sounds problematic to me; for instance, users can reasonably argue over which of robocopy's nonzero exit codes should be considered a failure, utilities as a whole may be missing, values may be missing, the registered values can go stale over time, ...

I agree that the example provided was not the best and robocopy would have been a better one.
Lets first level set on some common points/facts.

Exit code 0 as success and any other value as failure is a best practice
There is nothing enforcing exit code best practice and developers can and will do their own thing (robocopy, wusa, etc)
$PSNativeCommandUseErrorActionPreference set to $true by default is a breaking change due to a new unhandled exception being thrown.

Now for my views on this feature:
Since we know that exit codes values are arbitrary and not enforced, PowerShell cannot assume zero is success and non-zero is a failure.

The user should be able to configure this feature on a per executable basis without having to change their execution method i.e. Invoke-NativeCommand
If the Register-ProgramExitCode feature was implemented, PowerShell should not ship/enable a default registry of values. That should be up to the user on what they want configured. If a user, community, or official PowerShell module(s) was created with a registry, it shouldn't be a concern since the user would make the active choice to install and import the module with the ability to overwrite any registration. I would equate this to Register-ArgumentCompleter, the command exists for users to add their own completers and community modules like TabExpansionPlusPlus are available. The user is free to install a module with completers and overwrite them as desired.
User defined exit codes provide user feedback when running an executable. If the user is able to register a failure exit code with a message or custom error/exception then the PoweShell engine could retrieve the exit code and compare to the registry to get a helpful error message other than non-zero exit code is a failure. Lets say a program test.exe connects to a web service, exit code 5 is invalid credential. The user creates a registration Register-ProgramExitCode -Name test.exe -ExitCode 5 -Description 'Invalid credential'. Now when the user runs the program they get an error with the specific meaning instead of a generic non-zero exit code exception with a number they have to look up for the meaning.

$PSNativeCommandUseErrorActionPreference set to $true by default is a breaking change

Fortunately that won't be the case: As @SteveL-MSFT  said here:

I believe it was mentioned in a separate issue that $PSNativeCommandUseErrorActionPreference is default to $false and only set to $true in 7.4 previews to get feedback.

In other words: the feature will be off by default in the release version - sensibly so.
It will be opt-in, just like Bash's set -e` is.

Register-ProgramExitCode feature was implemented, PowerShell should not ship/enable a default registry of exit codes.

Glad to hear it; that addresses my second concern.

exit codes values are arbitrary and best practices not enforced

I think proper framing is important here:

The 0-as-success-nonzero-as-failure is only a convention, yes, but a widely observed one with a long history.
Crucially, core features of many shells build on this convention:

&& and || in POSIX-compatible shells, cmd.exe, and nowadays also in PowerShell
Conditionals in POSIX-compatible shells
set -e in Bash, for instance, and soon $PSNativeCommandUseErrorActionPreference in PowerShell

So it should be noted that straying from this convention is ill-advised, because it runs afoul of core shell features, especially in the Unix world.

P.S.: To be clear:

I can see the appeal of what you're proposing to handle those programs that don't play by the rules - although there are only a few, and hopefully their number won't grow.
The zero-vs.-nonzero convention hast the inherent limitation that only specific error conditions can be differentiated, not success conditions, which is what robocopy does.

The @PowerShell/wg-powershell-engine discussed this and concluded that it's not worth adding a mechanism to register successful non-zero exit codes.  As @SteveL-MSFT points out, this feature is not enabled by default. It is "opt-in".  And there is a documented mechanism to handle these exception cases in scripts where you have enabled $PSNativeCommandUseErrorActionPreference.  From the about_Preference_Variables docs:
# Some native commands, like robocopy use non-zero exit codes to represent
# information other than errors. In these cases, you can temporarily disable
# the behavior and prevent non-zero exit codes from issuing errors.

$definedPreference = $PSNativeCommandUseErrorActionPreference
$PSNativeCommandUseErrorActionPreference = $false
robocopy.exe D:\reports\operational "\\reporting\ops" CY2022Q4.md
$robocopyExitCode = $LASTEXITCODE
if ($robocopyExitCode -gt 8) {
    throw "robocopy failed with exit code $robocopyExitCode"
}
$PSNativeCommandUseErrorActionPreference = $definedPreference

Although I suggest we update the docs to take advantage of scriptblock scoping & cleanup e.g.:
# Enable non-zero exit codes to stop script
$ErrorActionPreference = 'Stop'
$PSNativeCommandUseErrorActionPreference = $true

# This should stop the script if a non-zero exit code is returned
dotnet build

# Handle app that returns non-zero "successful" exit code
& {
    $PSNativeCommandUseErrorActionPreference = $false
    robocopy.exe D:\reports\operational "\\reporting\ops" CY2022Q4.md
    if ($LASTEXITCODE -gt 8) {
        throw "robocopy failed with exit code $robocopyExitCode"
    }
}

# This should stop the script if a non-zero exit code is returned
dotnet test


Document delay

It would be useful to have documentation (especially around read/SELECT functions) discussing the delay between when an update transaction succeeds and when the change is likely to be reflected in the results of a table read / SELECT statement call.  There are plenty of use cases where someone might take an action that appears to succeed, and then immediately reload a view expecting it to reflect the updated state.  If that view gets data from a read/SELECT query, it won't reflect the changed data right away, leading the user to think the change was not effective, and possibly taking additional actions such as trying to repeat the state change, which might make things worse.   There's currently no documentation about the source(s) or extent of this delay or if a developer can do anything to tell if it's over.

Hey @wbt
TL;DR;  The functionality you're requesting is already working on the main branch, and will be included in the next release.
More detail
We have been using the term "materialization" to describe how the validator listens to events and turns them into a SQLite database.  Basically the chain acts as the source of truth and all of the Validators in our network then materialize the state of event data when transactions are included in blocks.
There is an RPC endpoint named tableland_getReceipt that can be used to check if a given transaction hash has been materialized by a given Validator.
As of today, there is only one Validator (run by the core team) so this isn't that complicated.  However in the near future there will be many Validators, and in preparation for that we are building out documentation of all of this.  At the moment it's not quite finished though.

I closed this, but feel free to reopen if you don't feel you issue is resolved


Insert key via node RPC

@tomusdrw
Maybe worth checking that it can only be submitted to the local node? (ie <IP_ADDRESS>/localhost)

Maybe it's worth to add a flag too, to avoid having to run two separate commands?

I thought about adding it too, but seems rather clumsy to me
You will have one command like subkey insert gran test.key http://localhost:9933 and then completely different layout to do the same thing via generate like subkey genereate --node-url=... --key-type=...

Inserting a freshly generated key does not makes that much of sense, as you most of the time only want to insert keys manually on genesis. Later you should stick to rotate_keys anyway IMHO.


Cannot read property 'prototype' of undefined when instantiating Axios class from template

Hi everyone, how are you doing? I've been playing with the axios template but can't figure out what's wrong here. Whenever I try to instantiate the api I get the following error:
Cannot read property 'prototype' of undefined
with BFF being the class exported by the typescript file generated when running the command to generate axios code from swagger docs:
npx swagger-typescript-api -p ./src/clients/bff/bff.json -o ./src -n clients/bff/bff.ts --axios --api-class-name BFF
What am I missing here?

Thanks @js2me ! Could you reproduce the problem already? Please let me know if I can help with further information

Update: I've tried the same Api.ts file in our Next.js project and it worked fine. The problem only occurred in our React Native project.

Yes I known about this problem, api-class-name not working correctly, but I think I've fixed that in next.
Currently next branch has a lot of critical changes and I need more time for create next release


fix(BLE): Platform build error

Description
Fixed issue with unresolved issue when not targeting Maxim chips

/clang-format-run


Should enforceDynamicLinks be react/jsx-no-target-blank?

Maybe I'm missing something, but for the jsx-no-target-blank rule it says:
There are two main options for the rule:

{"enforceDynamicLinks": "always"} enforces the rule if the href is a dynamic link (default)
{"enforceDynamicLinks": "never"} does not enforce the rule if the href is a dynamic link

This didn't do anything for me. "react/jsx-no-target-blank": 2, works fine, but it wasn't really clear if that is indeed what you're meant to do.
Thanks

FWIW I'm using:
"eslint": "^5.6.0",
"eslint-plugin-react": "^7.11.1",

To set that option, configure the rule with [2, { “enforceDynamicLinks”: “always” }] instead of just 2.

Thanks for the information!
Personally I find that doc page pretty unclear if you just quickly looking for the rule. I'll try and update it a little later on, similar to this style


[feedback] gittyup on homebrew not available

While trying to install gittyup via homebrew, there was no formulae 'gittyup' available.
 >> brew install gittyup
Running `brew update --auto-update`...
Warning: No available formula with the name "gittyup". Did you mean gitup?
==> Searching for similarly named formulae...
==> Formulae
gitup

To install gitup, run:
  brew install gitup

Maybe the Murmele/Gittyup: Understand your Git history!#how-to-install section should be updated.

 >> brew install --cask gittyup
Error: Invalid `--cask` usage: Casks do not work on Linux

I'm using linux/ubuntu.
PS.: I'd prefer homebrew over flatpack (which the install-instructions also suggest), so I tried it first.

Hi, yes homebrew is only for Macos.
For linux: https://flathub.org/apps/details/com.github.Murmele.Gittyup

Hi, yes homebrew is only for Macos. For linux: https://flathub.org/apps/details/com.github.Murmele.Gittyup

Homebrew works on Linux quite well ...Homebrew on Linux — Homebrew Documentation.
Normally, I'm not a fan of flatpak, because even small programs (< 50 mb) become huge as a flatpak (>500 mb). Nevertheless, to sneak into gittyup, I installed via flatpak.
And gittyup is pretty awesome, thx for your work :-)

Normally, I'm not a fan of flatpak, because even small programs (< 50 mb) become huge as a flatpak (>500 mb). Nevertheless, to sneak into gittyup, I installed via flatpak.

This is true because of the required platform. But if multiple apps are using the same platform then the memory usage is getting smaller per app

And gittyup is pretty awesome, thx for your work :-)

Thank you :) I am happy to hear it :)
I did not know that brew works also on linux