Suggestion/Discussion: Public Gradle Slack Workspace/Gitter Channel

I had a conversation with @eriwen about this idea while at Kotlin Conf and offered to turn this into an issue that the community could weigh in.
In my opinion, one of the really valuable backbones of what is helping the Gradle Kotlin DSL community grow is the Gradle Kotlin DSL slack channel. This channel is currently through the larger KotlinLang Workspace.
I've learned a significant amount about how Gradle works and how to use the API through my interactions with @bamboo, @eskatos and the other community members that have since joined the chat.
I've been a member of this channel for ~11 months now and because of what I've learned I'm now able to help other developers with their problems and questions. I also regularly comment on issues opened against the project.
The Slack Channel made the project and the team members much more accessible which drew me into the community. I've since become pretty passionate about the project and have been contributing fixes and features to help move the project forward.
I propose that Gradle offer a public Slack Workspace or Gitter Channel for the general public.
There are various pros/cons that may come with this:
Cons

Issues/problems resolved through slack/gitter are not indexed and available to the public via search engine (problems resolved in the forum or stack overflow are).
Gradle engineers may become distracted by requests for support.
Without a paid Slack Workspace only the 10K most recent messages are searchable.
Another communication medium that needs to be moderated.

Pros

Helps build a larger community around the Gradle project.
Provides a medium with a fast feedback loop for developers that need support.
Outside contributors will be able to help one another and can grow to be self supporting.
Popular plugin authors can create channels specifically for support with their plugin without needing to create their own slack/gitter chat.
Great medium for networking.

Slack vs. Gitter
I've used both. For projects that are large and will have larger communities I think that Slack makes more sense.
Gitter
If you are dealing with a smaller communities Gitter is much more accessible but your are much more likely to get "drive by support" style questions.
You can create a Gitter account using your GitHub account. Joining a channel is really easy.
Gitter supports GitHub flavored markdown in chat which means you can do language specific syntax highlighting.
Slack
Requires more work to create an account/login. You have a different account per "Workspace".
Many companies are already using slack so developers can just add it into the existing app they are using for work.
There is also the option to integrate a gitter channel into a slack channel.

@JLLeitschuh Thank you for submitting this issue. One thing that would be especially helpful here is to clarify where the Gradle Forums cannot fulfill the community needs.

I can't really speak to the benefits/shortcomings of the forum format. Personally, I don't really ever use forums. I find (in general) the feedback loop is pretty slow. It's still kind of impersonal as well.
Maybe this would simply cater to people like me, some people like forums. I like the fast feedback loop of a chat system.

@JLLeitschuh A fast feadback loop is less important than a qualified answer.  What is more, I think a chat lacks the ability to be topic-based; which is to say, a forum is more a question-answer-place (something similar to Stackoverflow) that can be searched. Correct me if Slack provides such features. So, while a chat might indeed be helpful to make progress more quickly (for someone that got stuck), it is also less helpful for someone that got stuck later at the same or a similar point because it is usually harder to find what has been asked before and what were the answers.
One could actually formulate the question starting from the other end: what precisely makes a fast feedback loop hard to achieve or even impossible to achieve in a forum? Certainly not technical aspects. Rather, the way users usually use forums. But that is not an argument against a forum, as I think.

As another view point, the forums as they exist today are not topical.
Here are the current categories:

Which is essentially just the Help category.
I don't believe that these cover the different topics that people care about, and the forums make it more difficult for smaller sub communities to form around areas of interest. I find myself generally avoiding the forum due to low activity, (some) low effort posts, infrequent use of tags (https://discuss.gradle.org/tags/), and questions I would not answer or be interested in.
I could see a few areas where this could be more broadly expanded, and where natural growth of these communities might occur:

contributing
build-cache
plugin-developers (can probably be broken down more)
junit5
kotlin-dsl
android

A counter-point to having a Slack is that there are multiple different avenues of communication that exists today, and having more could lead to even more fragmented information:

https://twitter.com/gradle
This repository's issues
https://blog.gradle.org/
https://discuss.gradle.org
https://stackoverflow.com/questions/tagged/gradle

I don't think adding a centrally supported chat (specifically Slack) will have a negative impact, as other communities have had great success when using it in addition to their other communication protocols:

http://slack.kotlinlang.org/
http://slack.k8s.io/
https://dockercommunity.slack.com/
GoLang

I think Slack is generally just "easier" for people to use right now, because they are already using it and already in the pattern of communicating that way. My guess is the community participation when Gradle moved from JIRA to GitHub grew a huge amount, so moving to larger platforms might be another big benefit!

Something to consider: the #gradle IRC channel on freenode has been around for a long time. Activity is not that high but constant with a small hundred of people on average.

http://webchat.freenode.net/?channels=gradle using Freenode web chat
irc://irc.freenode.net:6667/%23gradle using any irc client, console, desktop or web

IRC is not as nice as Slack/Gitter/YouNameYourWebChat and many people don't like it. But the opposite is also true, tastes and colors. There are IRC gateways for Slack and others though. Some communities use those successfully (e.g. PouchDB).

Another alternative worth mentioning - https://github.com/blog/2471-introducing-team-discussions

Hello everyone! Today I am excited to introduce you to Gradle Community Slack! You can email me<EMAIL_ADDRESS>for an invite. Hope to see you in there!

@eriwen Hellow, the link is not working anymore, is it still possible to join?

Here is a link that currently works:
https://is.gd/xPCSJh

Doesn’t work for me 😩😭

Here's one I just confirmed should work:
http://gradl.es/slack-invite-2019

It seems this link is not active anymore now

Here we go: https://gradl.es/slack-invite-2020

Is the Gradle slack still active?


a few new scam addresses to block from a early in Janurary

plus hold this request bellow until i can provide an update in about 12hrs from now.

https://polkascan.io/kusama/account/DdePR2ejuXv8Wff9YrZDBwdwHnpHajp4uPgqb7m1UF8beek#transfers
stolen KSM gone into, >>>>
0x45daf2fbfffb589f652680e0c62928e8782ab89732217eb170b70733d398daa3

15x6f6M42ccmTq3emCtyCZUKCbYLH3msCPmHGnEgwUxZRAu4

16qHaQgJ96KidFaT2nzeYjtoqjLV5TETV65RyJ8sjAb2eLB
it would seem the stolen dot has been moved for staking purposes to a certain nominator , after the wallet was robbed of its contents. Is there a way to inform the nominator? ( it would be nice to slash this scammer, if only slash referred to that)
12xtAYsRUrmbniiWQqJtECiBQrMn8AypQcXhnQAc6RB6XkLW

You cannot slash your nominators. However a future version of the chain will allow validators to kick nominators. (The functionality is in substrate, will be in a future upgrade)
As per the previous addresses would need some links or discussions on eg. Polkaassembly, since it is difficult atm it is just on-chain transfers.

You cannot slash your nominators. However a future version of the chain will allow validators to kick nominators. (The functionality is in substrate, will be in a future upgrade)
As per the previous addresses would need some links or discussions on eg. Polkaassembly, since it is difficult atm it is just on-chain transfers.

You cannot slash your nominators. However a future version of the chain will allow validators to kick nominators. (The functionality is in substrate, will be in a future upgrade)
As per the previous addresses would need some links or discussions on eg. Polkaassembly, since it is difficult atm it is just on-chain transfers.

let me speak to the victim and get them to place topic into one of the Telegram discussion rooms.

You cannot slash your nominators. However a future version of the chain will allow validators to kick nominators. (The functionality is in substrate, will be in a future upgrade)
As per the previous addresses would need some links or discussions on eg. Polkaassembly, since it is difficult atm it is just on-chain transfers.

let me speak to the victim and get them to place topic into one of the Telegram discussion rooms.

Polkassembly is really better for these since all the governance-related stuff is in there.
Not trying to be a pain, but addresses are difficult - I mean it "looks like a transfer on-chain". Obviously where there is a scam site it is easier, since the scammers posted the addresses :)

Polkassembly is really better for these since all the governance-related stuff is in there.
Not trying to be a pain, but addresses are difficult - I mean it "looks like a transfer on-chain". Obviously where there is a scam site it is easier, since the scammers posted the addresses :)

Polkassembly, how is the best way to reach them and post messages and
addresses on there?
Is it a weblink, telegram group?
On Thu, Jan 28, 2021 at 12:06 AM Jaco Greeff<EMAIL_ADDRESS>wrote:

Polkassembly is really better for these since all the governance-related
stuff is in there.
Not trying to be a pain, but addresses are difficult - I mean it "looks
like a transfer on-chain". Obviously where there is a scam site it is
easier, since the scammers posted the addresses :)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/polkadot-js/phishing/issues/73#issuecomment-768272808,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQAE4UDYQA6GKKOQ5F6SRFTS4AFXDANCNFSM4WUIDFGA
.

Polkassembly, how is the best way to reach them and post messages and
addresses on there?
Is it a weblink, telegram group?
On Thu, Jan 28, 2021 at 12:06 AM Jaco Greeff<EMAIL_ADDRESS>wrote:

Polkassembly is really better for these since all the governance-related
stuff is in there.
Not trying to be a pain, but addresses are difficult - I mean it "looks
like a transfer on-chain". Obviously where there is a scam site it is
easier, since the scammers posted the addresses :)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/polkadot-js/phishing/issues/73#issuecomment-768272808,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQAE4UDYQA6GKKOQ5F6SRFTS4AFXDANCNFSM4WUIDFGA
.

It is just a forum. So yes, it automatically creates some discussions based on on-chain proposals, but you can also add any discussion via https://kusama.polkassembly.io/discussions
For instance, here are other scam post created there -
https://polkadot.polkassembly.io/post/270
https://polkadot.polkassembly.io/post/268
https://polkadot.polkassembly.io/post/235
The reason why I'm suggesting there is just that is is supposed to be well known and accessible to all.
As for the website, there is currently a static-only view available of all data captured here - https://polkadot.js.org/phishing/
(Sadly submission is not as easy-as-pie atm since it does only take you to GH, so assumes an account - which 99% of people don't have. So there would be some work left to make it easy. However at least it is a friendlier view - search/check host/address is next up there as a useful improvement)

It is just a forum. So yes, it automatically creates some discussions based on on-chain proposals, but you can also add any discussion via https://kusama.polkassembly.io/discussions
For instance, here are other scam post created there -
https://polkadot.polkassembly.io/post/270
https://polkadot.polkassembly.io/post/268
https://polkadot.polkassembly.io/post/235
The reason why I'm suggesting there is just that is is supposed to be well known and accessible to all.
As for the website, there is currently a static-only view available of all data captured here - https://polkadot.js.org/phishing/
(Sadly submission is not as easy-as-pie atm since it does only take you to GH, so assumes an account - which 99% of people don't have. So there would be some work left to make it easy. However at least it is a friendlier view - search/check host/address is next up there as a useful improvement)

We have a new Scam link from one of the current remaining Polkadot Scam groups. They added a link to a Chainlink address.
The cell phone version of the link is
https://bit.lu/2M3CRPr
and then
chainlinkdrop.network.

We have a new Scam link from one of the current remaining Polkadot Scam groups. They added a link to a Chainlink address.
The cell phone version of the link is
https://bit.lu/2M3CRPr
and then
chainlinkdrop.network.

This issue has been open for 21 days with no activity and is not labelled as an enhancement. It will be closed in 7 days.


minor refine error message for broadcast shuffle buffer

Proposed changes
Issue Number: close #xxx

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

run buildall


"Cojocna", "Boj-Cătun", "Boju", "Cara", "Huci", "Iuriu de Câmpie", "Moriști", "Straja" are listed in the drop-down

Description:
When user writes "Cojocna", "Boj-Cătun", "Boju", "Cara", "Huci", "Iuriu de Câmpie", "Moriști" and "Straja" the locations appear in the drop-down menu next to the comune and the county which is a part according to the law
Precondition:
The website is up an running.

Step 1
Write in the search bar "Cojocna"
Expected results
The location appears in the drop-down menu as "Sat Cojocna, CLUJ (Cojocna)"

Step 2
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Boj-Cătun"
Expected results
The location appears in the drop-down menu as "Sat Boj-Cătun, CLUJ (Cojocna)"

Step 4
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Boju"
Expected results
The location appears in the drop-down menu as "Sat Boju, CLUJ (Cojocna)"

Step 6
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 7
Write in the search bar "Cara"
Expected results
The location appears in the drop-down menu as "Sat Cara, CLUJ (Cojocna)"

Step 8
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 9
Write in the search bar "Huci"
Expected results
The location appears in the drop-down menu as "Sat Huci, CLUJ (Cojocna)"

Step 10
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 11
Write in the search bar "Iuriu de Câmpie"
Expected results
The location appears in the drop-down menu as "Sat Iuriu de Câmpie, CLUJ (Cojocna)"

Step 12
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 13
Write in the search bar "Moriști"
Expected results
The location appears in the drop-down menu as "Sat Moriști, CLUJ (Cojocna)"

Step 14
Press "x" button.
Expected results
The location was deleted from the search bar.

Step 15
Write in the search bar "Straja"
Expected results
The location appears in the drop-down menu as "Sat Straja, CLUJ (Cojocna)"


Improve MultiRainbow interface.

There are a few things we could do to make the MultiRainbow tool easier to use.

Add a .compare() method to rainbows that returns and MultiRainbow object. This would allow us to do something like a.compare([b,c]).imshow() to make a joint imshow of rainbows a, b, c. It should probably check for uniqueness, in case someone does a.compare([a,b,c]) and we don't want to repeat a twice.
Allow MultiRainbow (and .compare) to accept dictionaries as well as lists. We'll often want to have labels associated with the independent rainbows, so a dictionary with informative keys would be a natural type of input. (I noticed I was making a lot of dictionaries full of different rainbows for the same underlying data.)
Consider an option for attaching labels to each individual Rainbow, so that a MultiRainbow could figure out plotting labels that are already associated with the component rainbows (e.g. without dictionary keys or the names= list being set.) This could also propagate that label in to the __repr__ for each rainbow, so it appears in its default representations.

Closed by #102


[Feature Request] Support for Flutter

I recently moved from native development to Flutter seeing Google backing its development.
Since both TensorFlow and Flutter is by Google will there be a support for Flutter in Future?

@petewarden do you have any comments on this?

What kind of support were you thinking of?
At this time, there are no concrete plans for any Dart APIs for TensorFlow to be shipped as a flutter package. You may want to use something like https://flutter.io/platform-channels/ to integrate with TensorFlow/TensorFlowLite in your mobile application.

@asimshankar if we were to use platform channels, we need to code in both swift and kotlin. @nikhil-minz  is referring to plugin support like Flutterfire for firebase

Hi,
I created a Flutter plugin for TensorFlow Lite. It works on both iOS and Android.
https://pub.dartlang.org/packages/tflite

@asimshankar, any reconsideration for an official Dart implementation?
Two years after this issue was closed, Dart lang has had a real revolution and we can increasingly see applications developed on it with Flutter, AngularDart and server side. I think it would be great if we also had a Tensoflow implementation for Dart.

Check https://github.com/dart-lang/tflite_native/pull/22

For firebase instead https://github.com/FirebaseExtended/flutterfire/issues/788

TensorFlow Lite Flutter Plugin is now available am15h/tflite_flutter_plugin. It provides a Dart API similar to the TFLite Java API.
It is built on the top of the bindings from dart-lang/tflite_native under the guidance of TensorFlow Lite team.

@am15h Is https://github.com/dart-lang/tflite_native/issues/42 going to impact your GSOC proejct?

@bhack It won't,   am15h/tflite_flutter_plugin is fully functional without any use of dart:cli.

any news update?


Security, Authentication, LDAP:  rancher server error on principal search (groups, users)

What kind of request is this (question/bug/enhancement/feature request):
BUG
Steps to reproduce (least amount of steps as possible):
Configure Security, Provider Open LDAP
Enter information  requested (the same like many other tools and systems)
Test-authentication: success.
Afterwards
Select : "Allow members of Clusters, Projects, plus Authorized Users and Organizations" radio.
Start entering some user name into "Authorized Users and Organizations" input field
Result:
No users or groups available  -therefore  LDAP authorization ist not usable.
It is not possible to select users or groups and to assign them as a members of cluster.
Panic Errors in rancher server Logs:
2019/05/10 16:20:04 [ERROR] Panic serving api request:
goroutine 52240 [running]:
runtime/debug.Stack(0xc005c7a930, 0x33f6e40, 0x6a97ee0)
        /usr/local/go/src/runtime/debug/stack.go:24 +0xa7
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.(*Server).ServeHTTP.func1(0x41d6e80, 0xc00739dcf0)
        /go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:175 +0x67
panic(0x33f6e40, 0x6a97ee0)
        /usr/local/go/src/runtime/panic.go:513 +0x1b9
github.com/rancher/rancher/pkg/auth/providers.SearchPrincipals(0x68fb7d6, 0x1, 0x0, 0x0, 0xc0116e47aa, 0x5, 0xc01139cfa0, 0x17, 0xc0116e47d0, 0xb, ...)
        /go/src/github.com/rancher/rancher/pkg/auth/providers/providers.go:137 +0x74
github.com/rancher/rancher/pkg/auth/principals.(*principalsHandler).actions(0xc0028148c0, 0xc009fa78ab, 0x6, 0xc00555e180, 0xc0059370e0, 0x0, 0x0)
        /go/src/github.com/rancher/rancher/pkg/auth/principals/handler.go:56 +0x3f7
github.com/rancher/rancher/pkg/auth/principals.(*principalsHandler).actions-fm(0xc009fa78ab, 0x6, 0xc00555e180, 0xc0059370e0, 0x0, 0x0)
        /go/src/github.com/rancher/rancher/pkg/auth/principals/schema.go:16 +0x52
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.handleAction(0xc00555e180, 0xc0059370e0, 0x0, 0x0)
        /go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:263 +0x62
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.(*Server).handle(0xc00119b810, 0x41d6e80, 0xc00739dcf0, 0xc00c9c8400, 0xc00b651380, 0xc005d2dcb0, 0xc005c7b6d0)
        /go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:251 +0xd2
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.(*Server).ServeHTTP(0xc00119b810, 0x41d6e80, 0xc00739dcf0, 0xc00c9c8400)
        /go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:180 +0x7d
github.com/rancher/rancher/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc0020a6d90, 0x41d6e80, 0xc00739dcf0, 0xc00c9c8400)
        /go/src/github.com/rancher/rancher/vendor/github.com/gorilla/mux/mux.go:159 +0xf1
github.com/rancher/rancher/pkg/auth/requests.authHeaderHandler.ServeHTTP(0x41a1080, 0xc005f28f00, 0x4196800, 0xc0020a6d90, 0x41b4d00, 0xc003c6bd00, 0x41a1040, 0xc003bf23f0, 0x41d6e80, 0xc00739dcf0, ...)
        /go/src/github.com/rancher/rancher/pkg/auth/requests/filter.go:110 +0x60d
github.com/rancher/rancher/pkg/audit.auditHandler.ServeHTTP(0x4195140, 0xc005029c40, 0x0, 0x41d6e80, 0xc00739dcf0, 0xc00c9c8200)
        /go/src/github.com/rancher/rancher/pkg/audit/filter.go:31 +0x46a
github.com/rancher/rancher/server/responsewriter.ContentType.func1(0x41c1d80, 0xc0057a8d20, 0xc00c9c8200)
        /go/src/github.com/rancher/rancher/server/responsewriter/content.go:33 +0x93
net/http.HandlerFunc.ServeHTTP(0xc0030c1de0, 0x41c1d80, 0xc0057a8d20, 0xc00c9c8200)
        /usr/local/go/src/net/http/server.go:1964 +0x44
github.com/rancher/rancher/server/responsewriter.Gzip.func1(0x41d6cc0, 0xc01107f960, 0xc00c9c8200)
        /go/src/github.com/rancher/rancher/server/responsewriter/gzip.go:60 +0x1ac
net/http.HandlerFunc.ServeHTTP(0xc0030c1e00, 0x41d6cc0, 0xc01107f960, 0xc00c9c8200)
        /usr/local/go/src/net/http/server.go:1964 +0x44
github.com/rancher/rancher/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc0020a6bd0, 0x41d6cc0, 0xc01107f960, 0xc00c9c8200)
        /go/src/github.com/rancher/rancher/vendor/github.com/gorilla/mux/mux.go:159 +0xf1
github.com/rancher/rancher/pkg/dynamiclistener.(*Server).cacheIPHandler.func1(0x41d6cc0, 0xc01107f960, 0xc01114a700)
        /go/src/github.com/rancher/rancher/pkg/dynamiclistener/server.go:436 +0x101
net/http.HandlerFunc.ServeHTTP(0xc003d50fa0, 0x41d6cc0, 0xc01107f960, 0xc01114a700)
        /usr/local/go/src/net/http/server.go:1964 +0x44
net/http.serverHandler.ServeHTTP(0xc005e99ad0, 0x41d6cc0, 0xc01107f960, 0xc01114a700)
        /usr/local/go/src/net/http/server.go:2741 +0xab
net/http.(*conn).serve(0xc010d500a0, 0x41e0380, 0xc0132a8200)
        /usr/local/go/src/net/http/server.go:1847 +0x646
created by net/http.(*Server).Serve
        /usr/local/go/src/net/http/server.go:2851 +0x2f5

Other details that may be helpful:
LDAP-Server: Oracle Internet Directory.
Environment information
- Rancher version:  v 2.2.2 , Reproducible also with  v2.2.3-rc8
- Installation option: single install

Docker version (use docker version):

$ docker version
Client:
 Version:           18.09.0
 API version:       1.39
 Go version:        go1.11.1
 Git commit:        4d60db472b
 Built:             Thu Nov  8 21:14:51 2018
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          18.09.5
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.8
  Git commit:       e8ff056dbc
  Built:            Thu Apr 11 04:50:00 2019
  OS/Arch:          linux/amd64
  Experimental:     false

I have same issue,

DEBUG Logging
DEBUG] Requesting user: user-s6xl6, Requesting groups: [system:authenticated] Impersonate user:  Impersonate group: []
2019/05/22 08:21:12 [ERROR] Panic serving api request:
goroutine 57351 [running]:
runtime/debug.Stack(0xc001fd68a0, 0x33d62a0, 0x6a44e90)
/usr/local/go/src/runtime/debug/stack.go:24 +0xa7
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.(*Server).ServeHTTP.func1(0x419afe0, 0xc000af1ac0)
/go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:175 +0x67
panic(0x33d62a0, 0x6a44e90)
/usr/local/go/src/runtime/panic.go:513 +0x1b9
github.com/rancher/rancher/pkg/auth/providers.SearchPrincipals(0xc002abf0f8, 0x5, 0x0, 0x0, 0xc0012dede8, 0x5, 0xc000e31b00, 0x17, 0xc0012dee40, 0xb, ...)
/go/src/github.com/rancher/rancher/pkg/auth/providers/providers.go:137 +0x74
github.com/rancher/rancher/pkg/auth/principals.(*principalsHandler).actions(0xc0002bc8c0, 0xc001ed0e8b, 0x6, 0xc001e9f9a0, 0xc00120c120, 0x0, 0x0)
/go/src/github.com/rancher/rancher/pkg/auth/principals/handler.go:56 +0x3f7
github.com/rancher/rancher/pkg/auth/principals.(*principalsHandler).actions-fm(0xc001ed0e8b, 0x6, 0xc001e9f9a0, 0xc00120c120, 0x0, 0x0)
/go/src/github.com/rancher/rancher/pkg/auth/principals/schema.go:16 +0x52
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.handleAction(0xc001e9f9a0, 0xc00120c120, 0x0, 0x0)
/go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:263 +0x62
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.(*Server).handle(0xc00088ef20, 0x419afe0, 0xc000af1ac0, 0xc002449800, 0xc00232fe00, 0xc0013b4750, 0xc001fd7640)
/go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:251 +0xd2
github.com/rancher/rancher/vendor/github.com/rancher/norman/api.(*Server).ServeHTTP(0xc00088ef20, 0x419afe0, 0xc000af1ac0, 0xc002449800)
/go/src/github.com/rancher/rancher/vendor/github.com/rancher/norman/api/server.go:180 +0x7d
github.com/rancher/rancher/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc00062c230, 0x419afe0, 0xc000af1ac0, 0xc002449800)
/go/src/github.com/rancher/rancher/vendor/github.com/gorilla/mux/mux.go:159 +0xf1
github.com/rancher/rancher/pkg/auth/requests.authHeaderHandler.ServeHTTP(0x4165260, 0xc001209b00, 0x415aa20, 0xc00062c230, 0x4178ee0, 0xc000e80e00, 0x4165220, 0xc0013b4e10, 0x419afe0, 0xc000af1ac0, ...)
/go/src/github.com/rancher/rancher/pkg/auth/requests/filter.go:110 +0x60d
github.com/rancher/rancher/pkg/audit.auditHandler.ServeHTTP(0x4159360, 0xc000ff4400, 0x0, 0x419afe0, 0xc000af1ac0, 0xc002449600)
/go/src/github.com/rancher/rancher/pkg/audit/filter.go:31 +0x46a
github.com/rancher/rancher/server/responsewriter.ContentType.func1(0x4185f20, 0xc000d2d470, 0xc002449600)
/go/src/github.com/rancher/rancher/server/responsewriter/content.go:33 +0x93
net/http.HandlerFunc.ServeHTTP(0xc000b0b4e0, 0x4185f20, 0xc000d2d470, 0xc002449600)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/rancher/rancher/server/responsewriter.Gzip.func1(0x419ae20, 0xc002612620, 0xc002449600)
/go/src/github.com/rancher/rancher/server/responsewriter/gzip.go:40 +0x1d2
net/http.HandlerFunc.ServeHTTP(0xc000b0b500, 0x419ae20, 0xc002612620, 0xc002449600)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/rancher/rancher/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc00062c1c0, 0x419ae20, 0xc002612620, 0xc002449600)
/go/src/github.com/rancher/rancher/vendor/github.com/gorilla/mux/mux.go:159 +0xf1
github.com/rancher/rancher/pkg/dynamiclistener.httpRedirect.func1(0x419ae20, 0xc002612620, 0xc002449400)
/go/src/github.com/rancher/rancher/pkg/dynamiclistener/server.go:506 +0x278
net/http.HandlerFunc.ServeHTTP(0xc000954000, 0x419ae20, 0xc002612620, 0xc002449400)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/rancher/rancher/pkg/dynamiclistener.(*Server).cacheIPHandler.func1(0x419ae20, 0xc002612620, 0xc002449400)
/go/src/github.com/rancher/rancher/pkg/dynamiclistener/server.go:436 +0x101
net/http.HandlerFunc.ServeHTTP(0xc000954040, 0x419ae20, 0xc002612620, 0xc002449400)
/usr/local/go/src/net/http/server.go:1964 +0x44
net/http.serverHandler.ServeHTTP(0xc0015f1790, 0x419ae20, 0xc002612620, 0xc002449400)
/usr/local/go/src/net/http/server.go:2741 +0xab
net/http.(*conn).serve(0xc002d3ba40, 0x41a4320, 0xc0023ae580)
/usr/local/go/src/net/http/server.go:1847 +0x646
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2851 +0x2f5

No anyone have idea ???

@tannh are you also using a single node cluster? @donatasnicequestion and @tannh have you tried the 2.2.8 version?

we user single node rancher deployment (upgraded up to 2.2.8).
The bug ist reproducible also with 2.2.8. at our environment.

This issue isn't reproducible, the fix is to avoid panic and add error message to indicate what exactly fails, so on trying 2.3.4 we get an idea of where the error is from. Assigning it to @maggieliu based on discussion with @deniseschannon instead of to QA.

@donatasnicequestion @tannh would you mind testing and see if you can reproduce with a new RC?

@maggieliu thanks for your efforts. I tested this issue with a new RC v2.3.4-rc4:
Step 1. configure LDAP. Log entry
..
 [INFO] Updating user user-rvg8v. Adding principal ist displayed.
..

Step 2. Select a Radio "Allow members of cluster etc." and start entering a Group into "Authorized Users and organisations"
Error in a log shows up on each keystroke:
...
[ERROR] Unknown error: [SearchPrincipals] no authProvider specified in token `
...

Tested with latest image v2.3-head  version   565ef1a85.

Configure openLdap authentication.
Able to search and add groups to "Allow members of Clusters, Projects, plus Authorized Users and Organizations" in "Site Access" section.

Tested with rancher v2.3-head (image 772124c841ee)

Configured open LDAP in the setup.
"Search Filter" field option is presented for User and Groups in "Customize Schema" section. Users have the option to set these fields when OpenLdap auth is enabled. When the field is set , this filter gets applied to the list of users/groups that get searched when adding users to add members to cluster/projects.
Able to search and add users/groups to "Allow members of Clusters, Projects, plus Authorized Users and Organizations" in "site access"


Adjust how logos are added + include visid banner version

We needed to create a version with the VisID black bar and USGS logo on the bottom. To do so, we needed to create frames that did not already have the logo on them so that it wasn't duplicated (couldn't just cover up the logo as we do in gage-conditions because it isn't over a solid background).
Thus, this PR:

Removes the use prep_watermark_fun() for each each frame.
Creates a _nologo version of both the GIF and video files
Adds the grey logo to the topleft for both the GIF and video files
Uses the _nologo video file and appends the visid black bar at the bottom (this creates a slightly different size video fiile)

Currently having this build all the way through in Henri as an example to make sure it works. Will un-draft it when that is complete and add some screenshots, so you can see the differences.

Might want to pick an in/ logo that I don't need to make transparent or remove the background. Seems to be missing parts. Would be simple enough to just replace 6_visualize/in/usgs_logo_black.png.

New logo in video:

New logo in GIF (still a bit grainy... :( but looks good in video):

Since there is still some graininess, we may just want to release the video file on twitter, too. I don't think we see the autoplay issues with videos that we used to.


PDF version

Uhm.. png is nice but not as searchable, so how about a PDF version :cowboy_hat_face:

Very nice

yeah i was looking for PDF searchable, hope the creator will do another favor to the community
THANK YOU


issue with method 'hasCast' when model extends 'IndexConfigurator' instead 'Model

Hi.
I use a package dyrynda/laravel-model-uuid for use binaries uuids type 4.
When extend my class 👍
use ScoutElastic\IndexConfigurator;
use ScoutElastic\Migratable;
use Dyrynda\Database\Support\GeneratesUuid;

class Advert extends IndexConfigurator
{
    use GeneratesUuid;
    use Migratable;

   protected $casts = ['uuid' => 'uuid'];
...

But this code get a issue with I need implement method hasCast. This is a Abstract Method of GeneratesUuid
/**
     * Determine whether an attribute should be cast to a native type.
     *
     * @param  string  $key
     * @param  array|string|null  $types
     * @return bool
     */
    abstract public function hasCast($key, $types = null);

But I'm lost about this and what can I do to correct the problem. I only know that if extend of Model work perfectly.
Apreciate some ideas.

Hi @abkrim.
This probably happens because you are trying to use the GeneratesUuid trait on your IndexConfigurator, but you actually need to use it on your Model instead.
The IndexConfigurator is only responsible for configuring your index on Elasticsearch.
I'm closing this issue since it isn't a bug or feature request. For questions please use Stack Overflow.


Fultext Search

Can u post a example for do a Fulltext search?
In project example, i see the use of wildcard to search, but can i use like this?
 MyDomainClass.search().list{ "word to search in all indexed fields" }

Did you read the README? Please see here https://github.com/mathpere/grails-hibernate-search-plugin#mixing-with-criteria-query
a simple example using fuzzy search (just remove the join part).
Anyway you have to specify on which property you want to filter, the code you provide in your question doesn't include any.

Did you read my question? My question was exactely about search in all indexed properties without specify one!

Ok. Sorry I didn't read the string's content. Then no, it is not possible the way you suggest, you have to specify properties. That being said, I think you can call a getIndexedProperties() on the object returned by MyDomain.search() (please see HibernateSearchApi for comprehensive reference).
If you ever want to contribute to add the behavior you describe, please file a PR, I would definitely review it.
Please close issue if it answers your question.
Bye


[nri-bundle] Changes and release notes

Howdy folks, just a request here.
When new versions are released there are often no change notes ("what's changed") associated.
Just take a look here. It's here for some, but not all.
This makes it really difficult to determine is a fix or feature we need is included.
Can these be consistently added going forward?
Thank you.

We appreciate you taking the time to bring this to our attention.
We are currently adding automated release notes for all the New Relic integration repositories. However, this repository won't be taken into account during this first iteration but it will updated later.
If you have any further questions or comments about this, please let us know by replying to this issue.


iOS Map Clustering

I'm submitting a ...  (check one with "x")
[ ] question
[x] any problem or bug report
[ ] feature request
The plugin version:  (check one with "x")
[x] 2.0-beta3 (github)
[ ] 2.0 (npm)
If you choose 'problem or bug report', please select OS:  (check one with "x")
[ ] Android
[x] iOS
cordova information:  (run $> cordova plugin list)
com.googlemaps.ios 2.4.0 "Google Maps SDK for iOS"
cordova-plugin-call-number 1.0.1 "Cordova Call Number Plugin"
cordova-plugin-device 1.1.6 "Device"
cordova-plugin-googlemaps 2.0.10 "cordova-plugin-googlemaps"
cordova-plugin-statusbar 2.2.3 "StatusBar"
cordova-plugin-whitelist 1.3.2 "Whitelist"
{}

Current behavior:
I use google maps to cluster different locations with custom icon. The map moves zooms in/out as expected. Each time I move the map, I update the location markers (clusters) with MAP_DRAG_END event. First I clear the map, and after that, I repopulate the array of markers for the cluster. Everything works just fine, but at some point my app crashes. This does not happen right away and seems to be random, but it mostly happens when I use rapid movements, zooms in/outs.
Expected behavior:
The map should move/zoom in/out and update markers/clusters without crashing. This works fine, but as I mentioned above, at random times it crashes. I am not sure if this happens on Android as well, since I can only test it on iOS.
Steps to reproduce:
Move/Zoom in/out on map quickly.
Screen capture or video record:
https://imgur.com/PmIV68z
Related code, data or error log (please format your code or data):
Here are some device crash logs:

https://pastebin.com/8JUTnfjn
https://pastebin.com/sm3zbG2a
https://pastebin.com/ajVk4V3t

Xcode console: when launching the app:
2017-09-28 14:40:16.116 Potdrive[9494:7506543] THREAD WARNING: ['Console'] took '407.906982' ms. Plugin should use a background thread.

When tested on simulator (crash log):
https://imgur.com/a/r9cB0
Optionally, sometimes when clicking on a cluster, the cluster doesn't do anything.
I think there is a memory leak or something goes wrong (sempaphores) when redrawing the markers, more precisely, when deleting the old markers from the map.

Please  share your project files on github.

@wf9a5m75 https://github.com/mihaicolceriu/phonegap

I did not have an inspiring name for that function, at the time.
When navigating through the app, I hide the map using map.setDiv(null).
The function shows the map when user returns to the map.

In that case, you just need to do map.setDiv(div).
  function enableMap() {
      map.setDiv(div)
  }

Good catch, thank you.
The enableMap function is only called when navigating through the app. When the app first loads, it loads the map first thing. As long as I only navigate the map, the function is not called. I changed it, and it works fine, but still the crash mentioned above occurs.

Yes, I will check it from now.

@wf9a5m75 did you manage to reproduce the bug?

Yap. Could you try the multiple_maps branch version?

Thank you, the app does not crash anymore. But there is something new: after navigating for about 1 minute on the map, at a certain point, the markers are not loaded anymore and the app suddenly freezes completely. Not sure what is causing this.

Could you describe more certain steps? I appreciate if you record the steps.

@wf9a5m75 https://youtu.be/1GOzFtYlQQU . The problem occurs at around 0:21 mark. If I tap outside the map, the app freezes.

I had the same issue but with the fix it is working fine now. I have a question why is this red rectangle when a cluster is clicked ?

@kalitk0 good to know. Does your app freeze as well as mine does, or is it isolated only for my app?
@wf9a5m75 do you have any news regarding the second problem that I mentioned?

@mihaicolceriu no i have not encountered such an issue for now

Seems that this is not the case for other users as well. I guess that the problem may be related with how I show/hide the map. This happens very often on my app. What is the correct way to show/hide the map?
If the map was not initialised at all, I show the map using:
div = document.getElementById('map_canvas');
map = plugin.google.maps.Map.getMap(div);
map.setDiv(div);
map.one(plugin.google.maps.event.MAP_READY, function() {
      //Show my location on the map
      map.setMyLocationEnabled(true);
      map.setAllGesturesEnabled(true);
      //Fly map to my location
      fly_map_to_current_location();
});

To hide the map, I use
map.setDiv(null)

and to show the map again, I use
div = document.getElementById('map_canvas');
map.setDiv(div)

Is this the correct way to do this?

map = plugin.google.maps.Map.getMap(div);
map.setDiv(div); // <-- you should not do that.

@mihaicolceriu I have been recognized for your issue. The issue occurs for some reason. I have been working for this.

One of the reason of this is you execute map.clear() when the map is dragged every time.
Then generate new marker cluster.
This is very bad performance, and may cause this trouble.

@wf9a5m75 Yes, I figured that out. For the moment I removed the clusters and only addMarkers (maximum 50). I use an array to keep track of what markers to show based on map bounds (no more map.clear()). If the map moves, remove the markers which are no longer in the map bounds, keep those that are still in the map bounds, and add new markers (if any) for the new bounds.
map = plugin.google.maps.Map.getMap(div);
map.setDiv(div);

What should be the correct approach to show/hide map as many times as I wish, without it breaking? The map does not appear if I don't use "map.setDiv(div)".

function clearMarkerList(latLngBounds) {
    $.each(markerList, function(index, value) {
      lat = value.marker.get('position').lat
      lng = value.marker.get('position').lng
      if (lng > latLngBounds.southwest.lng && lng < latLngBounds.northeast.lng && lat < latLngBounds.northeast.lat && lat > latLngBounds.southwest.lat) {
        return true
      } else {
        value.toDelete = true
      }
    })

    markerList = $.grep(markerList, function(el, i) {
      if (el.toDelete) {
        el.marker.remove()
        return false
      } else {
        return true
      }
    })
    markerCount = markerList.length
  }

  function updateMap() {
    //get map bounds
    latLngBounds = map.getVisibleRegion()
    clearMarkerList(latLngBounds)
    $.each(window.locations_data.features, function(ind, value) {
      if ($.inArray(value.properties.category, window.category) != -1) {
        if (value.geometry.coordinates[0] > latLngBounds.southwest.lng && value.geometry.coordinates[0] < latLngBounds.northeast.lng && value.geometry.coordinates[1] < latLngBounds.northeast.lat && value.geometry.coordinates[1] > latLngBounds.southwest.lat) {
          if (markerCount < MARKER_LIMIT) {
            toPush = true
            $.each(markerList, function(i, v) {
              if (ind == v.index) {
                toPush = false
                return false
              }
            })
            if (toPush) {
              markerCount += 1
              addMarkerToList(ind, value);
            }
          } else {
            return false
          }
        }
      }
    })
  }

  //add markers to map
  function addMarkerToList(index, location) {
    fullAddress = window.setFullAddress(location)
    iconData = getImage(location)
    map.addMarker({
      position: {
        lat: location.geometry.coordinates[1],
        lng: location.geometry.coordinates[0]
      },
      icon: iconData,
      title: location.properties.name,
      image: location.properties.image,
      phone: location.properties.phone,
      fullAddress: fullAddress,
      location: location
    }, function(marker) {
      markerList.push({index, marker, 'toDelete': false})
      // window.list_page_data.push(location)
      marker.on(plugin.google.maps.event.MARKER_CLICK, function() {
        popup(location)
      });
    })
  }

Somehow, the markerList (list of visible markers on the map) still sometimes contains duplicates? Maybe I've done something wrong here?

Could you update the repository?

I might figure out the reason.
In your original code, you execute map.clear() twice (This is nonsense though).
Because of this, the plugin causes the dead lock of semaphore in the marker cluster class.
$.when(map.clear()).done(function() {
      map.clear();
      ...

I updated the code to prevent the dead lock. As far as I tested, I haven't faced the error anymore.
But please try by yourself with the multiple_maps branch.
$> cordova plugin rm cordova-plugin-googlemaps

$> cordova plugin add https://github.com/mapsplugin/cordova-plugin-googlemaps#multiple_maps --variable API_KEY_FOR_ANDROID="..." --variable API_KEY_FOR_IOS="..."  --verbose --no-fetch

ping

@wf9a5m75 As I mentioned in my earlier post, I changed the code quite a bit and removed clusters. At this moment, I only call map.clear() twice in my code and it is NOT one after the other as mentioned above by you (which caused the deadlock). Everything works fine now, and the app does not crash. This can be marked as fixed. If I should experience any other bug or unpredicted behavior, I will open a new issue.
Thank you very much for your support.


Cool testrail reporter, wish it worked though :(

@skekauoha Is this working?

@Nate-Watts Do you even QA yourself?


python311Packages.langsmith: 0.1.6 -> 0.1.8

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python311Packages.langsmith is: Client library to connect to the LangSmith LLM Tracing and Evaluation Platform
meta.homepage for python311Packages.langsmith is: https://github.com/langchain-ai/langsmith-sdk
meta.changelog for python311Packages.langsmith is: https://github.com/langchain-ai/langsmith-sdk/releases/tag/v0.1.5
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.1.5 with grep in /nix/store/xy11lffwpbm5s30mhbs6shs2bx12hnfq-python3.11-langsmith-0.1.5
found 0.1.5 in filename of file in /nix/store/xy11lffwpbm5s30mhbs6shs2bx12hnfq-python3.11-langsmith-0.1.5

Rebuild report (if merged into master) (click to expand)

9 total rebuild path(s)

9 package rebuild(s)

First fifty rebuilds by attrpath
khoj
pentestgpt
python311Packages.langchain
python311Packages.langchain-community
python311Packages.langchain-core
python311Packages.langsmith
python312Packages.langchain-community
python312Packages.langchain-core
python312Packages.langsmith

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/xy11lffwpbm5s30mhbs6shs2bx12hnfq-python3.11-langsmith-0.1.5 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.langsmith https://github.com/r-ryantm/nixpkgs/archive/8632d565916bce9e2a881d1f94a2828e054c4fe7.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/8632d565916bce9e2a881d1f94a2828e054c4fe7#python311Packages.langsmith

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/xy11lffwpbm5s30mhbs6shs2bx12hnfq-python3.11-langsmith-0.1.5
ls -la /nix/store/xy11lffwpbm5s30mhbs6shs2bx12hnfq-python3.11-langsmith-0.1.5/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages marked as broken and skipped:

python312Packages.langchain-community
python312Packages.langchain-core

1 package failed to build:

khoj

6 packages built:

pentestgpt
python311Packages.langchain
python311Packages.langchain-community
python311Packages.langchain-core
python311Packages.langsmith
python312Packages.langsmith

Maintainer pings
cc @natsukium for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python311Packages.langsmith is: Client library to connect to the LangSmith LLM Tracing and Evaluation Platform
meta.homepage for python311Packages.langsmith is: https://github.com/langchain-ai/langsmith-sdk
meta.changelog for python311Packages.langsmith is: https://github.com/langchain-ai/langsmith-sdk/releases/tag/v0.1.8
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.1.8 with grep in /nix/store/rzngs6kfbxnfj1pm5c3lsm09gwj8ljkk-python3.11-langsmith-0.1.8
found 0.1.8 in filename of file in /nix/store/rzngs6kfbxnfj1pm5c3lsm09gwj8ljkk-python3.11-langsmith-0.1.8

Rebuild report (if merged into master) (click to expand)

9 total rebuild path(s)

9 package rebuild(s)

First fifty rebuilds by attrpath
khoj
pentestgpt
python311Packages.langchain
python311Packages.langchain-community
python311Packages.langchain-core
python311Packages.langsmith
python312Packages.langchain-community
python312Packages.langchain-core
python312Packages.langsmith

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rzngs6kfbxnfj1pm5c3lsm09gwj8ljkk-python3.11-langsmith-0.1.8 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.langsmith https://github.com/r-ryantm/nixpkgs/archive/8833ca128d83b6e71898ba580d45ec36c63fc428.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/8833ca128d83b6e71898ba580d45ec36c63fc428#python311Packages.langsmith

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rzngs6kfbxnfj1pm5c3lsm09gwj8ljkk-python3.11-langsmith-0.1.8
ls -la /nix/store/rzngs6kfbxnfj1pm5c3lsm09gwj8ljkk-python3.11-langsmith-0.1.8/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages marked as broken and skipped:

python312Packages.langchain-community
python312Packages.langchain-core

1 package failed to build:

khoj

6 packages built:

pentestgpt
python311Packages.langchain
python311Packages.langchain-community
python311Packages.langchain-core
python311Packages.langsmith
python312Packages.langsmith

Maintainer pings
cc @natsukium for testing.


this class is not key value coding-compliant for the key _alwaysRunsAtForegroundPriority.

Bug Report
Problem
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<WKWebViewConfiguration 0x117e17320> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key _alwaysRunsAtForegroundPriority.'
What is expected to happen?
app work normal
What does actually happen?
this problem cause app can't work
Information

when i run this plugin in<EMAIL_ADDRESS>&<EMAIL_ADDRESS>Command or Code

run this plugin in<EMAIL_ADDRESS>&<EMAIL_ADDRESS>Environment, Platform, Device

ios 12.2
Version information

cordova-plugin-wkwebview-engine @ 1.1.4
<EMAIL_ADDRESS><EMAIL_ADDRESS>Checklist

[ x] I searched for existing GitHub issues
[ ] I updated all Cordova tooling to most recent version
[ x] I included all the necessary information above

Is this reproducible in a new, plain Cordova app? A minimal reproduction repository would really help to debug and later fix this issue. More information on how to create one: https://github.com/apache/cordova-contribute/blob/master/create-reproduction.md

This plugin doesn’t include _alwaysRunsAtForegroundPriority, so it’s caused by another plugin. Check background plugins you are using, one of them is probably the cause.


Replication of wav2vec2 with RFP

First of all, congratulation on the paper and the scores you achieved!
We would like to replicate the Wav2vec2.0 training using RFP (ideally using google colab as mentioned in the paper). What are the steps to follow?
Best regards,
Thomas

Thanks
The notebook that I used is based on my information and there are some manual steps in it. I will add a complete notebook for this model as soon as possible.
For now, you can check files in the bin directory about how to run them.
Sincerely,
Amirhossein

Yes, that was my mistake. Thank you for mentioning that. Now it is available here.


Mimikatz and WCE

Just thought of this whilst going though "AT is the New Black", but do we actually have any decent documentation on Mimikatz and WCE? If not it would be good to add in some good documentation on these two tools to our post exploitation for Windows section as they tend to come in handy on a pentest.

Yes. This would be great or at least point to other resources on the Interwebs that show how to use them.

Ya there is a serious lack of documentation on Mimikatz and WCE alike

Check these out:
WCE:
http://www.ampliasecurity.com/research/wcefaq.html#whatiswce
Mimikatz
https://www.offensive-security.com/metasploit-unleashed/mimikatz/

Working on compiling a list of links. Do we want this under the "presence" heading?


Next button shows the same page content

Next/Previous button shows the same page content I believe it's a bug , thanks

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

ID: e56e675b-5964-a75b-7e45-6f6d1a607e65
Version Independent ID: 78e47218-58a3-f8d9-e091-306126871a67
Content: ASP.NET Core MVC with EF Core - Migrations - 4 of 10
Content Source: aspnetcore/data/ef-mvc/migrations.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: tdykstra

Read the page and check the URL. That version is not supported.

Thanks


settings categories

could just be a dummy type of setting, thats just a big label..

added in v3.6.0


Update AbaqusBoolean and SymbolicConstants classes

Just update AbaqusBoolean and SymbolicConstants classes with code in the respective modules.

Concerning problems in https://github.com/haiiliin/abqpy/pull/338#issuecomment-1214578363.

If you import the abaqus package before abaqusConstants module, it is fine:
from abaqus import *
from abaqusConstants import *

When you only import the abaqusConstants module:
from abaqusConstants import *

The NameError occurs. In abaqusConstants module, we want to use this to import SymbolicConstant and Boolean
from abaqus.UtilityAndView.SymbolicConstant import SymbolicConstant
from abaqus.UtilityAndView.AbaqusBoolean import Boolean

The Python import system will import the whole abaqus package, but in the abaqus package, we frequently import the abaqusConstants module, which caused the circular import according to what I think, but it didn't throw a circular import error, and instead it seems to ignore from abaqusConstants import *, thus the NameError occurs. I actually do not know what is the reason.

I think we can move the abaqusConstants module to UtilityAndView and use relative imports to import the abaqusConstants module, i.e., replace all from abaqusConstants import * to from ..UtilityAndView.abaqusConstants import * (from .UtilityAndView.abaqusConstants import * for modules in UtilityAndView), in the top level abaqusConstants module, we can just import the abaqusConstants module in UtilityAndView.
# abaqus/UtilityAndView/abaqusConstants.py
from .SymbolicConstant import SymbolicConstant
from .AbaqusBoolean import AbaqusBoolean

Boolean = AbaqusBoolean
...

# Other modules in abaqus
from ..UtilityAndView.abaqusConstants import *

...

# abaqusConstants.py
from abaqus.UtilityAndView.abaqusConstants import *

I think it is now ready to merge.

Since Mergify does not support backport pull request with merge commit, see here, wee need to backport this pull request to V2016 - V2022 manually.

@Diogo-Rossi Thanks again for this pull request!


Add support for formatted UUIDs to the "from()" method.

The library has several formating options, which is nice, however it only understands one of them when you "parse" a string with the from() method, which is weird.
Steps to reproduce:
const MUUID = require('uuid-mongodb');

const uuid1 = MUUID.v4();
console.log(uuid1); // Binary { ... }
const string = uuid1.toString('N');
console.log(string); // 9cea27b4d0e44781826ede1b6f378d6f

const uuid2 = MUUID.from(string); // Error: Invalid UUID

An optional parsing parameter like we have in the from method would make a lot of sense, e.g. MUUID.from(string, 'N');

this is a good idea. we should implement it.

would you be interested in submitting a PR?

This is needed. I have set my 'mode' on the schema creation to 'relaxed' and everywhere else I use MUUID
const mUUID = MUUID.mode('relaxed');
and in the schema:
_id: {     type: 'object',     value: { type: 'Buffer' },     default: () => mUUID.v4()   },
except when stringified, the documents return the 'canonical' version of the string. I am unable to convert this canonical version to a uuid using MUUID.from("DEol4JenEeqVKusA+dzMMA==") meaning I can't query the db...
@cdimascio does relaxed work with v4? What am I doing wrong here?

I'm looking for the same solution, how to parse the canonical version hJVV+w11SZqk+vK9BSCpeA== or convert it to "relaxed" version?


update dependencies to fix vulnerabilities

The purpose is mainly to fix CVE-2022-0144 in shelljs.
Furthermore, the foundry-related packages are also updated to their current newest version.

LGTM, thanks! =)


App fails after adding a new endpoint

Hi
I have a custom OpenAPI app which was working just fine. This morning I have added an additional action to it. The version got changed from 1.0.0 to 1.1.0. When I active the new version in a workflow, the app fails. Also it would be cool if we could just choose the version of an OpenAPI app in the GUI like with the custom apps.
{"success":false,"reason":"An exception occurred while running this function. See exception for more details and contact support if this persists (support@shuffler.io)","exception":"'Vectra3596be88ff136d1a90ca7e6db7e7c30e' object has no attribute 'prepare_response'"}
Even when I deleted the new action, it still fails. Do you have any idea what could be the cause here?
Also I am wondering regarding the version system of these apps. I would expect, that the version is changing with every change I make. But this seems not to be the case here. Changed it multiple times today, still on version 1.1.0. Can I somehow force a version change?
Currently running version 1.1.0 of Shuffle, maybe the version is coming from that?
Regards tbi88

And here is the app if that helps.
vectra.yaml.zip

Hey! Could you share the OpenAPI/swagger for it as well? This will help with the code generation problems :)

Not sure if I have that. I have created the app from scratch. Maybe my initial information was somehow misleading regarding this.

Not sure if I have that. I have created the app from scratch. Maybe my initial information was somehow misleading regarding this.

You can download the specification from the /apps screen! When making from scratch, it still becomes exportable :)

Alright, but that is the same file I have already provided (vectra.yaml) as a ZIP file.

Alright, but that is the same file I have already provided (vectra.yaml) as a ZIP file.

My bad, I thought that would be the entire app. Cheers :+1:

docker pull frikky/shuffle:app_sdk

Thank you, that fixed the issue. So this needs to be done after upgrading to a new version? Probably missed it on the worker nodes.

docker pull frikky/shuffle:app_sdk

Thank you, that fixed the issue. So this needs to be done after upgrading to a new version? Probably missed it on the worker nodes.

It's not necessary every time, but we just have it as a general recommendation, as we may have added extra utilities, bugfixes or speedups for apps there

ok good to know. thanks again.


Add "letters" assertion for Unicode letters

This PR adds support for validating against the Unicode letter class.
Tests cover passing assertions for basic Latin characters and an array of different Unicode only alphabets and failing assertions for strings including numbers, the simple alphabet's copyright symbol and a Unicode emoji.

I don't think onlyUnicode would be appropriate, as it's not all Unicode characters, it's only Unicode characters which are classified as letters. I went with letters() as it encompasses pretty much any letter you can represent on a computer, regardless of alphabet. unicodeLetters() is possibly the most clear?

unicodeLetters Is clear to me, what do you think @Nyholm ?


Completing the storage interface document

[ ] If this pull request closes/resolves/fixes an existing issue, replace the issue number. Closes #.
[ ] Update the CHANGES log.

Seems you are using an old branch including some unexpected commit logs. I will squash them. Next time, please use a clean branch to submit pull request.

Seems you are using an old branch including some unexpected commit logs. I will squash them. Next time, please use a clean branch to submit pull request.

Okay, thanks for the reminder.

Why closed?

Why closed?
Too many submission logs, resubmit.


Warnings?

Thanks for the awesome plugin!
I was just wondering if there was a way to also report warnings?
Example:

I also want this to be reported

Hi @mrousavy, this should already be working as of 0.1.0 - it was added in #5. As long as the linter actually outputs warnings, they should be picked up and reported to GitHub Actions.
Are you able to confirm it's not working in the latest version? And/or provide an example repo where it's not working?
Thanks!


Proposal: No own class for anonymous SJS-defined objects

Context
#1795 introduced Scala.js-defined JS classes, traits, and objects. And, in particular, specified that anonymous classes extending js.Any would be Scala.js-defined by default. For example, in
@ScalaJSDefined
trait Foo extends js.Object {
  def x: Int
  def y: Any
}

val obj = new js.Object with Foo {
  val x = 5
  val y = "hello"
}

the anonymous class is automatically Scala.js-defined.
As currently specified, an actual JavaScript class is created for this anonymous class, so the ES6 semantics look like this:
class $anon extends Object {
  constructor() {
    super();
    this.x = 5;
    this.y = "hello";
  }
}

var obj = new $anon();

These semantics have two issues:

They cause a lot of additional code in JS, compared to the "natural" way of writing the above code, which would be var obj = {x: 5; y: "hello"}
As reported in #2006, such objects do not count as "plain objects" because an "invisible" prototype wound its way into the object's prototype chain.

More globally, the semantics are just not what would be expected by default by the developer.
The proposal at large
I propose to refine the specification from #1795 for anonymous classes extending js.Any. Instead of simply stating that they be Scala.js-defined JS classes by default, we state the following. An new expression for an anonymous class extending js.Any is sugar for instantiating the parent class, then adding fields on the object itself. There will be no additional class/prototype.
For example, the above Scala.js example "desugars" into the following Scala.js code (I'm intentionally evasive on what T and U are, at this point):
val obj = {
  val o: T = new js.Object().asInstanceOf[T]
  o.asInstanceOf[js.Dynamic].x = 5
  o.asInstanceOf[js.Dynamic].y = "hello"
  o.asInstanceOf[U]
}

which would, according to existing semantics, eventually become:
var o = {}; // new js.Object() produces {}
o.x = 5;
o.y = "hello";
var obj = o;

which is immensely closer to the ideal code. In fact, experience suggests that Closure is able to optimize that into:
var o = {x: 5, y: "hello"};

which is the ideal code.
Details
Type T of o and type U of the result
The types T and U don't really matter to understand practically the result of the desugaring. For all practical purposes, T and U can be thought as js.Dynamic, with appropriate casts everywhere.
However, we need to carefully craft them to guarantee that the result of the desugaring is still well-typed from scalac's point of view.

The type T of the temporary val o is the self type of the anonymous class, as seen from within it, but rewritten not to refer to the $anon class symbol itself (since it won't exist after desugaring).
The type U of the result is the tpe of the scalac Block defining the anonymous class.

In practice, T and U should both look like js.Object with Foo { val x: Int; val y: String }, but there might be some weird scalac details.
Parent class and interfaces

Since a Scala.js-defined JS class must inherit from a JS class, there is always a super class to instantiate.
Since they can only mix in Scala.js-defined JS traits which are guaranteed to be pure interfaces (no concrete term member), there is nothing to actually mix in during the desugaring.
Super constructor parameters are appropriately forwarded.

Essentially, the "header"
new ParentClass(arg1, ..., argN) with Trait1 with Trait2

desugars into
val o: T = new ParentClass(arg1, ..., argN).asInstanceOf[T]

Fields

vals and vars in the anonymous class desugar to adding the corresponding fields on the object being constructed.
References to vals and vars are desugared into reading the fields from the object

val x = something
var y = x + somethingElse

desugars into
o.x = something
o.y = o.x + somethingElse

or, to be precise, as o is a T and we are past typer:
o.asInstanceOf[js.Dynamic].updateDynamic("x")(something)
o.asInstanceOf[js.Dynamic].updateDynamic("y")(
    o.asInstanceOf[js.Dynamic].selectDynamic("x") + somethingElse)

Other statements in the class body
Other statements in the class body, i.e., in the constructor of the anonymous class, are desugared in order, appropriately interleaved with the definition of fields.
References to this
References to this in the body of the anonymous class desugar into the temporary val of the object being constructed, i.e., o.
Methods
defs with parentheses desugar into fields added on the object, which are js.ThisFunction values:
def m(a: Int, b: Int): Int = a + b + this.x

desugars into
o.m = js.ThisFunction.fromFunction3({ ($this: o.type, a: Int, b: Int) =>
  a + b + $this.asInstanceOf[js.Dynamic].selectDynamic("x")
})

Note that, in the body of defs, references to this are desugared into $this (not o), and that $this has type o.type.
Getters and setters
Getters (defs without ()) and setters (defs whose name ends in _=) are desugared into JS getters and setters on the object o itself, invoking Object.defineProperty:
def foo: Int = x
def foo_=(v: Int): Unit = x = v

is desugared into
js.Dynamic.global.Object.defineProperty(o, "foo", js.Dynamic.literal(
    "get" -> js.ThisFunction.fromFunction1({ ($this: o.type) => $this.x }),
    "set" -> js.ThisFunction.fromFunction2({ ($this: o.type, v: Int) => $this.x = v })
))

Implementation
This desugaring should be implemented as an additional compiler transformation on the scalac Trees. It must happen before explicitouter, which comes before erasure. I think the best place is to put it between refchecks and uncurry.
The implementation will be very difficult. I do not expect this feature to be shipped any time soon. And I personally will not have the time to implement it. But it seems possible, and the spec looks very nice to me.

Comments welcome ^^

I like this. Another step forward for Scala.js interop.
One comment on the implementation though: I do not like that we desugar things inside scalac into the ways we currently implement Scala.js defined classes. I really would like to see an IR node for this (which then internally can reuse MethodDef, etc.). We'll need a magic "forwarder" method for this somewhere in scala.scalajs.runtime, but it's fundamentally not any better/worse than applyDynamic etc.
Imagine at some point in time ES allows to write:
var x = new Foo { x: 1 };

Or maybe more realistically, strong mode requires a slightly different way of writing these objects so that they can remain strong objects. We then have a problem.
Further, having a dedicated IR node would actually allow us to emit the optimal resulting code in the first place. WDYT?

Or maybe more realistically, strong mode requires a slightly different way of writing these objects so that they can remain strong objects. We then have a problem.

Scala.js-defined JS classes are not supposed to be strong. They already allow to do stuff which is not valid in strong mode.

I do not like that we desugar things inside scalac into the ways we currently implement Scala.js defined classes.

That's why the spec above is explained in terms of desugaring. It is simply defined as the above desugaring.
Of course we can argue that it should not be a desugaring, but have its own semantics, which therefore should be moved to the IR. However, I don't see any compelling reason to do so. The IR should be as simple as possible, but not simpler ((c) Albert Einstein). In this case, I think adding an IR node to represent something we can perfectly well write with the current IR is not as simple as possible.
Now assuming we do want an IR node, we will need a forwarder, as you say. I could see a forwarder having the following shape:
def newAnonJSObject(instanceFromParent: js.Dynamic, additionalFields: (name, value)*): js.Dynamic = {
  for ((name, value) <- additionalFields)
    instanceFromParent.updateDynamic(name)(value)
  instanceFromParent
}

val obj = new js.Object with Foo {
  val x = 5
  val y = "hello"
}
// becomes:
val obj = newAnonJSObject(new js.Object(),
    "x" -> 5,
    "y" -> "hello"
)

The case of properties (getters and setters) is unclear, though. There are also severe issues on how to represent this in the right-hand-side of the pairs. For example,
val obj = new js.Object {
  val x = 5
  val y = x + 5
}

would be hard to desugar into such a method call.
That issue left aside, the forwarder could also take a "dictionary" of properties instead:
def newAnonJSObject(instanceFromParent: js.Dynamic, additionalFields: js.Dynamic): js.Dynamic = {
  for ((name, value) <- additionalFields.asInstanceOf[js.Dictionary[js.Any]])
    instanceFromParent.updateDynamic(name)(value)
  instanceFromParent
}

val obj = new js.Object with Foo {
  val x = 5
  val y = "hello"
}
// becomes:
val obj = newAnonJSObject(new js.Object(), js.Dynamic.literal(
    "x" -> 5,
    "y" -> "hello"
))

In that case, the above call would appear as follows in the IR:
val obj = newAnonJSObject({}, {
  "x": 5,
  "y": "hello"
})

With that form, the optimizer or the JSDesugaring can intrinsify this method call to produce "better" code if both arguments are JSObjectConstr, by fusing them together, effectively producing the ideal code as well: {x: 5, y: "hello"}. And if the arguments are not both JSObjectConstr, then it would also intrinsify it to inline/unroll to produce the next-to-ideal code in which properties are added after the fact.
So, unless we need special semantics for these objects, I don't think an IR node is needed, and therefore is not desirable either.

Scala.js-defined JS classes are not supposed to be strong. They already allow to do stuff which is not valid in strong mode.

That's exactly the point, they allow you to do stuff which is not valid, but IIUC they don't force you. So you can write them such that the VM can optimize them with shadow classes (whether or not the VM is actually in strong mode).
However, I agree that this might be overkill for the moment, since the desugaring we currently have is always and will always be a valid one (unless Scala.js or ES changes class/object model modalities, which will be a major version break anyways). So we are free to replace it later by an IR node if the need arises given that we can live with the fact, that older IR might result in a less good result.

Assigning to 1.0.0 to not forget about this.

Just as a quick info: I have started playing around with this, just to see how far I get (my feature branch). If anyone takes this up, please ping me to synchronize, as I will move very slowly if at all.

@sjrd just a quick question: I guess your story for generics and overloading resolution is: Do both erasure and overloading resolution manually in this phase. Or did you think of something niftyer?

Erasure shouldn't be needed. Overloading resolution is tricky, and might require some amount of erasure. Unless we manage to pull something off where the generation of overloading resolution is deferred to after erasure?
Maybe there's a simple compiler API to compute the erasure of a type.

How do you convert this into a lambda without erasure (especially when tc.ResultType is also bounded)?
def foo[T <: Seq[_], TC[T]](x: T)(implicit tc: TC[T]): tc.ResultType = ???

I'll think of something how we can move stuff through the pipeline anyways. Maybe having a phantom anonymous class that we discard in GenJSCode is an option? Getting the trees back might be a bit hairy though :S

Arf, higher-kinded type parameters to the method are really nasty, indeed. Yes, you're right, polymorphic methods cannot be transformed without erasure, because Scala does not have polymorphic function types.

How about this: We move the methods (including accessors) on the object into the "companion" of the anonymous class with an additional this argument. We can then desugar the following
val obj = new js.Object with Foo {
  val x = 5
  def getter[T]: T = ???
  def method(x: String): String = ???
  def method[T <: Seq[_]](x: T): Int = ???
}

into
object $anon {
  def getter[T](this: js.Object with Foo): T = ???
  def method(this: js.Object with Foo, x: String): String = ???
  def method[T <: Seq[_]](this: js.Object with Foo, x: T): Int = ???
}

val obj = {
  val o = new js.Object with Foo
  o.getter = (this) => $anon.getter[Erased{T}](this)
  o.method = (this, x) => { // max number of args here
    // We need to catch this in the backend somehow to do overloading
    method(this, null: String)
    method(this, null: Erased{T})
    // etc.
  }
}

This also solves the problem of private methods :)

However, this made me aware of a more fundamental problem: We do not have a way to desugar varargs in this phase. Only GenJSCode is able to produce "raw" varargs. So the desugaring for method above doesn't really work (i.e. we just need to defer even more work to the GenJSExport phase).

Ok. I got it, this is actually much easier than we thought.
In RewriteAnonJS, just do the following transformation. Do not delete the anonymous class.
val obj = new js.Object with Foo {
  val x = 5
  def getter[T]: T = ???
  println("foo")
  def method(x: String): String = ???
}

Transforms to:
val obj = {
  val x = new $anon
  x.x = 5
  println("foo")
}

Then, in GenJSCode, do the following:

When generating an anonymous, Scala.js defined class, do not generate fields, exports or constructors.
When encountering new $anon and $anon is a Scala.js defined class
** Change new to invoke the constructor of the super class (this is easy now, since we are past erasure)
** Generate overloads based on symbols (we already do it that way anyways) and pack them into anonymous methods. Add these methods on the object immediately after the new call.
** The next statements will (automatically) be the constructor body.

That's all. Overloading, varargs, erasure, etc. taken care of.
WDYT?

Ouch ... This gets harder and harder. Maybe there simply does not exist a general way to desugar these things :-s And we'll keep finding more and more difficulties.
The mostly-in-back-end idea that you suggest looks interesting. Maybe we can push it further:

No additional transform
In the back-end, generate the anon class as usual, but then pull its components apart and "inline" them when we do the new $anon (similar to how we pull apart lambdas)

It would solve all the erasure and overloading issues too. It would also more robustly keep semantics of "every else" (everything but the presence of the class).
However, it's unclear what happens to captures and explicit outers.

However, it's unclear what happens to captures and explicit outers.

Hopefully, all captures and explicit outers become private (or at least non-exposed) fields of the anon function (and not additional params to methods). In that case, when "inlining" we would "only" have to turn private fields into local variables.

Hopefully, all captures and explicit outers become private (or at least non-exposed) fields

Yes, they do. But that means we must transform everything in the backend (otherwise method signatures wont match). So I'll need to figure out a way how to "find" the constructor of the class again... Then it is actually pretty easy to do the desugaring (and since we are in GenJSCode, no dealing with symbols :)).

how to "find" the constructor of the class again

It's called "constructor". That's how you find it.

That's not what I mean. We need to have the trees of the class constructor at instantiation site. So in pseudocode:
case New(ident) if isAnonSJSClass(ident.symbol) =>
  // get tree of ctor of ident.symbol
  // rewrite new to be new of super class
  // emit methods
  // emit ctor body

All of these steps are easy except for the first one, since we don't know where in our compilation unit these trees are. In the best case, anonymous classes always come before the class that instantiates them. In the worst case, the order is unknown, so we have to reestablish it.

In the worst case, the order is unknown, so we have to reestablish it.

Yes, we already do something like that for anon function classes:
https://github.com/scala-js/scala-js/blob/v0.6.7/compiler/src/main/scala/org/scalajs/core/compiler/GenJSCode.scala#L204-L216

Nice! I think I can handle this then.

Ok. I have something working. Just a single problem: The following won't work:
class Base {
  constructor() {
    this.foo();
  }
}

class Ext extends Base {
  foo() {
    console.log("foo invoked");
  }
}

new Ext

In our translation (if Ext were anonymous), the super constructor is invoked, before the methods are defined:
var o = new Base;
o["foo"] = function() { ... };

In ES5, we of course could do the following:
var o = Object.create(Base.protoype);
o["foo"] = function() { ... };
Base.call(o);

But IIUC, in ES2015 this is not allowed (at least Node.js refuses it).

Indeed, that's not allowed in es 2015. I think we'll have to live with it.


donbot tell me about group xyz reports issues

The group report provided by donbot should report the issues for the group, as well as the number of hosts within the group affected by each issue.
Server issues look like this:
Issue:
    Type:     csm
    ID:       blahblah
    Status:   active
    Critical: True
    Rule key: csm::2811407::V-71905 When passwords are changed or new passwords are established, the new password must contai...
    Created:  2018-03-04T02:57:19.932Z

Group issues should look like this:
Issue:
    Servers affected: 9
    Type:     csm
    Status:   active
    Critical: True
    Rule key: csm::2811407::V-71905 When passwords are changed or new passwords are established, the new password must contai...
    First seen:  2018-03-04T02:57:19.932Z
    Last seen:  2018-03-04T02:57:19.932Z

When printing in the tell me about group xyz response, issues should be grouped by criticality (critical first) and ordered by the number of affected servers.

https://github.com/cloudpassage/halocelery/pull/13.
agreed to remove status, first seen, and last seen.


JS-T: Convert SBD to STEEM

Convert SBD to STEEM
AC

[ ] Convert SBD to STEEM
[ ] Explanation of feature with reference links (hot signing steemconnect)

This is a pretty uncommon need.


HIP_PLATFORM=nvidia

[ ] fix launchKernel() to work properly in all cases
[ ] figure out a way to get the nim compiler to wrap compiler / linker args with -Xcompiler=""

Error: execution of an external compiler program 'hipcc -c -std=gnu++17 -funsigned-char  -pthread -I/opt/rocm/include -std=c++17   -I/home/monofuel/Documents/src/monofuel34089/Nim/lib -I/home/monofuel/Documents/src/monofuel34089/hippo/tests/hip -o /home/monofuel/.cache/nim/call_params_d/@m..@s..@s..@sNim@slib<EMAIL_ADDRESS>/home/monofuel/.cache/nim/call_params_d/@m..@s..@s..@sNim@slib<EMAIL_ADDRESS>failed with exit code: 1

nvcc fatal   : Value 'gnu++17' is not defined for option 'std'

nvcc doesn't like the default std flag from cppXsupport

got it working with couple of hacks in https://github.com/monofuel/Nim/
The problem for nvcc (and for hipcc when using the nvcc backend), is that all compiler flags like -std and -pthreads needs to be wrapped with -Xcompiler="..."
I made some changes in nim in this branchhttps://github.com/monofuel/Nim/tree/hipcc-nvcc to handle wrapping, but my changes are ugly. it needs to be done for both the compiler and the linker, it must include all passc and passl options

nim ships a vccexe.exe to handle converting gcc style params to visual C++ params.
the -Xcompiler flags need to be set in 2 cases: when using nvcc directly, or when using hipcc when HIP_PLATFORM=nvidia
we could follow the vccexe pattern and make a similar utility for gpu compiler arguments

turns out, does not need to be as complicated as vccexe
https://github.com/monofuel/Nim/commit/8e3afdfc235b7701e40a15a00b1e00fd81426bdb


Could not find method compile() for arguments [com.facebook.react:react-native:0.12.+]

I've added react-native-locale-detector to react-native project, when I want to run roject, I face this issue and debug build failed:
yarn android

* What went wrong:
A problem occurred evaluating project ':react-native-locale-detector'.
> Could not find method compile() for arguments [com.facebook.react:react-native:0.12.+] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

"react-i18next": "^12.2.0",
"react-native": "0.71.4",
"react-native-locale-detector": "^1.0.1",

Navigate to the node_modules/react-native-locale-detector/android directory in your project.
Locate the build.gradle file.
dependencies {
implementation 'com.facebook.react:react-native:0.12.+'
}


Make a real documentation

Right now the only documentation is the synopsis in the README. We could provide much more documentation.

Inactive, closing

Inactive, closing


Problem with wiring connection BlueLed/ContinuosScan

Hi Janusz, congratulations on the project,
I wanted to report the presence of a possible problem in the wire connections page.
If I connect the BlueLed on GPIO06 and the Button1 in GPIO00 as per the table (wiring.md), the button1 for Continuos scan does not work even when trying the "button_demo" test.
The gpios.cpp code states the following:
m_buttons[BUTTON::BUTTON_STOP_SCAN] = std::make_unique<PushButton>(5, GPIO::GPIO_PULL::UP);
m_buttons[BUTTON::BUTTON_CONTINOUS_SCANNING] = std::make_unique<PushButton>(6, GPIO::GPIO_PULL::UP);

At first I thought that the images had not been updated, but I reversed the connection between button1 and blueled and everything works, so I guess there is a typo in the table.
Is it correct to connect the blueled on GPIO00 or should it actually be connected somewhere else?
Sorry for the bad english
Good day,
Stefano

Hello @GeomPozzoli you are right, doc is wrong,
According to code:
LED_GPIO_STOP_SCAN - GPIO26
LED_GPIO_COPY_DATA - GPIO19
LED_GPIO_CONTINOUS_SCANNING - GPIO13
BUTTON_STOP_SCAN - GPIO5
BUTTON_CONTINOUS_SCANNING - GPIO6

The blue led is power and connected to 3.3V

thanks for the info ed code update

thanks @GeomPozzoli for closing issue!


The title is always the same

I can't determine what page is what in my history, of if I have multiple tabs open, or any other situation when a opendota tab is opened in the background. The title is always "OpenDota". It gets set in the original HTML and I don't see it changed anywhere else.

I think the solution is to use JS to set window.title dynamically: document.title = "Match X".  Not sure if there's a more React way to do this.

@mike-robertson can look into this, I guess.

I think you guys can use this. https://github.com/gaearon/react-document-title

@andrkrn react-document-title is not actively maintained, the author busy to maintain CRA and react fiber.
@howardchung There is a way to do this with react-helmet it's support defining meta tags, script tags, title, base etc.


flex_vector_transient has no insert() method

flex_vector has a .insert() method for inserting into the middle, which I'm using in my in-progress code. flex_vector_transient does not. Is this intentional?

It could be added. I am not sure it would be faster than the persistent one though, so it could be misleading.


Points placed incorrectly with the 'p' shortcut when display scaling is >100

To reproduce:

Enable the SlicerMorph preferences (for p shortcut to work)
Set the display scaling to more than 100%
Restart slicer and load MRHead
Press p to place a landmark and note that there is a distinct offset between where the point is placed and where the cursor is actually is

Reproduces for me all the with my Windows 10 laptop with 4K screen.

To clarify, this is on windows?  Which version?  And which version of Slicer(Morph)?

Last version of SlicerMorph with latest stable.
In mac it happens all the time (as far as we can test on Sara's Mac).

This looks like a long-running issue in Qt.  Looks like it should be fixed in our version but maybe not.
The code we use relies on qt to do this mapping:
    cursorPosition = qt.QCursor.pos()
    widget = slicer.app.widgetAt(cursorPosition)
    mousePosition = widget.mapFromGlobal(cursorPosition)

so we could dig around to try to find a workaround, but it looks like a pretty deep problem.
The other option would be to capture the event at the vtk level instead of Qt.  This would mean you need to click in the render window to give it focus before you can place with the p key.


Suggestion: dropdown menus in custom blocks

pls like how u can do with broadcast blocks

this was added alresdy i thought?
either way its been suggested millions of times and if it isnt gere already it will be in the future


Consider creating a homebrew/xcode tap

Just as we've done for X11 and TeX, it may make sense to put formulae that have a hard Xcode.app dependency in their own tap.
Of the 3,604 formulae in core, there are 49 with a depends_on xcode:

aescrypt-packetizer
appledoc
blueutil
carthage
choose-gui
chrome-cli
chuck
contacts
corelocationcli
dark-mode
dshb
duck
fmdiff
graphviz
imagesnap
ios-class-guard
ios-deploy
irrlicht
launch
libmxml
macosvpn
macvim
mas
mit-scheme
mogenerator
mplayershell
natalie
objc-codegenutils
pcap_dnsproxy
phantomjs
pinentry-mac
planck
platypus
qt5
rem
rswift
sourcekitten
swift
swiftgen
swiftlint
switchaudio-osx
taylor
terminal-notifier
unar
watch-sim
webarchiver
wry
xcproj
xctool

All of the above call xcodebuild except these 20

aescrypt-packetizer
carthage
chuck
contacts
dshb
duck
libmxml
macvim
mit-scheme
natalie
phantomjs
pinentry-mac
planck
qt5
sourcekitten
swift
swiftgen
swiftlint
taylor
watch-sim

which may in particular be candidates for being tweaked to no longer need Xcode.
Some of the formulae that do call xcodebuild may to a lesser extent also be candidates for such tweaking.

Reverse dependencies that would be affected, assuming that the Xcode requirement cannot be eliminated for their dependency, are
graphvis:

bokken
eralchemy
fobis
ford
gammaray
gprof2dot
json-fortran
makefile2graph
plantuml
simgrid
xdot

phantomjs:

asciinema2gif
casperjs

unar:

ievms

qt5:

codequery
dspdfviewer
gammaray
opencsg
pushpin
pyqt5
qbs
qcachegrind
qjackctl
qscintilla2
sqliteman
zurl

plus any qt reverse dependencies as they are transitioned to qt5:

automoc4
binwalk
bzr-explorer
coin
cuty_capt
djview4
ezlupdate
frescobaldi
git-cola
gnuradio
gpsbabel
libechonest
liblastfm
libqglviewer
puddletag
pyqt
pyside-tools
pyside
qbzr
qca
qjson
quazip
qwt
qwtpolar
qxmpp
rcssserver
shiboken
sqliteman
treeline
valkyrie
weboob

Another thing that may help some of these: depending on our swift formula rather than Xcode for some swift stuff.

 At this point I'm prepared to call the vast majority of Homebrew organisation non-core taps a failed project, especially around getting communities interested in maintaining them & keeping them up-to-date that way.
Taps are vastly unloved & I think we're genuinely better boneyarding things we no longer want to maintain than chucking them in a tap with a vague promise that maybe it won't be more-or-less abandoned fairly imminently.

it may make sense to put formulae that have a hard Xcode.app dependency in their own tap.

I'm curious as to what would be gained by doing this.
As to what would be lost by doing this, I can think of at least two things:  the more times the user has to tap something, the more annoying it is for the user.  And the more times the user has to type "sometapname/someformulaname" rather than "someformulaname", the more annoying it is for the user.  There should be some kind of significant gain to offset this.
(This wouldn't affect me personally, since everything on that list that I use I've either already made my own custom local formula for, or don't use HB to manage.)

Yup, the CLT alone is insufficient to prop up what rightfully belongs in core.

Gotta be honest, I'm pretty 😢 about the prospect of moving anything more to a tap that isn't the boneyard. At this point I'm prepared to call the vast majority of Homebrew organisation non-core taps a failed project, especially around getting communities interested in maintaining them & keeping them up-to-date that way.
Taps are vastly unloved & I think we're genuinely better boneyarding things we no longer want to maintain than chucking them in a tap with a vague promise that maybe it won't be more-or-less abandoned fairly imminently.

That's pretty fair. Unless it's a single maintainers pet project (e.g. @dunn and homebrew/emacs) or an existing community tap we've brought in (e.g. homebrew/php, homebrew/science) the taps that are basically "not good enough for core but we feel bad saying no" are fairly dismal and we should consider shutting them down and moving stuff into core or the boneyard.


[Tests-Only] Create HTTP tests

This PR is not complete

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- pkg/service/v0/service_test.go  2

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- pkg/service/v0/service_test.go  2

See the complete overview on Codacy


Setup CI for main branch

In order to keep the project healthy, we would like to setup CI.

Use dotnet CLI to build the solution.
Use dotnet CLI to run the tests.

Is there a way to add a stage to this pipeline that runs all the test in the test assemblies?

I already added one,

name: Run Tests
run: dotnet test NationalInstruments.Analyzers.sln


Synthesis script template

Hi,
I am trying to synthesis swerv_eh1.
However it is not easy for me because swerv_eh1 is written in systemverilog.
I got some error messages which seem to be related to systemverilog syntax, such as package, typedef....
Is there a synthesis script template for design compiler ?
Thanks.

This repository is deprecated. Please use the CHIPS Alliance repository.


Documentation for -a- group, acquiring lake centers for GEE pull

Hey Katie, MR, and MB -
Katie, tagging you for review since MB is out, but also tagging MR since this is the first round of documentation and I want to make sure it's on the right path for submission and setting you up for success in writing, and MB for consistency. MB, please review the rendered text, even after they have been merged to make sure it is in line with the earlier sections of ASv2.
Most of the LOC here are .html, but there are also a few tweaks to the pipeline as a sanity check (specifically, making sure that the points are inside the polygon area of the filtered waterbodies.
KW, please to a thorough read of the bookdown (I'll send the rendered .html to everyone in Teams), make sure links work, etc etc. If there are things that are unclear, please let me know and if there is additional documentation that you think is necessary to describe the -a- group of targets, please say so!
As a reminder, we had previously talked about doing a direct comparison of the POI locations between v1 and v2, but for a number of reasons, MR and I decided that was a bit out of scope. Same with playing with buffer distances. We're going to keep things as is and respond to feedback from reviewers.


e# to return to previous file with cursor position intact

There is a plugin I maintain that is used to switch between header and implementation files, say a .c file and a .h file. Common use case is change a function signature in one file and then change in the other, just as an example. I simply use e# to switch back to the previous file in the plugin as it's nice and fast.
https://github.com/ericcurtin/CurtineIncSw.vim/issues/16
Is there a version of e# that preserves cursor position in the previous file?

I observe that when I call e# manually/interactively it does preserve cursor position. But in the script (it's a small script if you want to take a peak less than 50 lines), it doesn't reserve cursor position. Can this be solved?

are you using an autocommand to switch? Try adding the nested parameter.

I simply use e# to switch back to the previous file in the plugin as it's nice and fast.

No, you just use :e.  You can check this by adding a breakpoint in your function:
breakadd func CurtineIncSw

Then use your mapping, and execute the debugging command n (short for next) to step through the code.
This test fails:
if exists("b:previous_file") && b:previous_file == l:next_file

As a result, :e# is not executed.  Instead, a simple :e is executed:
exe "e " l:result

I guess this is why the cursor position is not preserved.
As a suggestion, here is a patch (untested):
diff --git a/plugin/CurtineIncSw.vim b/plugin/CurtineIncSw.vim
index 66c5d3b..97a424f 100644
--- a/plugin/CurtineIncSw.vim
+++ b/plugin/CurtineIncSw.vim
@@ -23,7 +23,11 @@ function! CurtineIncSw()
     let l:result = substitute(system(l:cmd), '\n', '', '')

     if filereadable(l:result)
-      exe "e " l:result
+      if l:result == fnamemodify(bufname('#'), ':p')
+        e#
+      else
+        exe "e " l:result
+      endif
     endif
   endif
 endfun

If that's not enough, you might need to save and restore the cursor position, possibly via getcurpos() and setpos(), or winsaveview() and winrestview().  Have also a look at :help restore-cursor (although, not quite what you want, but you might still borrow some code/idea from it).

Correct, thanks @lacygoill didn't know how to use vimscript debugger until now :smile:

I observe that when I call e# manually/interactively it does preserve
cursor position. But in the script (it's a small script if you want to
take a peak less than 50 lines), it doesn't reserve cursor position.
Can this be solved?

I suspect autocommands are not triggered.  Try this after ":e #":
doau BufWinEnter

--
From "know your smileys":
(___/)
(+'.'+)    Bunny
(")_(")
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


Debug-only crash when setting "Force Center's strength" to a large value

emath crashes on a debug assertion because the direction is supposedly not normalized.
Backtrace:
thread 'main' panicked at 'expected normalized direction'
emath/src/rect.rs:680
stack backtrace:
   6: core::panicking::panic_fmt
             at core/src/panicking.rs:72:14
   7: emath::rect::Rect::intersects_ray_from_center
             at emath/src/rect.rs:680:9
   8: re_view_graph::layout::provider::line_segment
             at re_view_graph/src/layout/provider.rs:311:24
      re_view_graph::layout::provider::ForceLayoutProvider::layout
             at re_view_graph/src/layout/provider.rs:212:39
      re_view_graph::layout::provider::ForceLayoutProvider::tick
             at re_view_graph/src/layout/provider.rs:294:9
   9: re_view_graph::ui::state::LayoutState::update
             at re_view_graph/src/ui/state.rs:156:34
      re_view_graph::ui::state::LayoutState::get
             at re_view_graph/src/ui/state.rs:170:17
  10: <re_view_graph::view::GraphView as re_viewer_context::view::view_class::ViewClass>::ui
             at re_view_graph/src/view.rs:182:22

Offending emath code:
https://github.com/emilk/egui/blob/8c4d8b2da8c108d0fe67f16dddc686ac6bf58eae/crates/emath/src/rect.rs#L679-L684
pub fn intersects_ray_from_center(&self, d: Vec2) -> Pos2 {
    debug_assert!(d.is_normalized(), "expected normalized direction");

    // ...

The sad part is that the direction is indeed normalized as far as I can tell.. they just don't seem to agree on the definition of normalized:
  // Calculate direction vector from source to target
  let direction = (target_center - source_center).normalized();

  // Find the border points on both rectangles
  let source_point = source.intersects_ray_from_center(direction);
  let target_point = target.intersects_ray_from_center(-direction); // Reverse direction for target

@lucasmerlin @emilk FYI: There seems to be something fishy with my implementation of is_normalized.

So the reason why this happened is because .normalized() returns zero if input is zero.
This can happen in layouts, if two nodes accidentally end up in the same spot :
In #8505, I've added checks to avoid this computation altogether, which should fix this bug.


bug: nw.mean_horizontal(nw.all()) raises unnecessarily

Follow-up to https://github.com/narwhals-dev/narwhals/pull/1075

Shall I look at this next?

that would be amazing thanks!


'new_patches' folder

Hello, I find that you mentioned  'new_patches' folder, but I don't find that in this repo. Shall I do it by myself? Can you provide it for me? Thank you!

Hi, @zhexian949 You have to prepare it by yourself. For the details, please refer to my response in #1.

Thank you. I will have a try.

Hello, @SheldonTsui ,could you share the new_patches folder results of FAIR-PLAY data set? I try to use the repo in the Readme, but failed. Maybe I did not fully understand that. Thank you!

Hi, @zhexian949 I have put the new_patches folder in the google driver. Please refer to this link: https://drive.google.com/file/d/1t0S9Lq82OLd8pQkppRkrET4Lx2PTEt-K/view?usp=sharing