Downloading playlists from a channel into folders

Hello,
I'm trying to get a channel playlist to download into folders. I tried using the following command but got this error:
youtube-dl --youtube-skip-dash-manifest -f 18 "https://www.youtube.com/user/OUlearn/playlists" --get-filename -o "/%(playlist)s/%(playlist_index)s-%(title)s.%(ext)s" --restrict-filenames
WARNING: Unable to download webpage: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>ERROR: Unable to download webpage: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)> (caused by URLError(SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)'),))
What is wrong with this? or what is the proper command? I would like to get them in 480p if possible, with each playlist in its own folder. Thank you.

Post the full output of youtube-dl when run with --verbose option.

youtube-dl --youtube-skip-dash-manifest -f 18 "https:/
/www.youtube.com/user/OUlearn/playlists" --get-filename -o "/(playlist_index)s-(
ext)s" --restrict-filenames --verbose
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'--youtube-skip-dash-manifest', u'-f', u'18', u'htt
ps://www.youtube.com/user/OUlearn/playlists', u'--get-filename', u'-o', u'/(play
list_index)s-(ext)s', u'--restrict-filenames', u'--verbose']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2015.11.19
[debug] Python version 2.7.10 - Windows-XP-5.1.2600-SP3
[debug] exe versions: none
[debug] Proxy map: {}
WARNING: Unable to download webpage: <urlopen error [SSL: CERTIFICATE_VERIFY_FAI
LED] certificate verify failed (_ssl.c:590)>
ERROR: Unable to download webpage: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILE
D] certificate verify failed (_ssl.c:590)> (caused by URLError(SSLError(1, u'[SS
L: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)'),))
File "youtube_dl\extractor\common.pyo", line 329, in _request_webpage
File "youtube_dl\YoutubeDL.pyo", line 1873, in urlopen
File "urllib2.pyo", line 431, in open
File "urllib2.pyo", line 449, in _open
File "urllib2.pyo", line 409, in _call_chain
File "youtube_dl\utils.pyo", line 798, in https_open
File "urllib2.pyo", line 1197, in do_open

Duplicate of #7309. Non secure solution: https://github.com/rg3/youtube-dl/issues/7309#issuecomment-156447651.


duplicated word

The word 'vor' is listed twice.

Thanks so much -- fixed now!
We like to send Wordnik stickers to people who help us improve our lists -- if you'd like some, just email us your mailing address (feedback@wordnik.com).


Fix pd audio IO error, remove speed option...

And also fixed a bug when you initialise withoout arguments, and cleaned up

damn, all checks failed :)

A bit better now!

I'm still getting I/O Errors


[question] Multiple agents with different RL Algorthims

Does  stable-basline  support multiple agents with different RL algorithms? For instance, one agent who behaves according to reactive policy learned by DQN  and another agent that behaves according to a policy learned by PPO
If so can you point me to a basic example of this setup? Thank you!

Would these be pre-trained models that are not learning? Then you could simply load up the two agents and use them "manually", like in this example.
If one or more of the agents are learning (e.g. self-play type of setup), that is trickier, see #181 and #423. If only one of the agents learns, you could embed the other players into the environment, while learning agent calls the learn.

@Miffyli  This is in multi-agent environment. Example a grid world, where two agents are trained are rewarded for collected apples, the agents themselves are not pre-trained and need to be trained together

@Degiorgio
This is not (easily) possible with stable-baselines (see the issues I referred to). You'd have to play around with environments. rllib is more oriented towards such setups.

Closing this one as it is a duplicate of the two issues mentioned above.


idsession.kak

Use autogenerated sessionid for generating the human-friendly one instead of rand.

Could you clarify what you mean by that?

Probably this weekend I'll do a pull request, code speaks clear than me.

I think I understand now, it's a good idea.
You want to use the number that's used as a session name by default to pick one from the array, right?

Yes, that is my idea.

That's implemented, you can now set the list of adjectives/nouns used by the command, also don't forget to add the following to your configuration:
hook global KakBegin .* idsession


add command line option for section to crop

This typically includes the timestamp and the hood of the vehicle.

This may depend on the size of the image corresponding to the resolution the camera is set to.


Scripting grafana dashboards

Create some interesting visualizations of ChRIS data e.g.

Figure out how to automatically add these dashboards to Grafana when the project is brought up by docker compose up -d (or as a docker compose run command fired by ./minichris.sh

Can you assign this to me @jennydaman ?

please i want to work on this project

@sakshi1215 were you able to get grafana up and running?

@sakshi1215 were you able to get grafana up and running?

Yes, it was working well for me

@jennydaman I would like to work on it. Can you assign it to me ?

Sure. Some work in a related issue was done in https://github.com/FNNDSC/miniChRIS-docker/pull/15, this could be helpful.

@jennydaman Can you give me a brief summary of all chris's data you want to be visualized by grafana ?

@MdSahil-oss some examples of useful visualizations would be as in the above screenshot:

most popular plugins of all time
plugin instances created per week, showing what state they're in (e.g. finishedSuccessfully, finishedWithError, cancelled)...

Imagination is the limit when it comes to what visualizations could be useful but I think having these two default visualizations will be good. Later we'll also want to add visualizations from cAdvisor+prometheus

hey @jennydaman i'm an outreachy applicant, can i work on this issue please ?


feat: Support for gitlab license scanning report

Allows cargo-license to output json file compatible with https://docs.gitlab.com/ee/user/compliance/license_compliance/
(Current Gitlab's tooling for license scanning in Rust projects is broken, with no fix on sight)
Output was tested on private project and works well :)

Sorry for the late reply. This PR seems to looks good.
I'll merge this.


Fine-tune with customs dataset

Great work
How can I use custom dataset on your model.

Thank you for your interest.
As I mentioned in #17 , the training script that's in place is an example. You can just edit it and change the dataset class with ImageFolder instead of CIFAR10/100. You can also use other reference training scripts. We recommend timm's reference training script.
As for fine-tuning, you might have to edit further to load a checkpoint first, and then the details are up to you on how exactly you want to fine-tune.
You can just fine-tune the final classifier (the fc layer), positional embedding (if learnable and if you want to use different sized images than the original), and other parts of the network as well. It really depends on what you want to fine-tune on.

Thanks
ogahozy
On Tue, 20 Jul 2021, 4:09 pm Ali Hassani, @.***> wrote:

Thank you for your interest.
As I mentioned in #17
https://github.com/SHI-Labs/Compact-Transformers/issues/17 , the
training script that's in place is an example. You can just edit it and
change the dataset class with ImageFolder instead of CIFAR10/100. You can
also use other reference training scripts. We recommend timm's reference
training script.
As for fine-tuning, you might have to edit further to load a checkpoint
first, and then the details are up to you on how exactly you want to
fine-tune.
You can just fine-tune the final classifier (the fc layer), positional
embedding (if learnable and if you want to use different sized images than
the original), and other parts of the network as well. It really depends on
what you want to fine-tune on.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/SHI-Labs/Compact-Transformers/issues/20#issuecomment-883471081,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFJ7EKTM37H2KH26LUQLLP3TYWGRJANCNFSM5AVXASKA
.

I'm closing the issue now. If you still have questions feel free to open it back up.


getUserNameProofsByFid is not returning all fnames associated with Fid

What is the bug?
All the fnames are not being returned for an fid using getUserNameProofsByFid
How can it be reproduced? (optional)
call getUserNameProofsByFid with an Fid, limited fnames will be returned
Additional context (optional)
Hub version: 1.5.1
For example, for an fid 602 there are three fnames associated.
when i query getUserNameProofsByFid it reurns only two.
Ideally it should return 3 fnames.
example 2: for Fid 2 also there are two fnames.
but we receive only one in the above method call.
Sample code:
const hubRpcEndpoint = "";
const client = getInsecureHubRpcClient(hubRpcEndpoint);

client.$.waitForReady(Date.now() + 5000, async (e) => {
  if (e) {
    console.error(`Failed to connect to ${hubRpcEndpoint}:`, e);
    process.exit(1);
  } else {
    console.log(`Connected to ${hubRpcEndpoint}`);
    const fid = 2;
    getUsernameProofs(fid)
   client.close();
  }
});

async function getUsernameProofs(fid: number) {
    let result = await client.getUserNameProofsByFid({ fid });
    if (result.isErr()) {
      throw new Error("Unable to backfill", { cause: result.error });
    }
    const usernameProofs = result.value;
    const hubMessages: HubMessage[] = []
    for (const proof of usernameProofs.proofs) {
           console.log(Buffer.from(proof.name).toString("utf-8").replace(/\0/g, ""))
           console.log(bytesToHexString(proof.owner)._unsafeUnwrap())
           console.log(proof.type.toString())
    }
}

@chetankashetti I'm seeing the right number of proofs on my hub:
<IP_ADDRESS>:2283 hub> (await rpcClient.getUserNameProofsByFid({fid: 2})).value.proofs.map((p) => p.name.toString('utf-8'))
[ 'v', 'varunsrin.eth' ]
<IP_ADDRESS>:2283 hub> (await rpcClient.getUserNameProofsByFid({fid: 602})).value.proofs.map((p) => p.name.toString('utf-8'))
[ 'betashop', 'betashop.eth', 'jasongoldberg.eth' ]

Could you post the response from rpcClient.getInfo({dbStats: true})? That would tell us if you're missing fname events. You could fix that by restarting the hub with --resync-name-events

@sanjayprabhu  This is the response i am getting from hub for stats
Fetching messages from hub  (~{"value":{"version":"1.5.1","isSyncing":false,"nickname":"Farcaster Hub","rootHash":"07bb1de87424eb5a35a5209121212a9ea4b34122","dbStats":{"numMessages":3827541,"numFidEvents":16837,"numFnameEvents":4042}}} messages)
Meanwhile let me try the command mentioned.

Yeah, you're missing a lot of fname events, you should have a similar number as the fidEvents.

Thank you for the quick response. :)
so the command will fix the issue, we receive all fnames by  getUserNameProofsByFid method.
Just confirming

Yes, it should fix the issue. See https://github.com/farcasterxyz/hub-monorepo/issues/1045 for a longer term fix for this (so hubs can detect and fix this themselves)

restarting with flag resolved issue. Thanks @sanjayprabhu

we will follow #1045 for long term fix


View for Shipment Order Items

New view to fetch Fulfilled Order Items, for this we should include data model for Shipment Item and related entities.
The view could contain items which are packed etc, and based on the Shipment Status, the view will be used to prepare the Fulfilled Order Items Feed, as the status will be 'SHIPMENT_SHIPPED' for such records.
This should be created keeping in mind all scenarios of Explode ON/OFF and partial/complete fulfillment.
For fulfilled order items, the feeds will be generated Shipment Item wise and not order Item wise.

Eg. for Explode OFF scenario, for an order item with qty=7, brokered partially to 2 facilities so 2 Ship groups and Assoc records.
For above say 2 records with qty 4 and 3 respectively for ship group 1 & 2.
After fulfillment, the feed should be generated shipment item wise.
The Shipment Item can have records like explode ON case i.e. new record for every single qty i.e. overall 7 records.
This can be the due to our API behavior to always consider single qty when fulfilling order item.
This may not always be the case, this is the current behavior.
So even if multiple qties get fulfilled, then qty gets set accordingly in the Shipment Item.
So in every scenario we will consider Shipment Items and prepare the feed and data taking reference from it.

NOTE: IMP

We need to consider the completed order items with products of type digital_good or donation.
Such product types are completed but no shipments are created.
So this view will not be able to fetch the records for such completed order items and if any feed is prepared to send the fulfilled order items, then they will be missed.
So we should create view from Order Item and related entities and include Shipment and related entities with join-optional as true so that all the shipped/completed items can be fetched using this view.

We need to consider the scenario of completed order items with products of type digital_good or donation .

Such product types are completed but no shipments are created.
So this view will not be able to fetch the records for such completed order items and if any feed is prepared to send the fulfilled order items, then they will be missed.
So we should create view from Order Item and related entities and include Shipment and related entities with join-optional as true so that all the shipped/completed items can be fetched using this view.
Added this detail as NOTE in the issue description as well.

@yaminibhagat

Improved the ShipmentOrderItemsSyncQueue view.
Verified the view for 'DIGITAL_GOOD', 'DONATION', and 'FINISHED_GOOD' and found the new scenario in the case of   DIGITAL_GOOD and DONATION.
In the shipment entity, there are no records created for the DIGITAL_GOOD and DONATION. because 'DIGITAL_GOOD' and 'DONATION'  does not ship.
Currently for fetching the quantity of a shipped item we are using the Shipment_Item entity.
But in the case of DIGITAL_GOOD and DONATION we can't we Shipment_Item entity.
Discussed the scenario with Gurveen ma'am.

TODO

Which field do we use for quantity in the case of 'DIGITAL_GOOD' and 'DONATION'?
Need to add the is_Physical field in the view.

Note: - Need to discuss this scenario with Deepak sir.

30 Jan '23
Discussion with @gurveenbagga

Dissused the FulfilledOrderItemsSyncQueue view refactoring.
In the OrderShipment entity only SHIPMENT_SHIPPED type records will be created.
In the OrderItemShipGrpInvRes entity records will be created when an order will be approved.
After completion of the Order, records will be deleted from the OrderItemShipGrpInvRes entity.


docs: break release notes into categories

Commit Message:
This attempts to make it easier when upgrading to understand the
changes in the release and how they will affect a given deployment.
Related: #11211
Signed-off-by: Greg Greenway<EMAIL_ADDRESS>

cc @envoyproxy/maintainers

Please add feedback on:

Are these the right categories?
Did the existing changes get put into the correct category?

I'm pretty sure some changes will need to be made to check_format once we settle on a format.

Thanks this is great, agreed.

Just brainstorming and it may be too much trouble, but I wonder if instead we should have one file with tagging, so we can auto-generate a file which is "all notes for this release" but have links at the top of that which bring you to a page listing only bugfixes or only functional changes or only feature add-ons.

I think this is a great idea, though it sounds like a bunch of work. Should we track this idea in an issue and see how it goes with this split and how much duplication there actually ends up being?

I'm also not clear on what's an incompatible vs minor behavior change. Can we explain in docs somewhere what that difference is?

Good question. In my mind, it was how likely a change is to cause issues. I don't have a good heuristic other than the committer's and reviewer's better judgement.

I'm also not clear on what's an incompatible vs minor behavior change. Can we explain in docs somewhere what that difference is?

Agreed it would be worth it to have some brief discussion of each section in the contributing guide?

I've been thinking about this for the past couple hours. The distinction I've come up with that I feel is generally useful: Whether a change will show a change in behavior for standard-conforming, non-malicious clients, or not. So for example, changing the behavior when an illegal set of headers is included in a request would be a minor change (or possibly a bug fix; the two probably have a lot of overlap). Changing how envoy responds to an upstream x-envoy-overloaded is in the other category: it applies to "normal" operations.

Agreed it would be worth it to have some brief discussion of each section in the contributing guide?

I think I'd rather have the descriptions inline with the release-notes, even if they get copied for every version. They are needed just as much by the consumer of release notes as by the producer.

I'd be mildly inclined to just combine the two, but no objections to leaving as-is as long as folks can tell what goes where :-)

My goal is to give the reader more context about changes, so they know what to look more carefully at. There may be better ways to accomplish this.

FWIW I totally agree with your intent - it'd be nice if folks could focus on changes that are likely to be impactful, and skim over the rest.   I guess in the HTTP space I'm less optimistic about how accurate we can be there.  Sadly experience tells me breakages aren't highly correlated with the spec (e.g. breakages when we removed whitespace from concatenated headers, or Envoy adding proper-casing for HTTP/1.1 even though the spec allows for lower-cased keys because lower-casing caused problems with so many endpoints).  Again I'm not averse to this split as long a we spell it out (and I'm fine with it being here, or in CONTRIBUTING, or both) which it sounds like you're on board with, so have at it!

Added an iteration trying to describe what different categories mean. The wording will need refinement; I'm just trying to get ideas out right now.
Are these the right categories for changes?

Sadly experience tells me breakages aren't highly correlated with the spec (e.g. breakages when we removed whitespace from concatenated headers, or Envoy adding proper-casing for HTTP/1.1 even though the spec allows for lower-cased keys because lower-casing caused problems with so many endpoints).

I agree with this. In my latest attempt, I tried to describe it as how likely something is to cause issues. I agree that appealing to the RFC feels nice, but isn't very useful in practice.

Before (and after) merging, I double-checked that it properly merged in other upstream changes to current.rst, and it all looked good.


[supervisord] adding integration.

The error on this is a test setup error: Could not find a version that satisfies the requirement supervisor==latest (from versions: 3.0a7, 3.0a8, 3.0a9, 3.0a10, 3.0a11, 3.0a12, 3.0b1, 3.0b2, 3.0, 3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 3.3.0, 3.3.1)


cmd/compile: '_rt0_amd64_windows_lib' is not called when linking with VS2015

What version of Go are you using (go version)?

go version go1.11.5 windows/amd64

Does this issue reproduce with the latest release?
Yes (go1.11.5)
What operating system and processor architecture are you using (go env)?
go env Output
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Andreas Jonsson\AppData\Local\go-build
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=C:\Users\Andreas Jonsson\go
set GOPROXY=
set GORACE=
set GOROOT=C:\Go
set GOTMPDIR=
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0 -fdebug-prefix-map=C:\Users\ANDREA~1\AppData\Local\Temp\go-build314745786=/tmp/go-build -gno-record-gcc-switches

What did you do?
Compile any package with -buildmode=c-archive on Windows using Go1.11.5 and TDM-GCC-64 (mingw64). Link the library with a small application using VisualStudio 2015 and call any C exported Go function in the library.
What did you expect to see?
Function should be executed just like when the application was built with Mingw.
What did you see instead?
The application deadlocks when calling the function because runtime waits for the 'runtime_init_wait' object in src\runtime\cgo\gcc_libinit_windows.c:77. It looks like _rt0_amd64_windows_lib is never called if you link with VisualStudio 2015 (I suspect later versions have the same problem)
I also noted a warning during build "main.a(go.o) : warning LNK4078: multiple '.text' sections found with different attributes (60600060)" I'm not sure if this is the cause of the issue...?
Go_minimal_c-archive.zip

Link the library with a small application using VisualStudio 2015

I could be wrong, but I don't think this is supported. Go only supports GCC C compiler on Windows.
Alex

Yea... That could be the case. :(
It would be interesting if we could add support for it though. Not sure how much work that would be?
I guess this issue has something to do with that the global constructor(s) in the archive is not recognized by the VS linker. Just as a test I tried to call it manually. Didn't work. :) But I'm not sure what _rt0_amd64_windows_lib expects in terms of register setup etc.
@dmitshur  So perhaps this should be tagged question then? Does anyone know what it would take to make this work. (if possible even possible.)

It would be interesting if we could add support for it though. Not sure how much work that would be?

I do not know. Sorry.
There is #20982 that might be related to this.
Alex

@alexbrainman Thanks. I must have missed that one.
It is related. I did not try to use the MSVC tools to build it all but if #20982 were to be merged that would be super helpful for my case.
Thanks
/aj


Improve UI

Once again, thank you so much for this mod (and potentially allowing me to contribute)! I definitely touched some things unrelated to this (probably my day job creeping in...), so please feel free to ask to revert specific changes if you feel they are unwanted 🤷. I tried to leave PR comments where suitable, and look forward to your thoughts/discussion!
Changes

Edited mod description/listing (grammar, standardized, GitHub link, etc)
Removed unused default CS2 thumbnail
Added simple README.md (moved improvements.txt to it for better visibility)
Added zoning mode icons (replace icon is taken from Unified Icons; perhaps it could be integrated as a dependency instead?)
Upgraded embedded CS2 types via npm run update (ie. all changes to types/ are auto-generated)
Removed unused "Hello World" component
Added some bindings to non-exposed CS2 components (they are used everywhere, and it saved a lot of styling)
Overhauled menu button styles and added tooltip
Overhauled panel entirely and added tooltips

Demo

https://github.com/zeeshanabid94/ZoningToolkit/assets/12562420/78b55339-ab5f-473d-a30d-60db05e3a46e
Potential Changes
I experimented with displaying the current zoning mode in the zone toolkit menu button; however, it feels a little cramped IMO 🤷. Not sure what the best way to convey this information would be honestly... It would probably be nice to know when placing roads though... It seems like it would be possible to add this setting directly into the existing road zoning tools though, similar to how the Anarchy mod does; however, that would probably be big enough to be done separately 🤷.

Closes #2

Created an issue for adding unified Icons as a dependency: https://github.com/zeeshanabid94/ZoningToolkit/issues/4

I will be away this weekend, but will be able to take a look at this again on Monday 👍

I think the indicator does look cramped. If we plan on integrating this tool into the Road Tools UI anyways, we don't need to invest in the current zoning indicator in the UI right now.

Yeah, I agree, I'll clean that code up on Monday 👍

Have made and pushed requested changes; let me know if there's anything else!
P.S. I'm not entirely sure why there's an apparent conflict with PublishConfiguration.xml (since it hasn't been updated since I made these updates); feel free to resolve as appropriate!

Thanks for the work. I'll try it out for a bit and then publish a new version.

No problem, thanks again for allowing me to contribute! This mod is going to remain part of my active playsets for a long, long time 😁


*: run gofmt -s

This change is

with some nice syntactic sugar I wasn't aware of!

Nice, it infers slice structs,

Reviewed 9 of 9 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved, some commit checks failed.

Comments from Reviewable

Reviewed 9 of 9 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved, some commit checks failed.

Comments from Reviewable


Cargo doesn't respect git's http.sslverify

This used to be supported in libgit2, but it was removed. We should probably add back in explicit support somewhere.
cc #636, this has come up once or twice there.

This will likely be done by binding the certificate_check callback in remote_callbacks.rs of git2-rs and then using that in Cargo itself

It seems a little bit complicated.
We are behind the R&D proxy, the company classifies the connection zones, we are unfortunately in a zone we can git clone the outside code, no write access to outside.
Cargo should get work by hacked locally, however, the process is that it firstly download a pre-built binary, that init binary couldn't work, so, all things blocked. I am not sure Cargo support cross-compile, if it does not we had to find a linux 64bit box without proxy access problem, build a hacked cargo, substitute the pre-built with that hacked, then get whole things work.
BTW,  there should be configuration item to tell cargo to ignore the SSL_certificate_check, rather than people to hack an ad-hoc version
The problem is not solved, I will try it and update feedback here

@yug any updates on this one? I am behind a http proxy and am unable to use cargo

I hardcoded the hostnames on my windows box and it worked!
c:\windows\system32\drivers\etc\hosts
<IP_ADDRESS>	www.crates.io crates.io s3-us-west-1-r-w.amazonaws.com

@thebitllc hm that's interesting, if you don't have that hardcoding, does crates.io resolve to a different IP than it normally does?

I managed to bypass this problem by setting up a crates.io proxy and a local index repo. See detailed description in chrisxue815/crates.io-proxy.

Related issue on my side, actually my company has a HTTP/HTTPS proxy service which fakes SSL certificates for doing HTTPS session monitoring (i.e. decrypts https on the fly). To achieve this the proxy provider  fakes https certificates by returning its own certificate to the client.
This is quite unfortunate and forces us to always do HTTPS fetches with no server certificate checks.
Hence it would be great to have a cargo option similar to the --no-check-certificate flag of wget (or --insecure flag of curl, or as mentionned, sslVerify=false configuration of git) when downloading from crates.io.
Whatever the implementation in the background, I guess it would be better to have the flag honored independently of the actual git config as the problem is not specific to git fetches, but also to bare downloads.

One question here is how Cargo may want to export this. It'd undeniably pretty questionable security practice to ignore certificate checks, but the use cases brought up here are indeed legitimate. We may want to do something beyond http.sslVerify or the GIT_SSL_NO_VERIFY environment variable (e.g. also require cargo build --insecure), but if git itself has this sort of configuration then we arguably should just go ahead and respect it as well

My case is the exact same as @guillon ... Behind a company wide proxy which fakes SSL certificates and am unable to use (and to ask others to use) cargo. Will give the crates.io-proxy thing a go but still, it would be so much better if this is resolved.

@alexcrichton, I guess that if one provides a --insecure (or --no-check-certificate) flag, it would be natural for the user to expect that cargo will force the skip of certificate check for all transport connection initiated (git, curl or whatever application level client used by cargo to get artifacts from the network).
Hence I guess that if this flag is provided it should force this setting for file download and git fetches initiated as part of the cargo command.
Thus, actually overriding the defauly git setting if any or download client setting if any.
If, independently of this flag, cargo uses a git client which honors the git configuration, no issue with this, i.e. the user may expect that if he sets a git configuration a git client may honor it. It is not cargo responsibility in this case.
Same for instance if cargo would explicitly mention that the download client is curl (I don't know actually), in this case the ~/.curlrc configuration could be also used by the user.
In summary, it would be good if cargo uses git/download libraries that honor "standard" git/download configurations.
But in any case it seems to me that providing a flag and thus forcing the behavior in anycase is a must have and more maintainable solution (i.e. it becomes a feature of cargo itself and thus gives a guarantee of reliability).

@the-shank @guillon Ditto, same case here, our company-wide proxy fakes SSL certificates, so we are basically forced to use wget --no-check-certificate, curl --insecure, etc, and sslVerify = false for git. It's a major PITA when a library/package doesn't comply with the configuration of tools.
I would, too, expect cargo to use whatever's listed in git configuration by default (if the user configured it in some specific way, that's the ground truth?), but maybe also provide a way to manually override this setting (--insecure) explicitly.

I've pushed this up as https://github.com/rust-lang/cargo/pull/2408

Great.
Note though, that this does not solve the file download transport as mentionned above, only the git transport.
This issue was initially related to the git config only thus the proposed fix seems sufficient for this issue, should we create another issue for the file download case?
For instance with the revision from pull request  #2408, on a network with faked certificates:
$ cargo --version
cargo 0.9.0 (879766a 2016-02-23)
$ cargo build --verbose
Downloading bitflags v0.3.3
unable to get packages from source
Caused by:
failed to download package bitflags v0.3.3 from https://crates.io/api/v1/crates/bitflags/0.3.3/download
Caused by:
Peer certificate cannot be authenticated with given CA certificates

@guillon indeed! Out of curiosity, do you know if there's standard environment variable/config file configuration for curl to ignore certificates? I know there's a flag, but I'd hope to avoid a flag for now...

@alexcrichton I do not now for env vars. Though, you have a ~/.curlrc file with the insecure option set as in:
$ cat $HOME/.curlrc
insecure
The curl command line will read it.
Note though that while the command line curl honors it, I'm not sure whether libcurl does it also.

Yea, the best you can do is probably see if ~/.curlrc has an insecure line in it. I don't think curl picks up any environment variables.

Those who are running into this problem, one question that came up when @wycats and I were talking about this was why can't a local CA root be added? This is so blatantly a bad security practice it seems like the "standard way" of doing this would be for companies to install some trusted root CA which Cargo should then used to verify connections.

Yes.
Actually the two cases are

repos/files hosted on self-signed certificate hosts, HTTPS proxy or not
HTTPS proxies with faked certificate (i.e. a private certificate returned for all sites), generally signed with a company or third party specific root CA.
In the second case indeed, one should install the root CA to solve the issue or the company IT should do it.
Still, it remains more complicated when trying to set up containers or VMs, i.e. need a specific case for providing the root CA and installing it in the container, etc...
Thus we tend to go the easier way, indeed, and deactivate certs checks when possible for non production work.
=> the absurd idea of replacing real certs by actually making man-in-the-middle "the security guarant" lead us to absurdities also...

It was also pointed out that we could also make it easier to use a custom store of certificates through standard mechanisms if modifying the "root store" is too hard:

https://github.com/rust-lang/cargo/pull/2408#issuecomment-200512319
https://github.com/rust-lang/cargo/pull/2408#issuecomment-200514127

I'm new to rust, but I'm coming from the perspective of just trying to experiment / introduce it in our corporate environment. We have the same HTTPS proxy substituting certificates issue that's presented above.
The strategy of adding the private CA into the right spots in the OS makes sense in general, but isn't always practical in a corporate environment. This is true for policy reasons, not just technical. In our case, we don't have root access to our machines and trying to convince teams of people to make certificate changes for a "language experiment" is definitely an uphill battle. In the end, lack of an alternative solution just increases the barrier to entry for trying rust out.
From my point of view, either allowing me to force disable the certificate check or side load and point at our private CA certificate file would be workable solutions.

I'm in exactly the same spot, was trying to introduce Rust to the team at work until we've hit this issue -- without root access (as is quite often the case) it's too much of a hassle to fix in a corporate environment and in some cases it's just plain implausible. This is pretty much then only reason we gave up on Rust, at least until there's a solution that works (and doesn't require root rights).

I am also in a corporate environment.
On Linux it works through the proxy but on Windows it doesn't.
On Windows we use "wpad.dat"(Web Proxy Autodiscovery), even git clone doesn't work on Windows(with http_proxy and https_proxy setup)...
Web browsers work all ok.
Tried to call cargo(from MSYS2) with http_proxy=[the proxy] https_proxy=[the proxy] cargo build and it doesn't work.

@alexcrichton I understand that support for using cargo behind company wide proxy that fakes SSL Certificates isn't going to land into cargo as it is insecure practice. However, we (as in me) could fork cargo and modify that fork to support working behind company wide proxies. This would atleast enable folks like me (and @guillon, @aldanor etc.) to work with rust and introduce it at our work places.
The issue is that I am not very familiar with cargo. Could you give some pointers as to how to go about this.
We can even name this fork "cargo-insecure" :wink:

@alexcrichton What are the next steps for adding support for alternative cert stores as mentioned in https://github.com/rust-lang/cargo/issues/1180#issuecomment-200605114 ?

@apaprocki Cargo should already respect platform-specific conventions like the environment variables SSL_CERT_FILE and SSL_CERT_DIR, so it may just be a matter of configuring those. Otherwise for a more cross-platform solution it'll likely involve binding libcurl's certificate information and then adding Cargo-specific configuration to inform libcurl of the various possible certificate stores.

Using a company-wide proxy is not necessarily insecure, provided that the proxy checks TLS certificates AND the proxy's certificate is on the client machines.
In the relevant cases here, the proxy's certificate is known, so there should be a way to tell Cargo to use it.

@DemiMarie yeah I think that's definitely the next step to take on this issue, ensuring that you can configure the certificates that Cargo uses and it then communicates that to all of its components. It's also be great to read this configuration from a standard location if it's already there as well.

Very said that it is so complicated to use cargo behind our company wide proxy. I set up a localhost cntlm proxy for authentification. git works fine together with the cntlm, but still I need  "sslVerify=false" in the git config.
I guess rust will have a serious problem to get used in company environements.
Should be possible to give rust a quick try without struggeling around with proxys and certificates.
By the way I don't understand why cargo shall be more secure than git...

Ok, I've opened a PR (https://github.com/rust-lang/cargo/pull/2917) for adding http.cainfo config which should allow configuring Cargo to use a specific CA bundle for HTTP connections. If Cargo is then configured with an HTTP proxy, then all traffic should be routed with that cainfo information.
If you're on Linux you can also do that today by setting the SSL_CERT_FILE environment variable pointing at your cainfo file, but that won't work on OSX and Windows as OpenSSL isn't used there.

Now that https://github.com/rust-lang/cargo/pull/2917 is merged, if anyone runs into this issue, you can try to add:
[http]
cainfo = "path/to/cert.pem"

to your .cargo/config file (probably next to http.proxy. I've tested this on OSX/Linux, but I suspect Windows will work as well!

@alexcrichton unfortunately Windows doesn't work with the new cainfo option.
Looking at the source it seems that CURLOPT_CAINFO is not supported with winssl.
I've tried to install the certificate (tested with chrome) but cargo is still unable to download crates.
I've tested this on windows 10 (10586.494) with cargo 0.13.0-nightly (c205132 2016-08-09).

Ah yeah I've since learned that unfortunately Windows handles certificate
trust in a very different fashion so this operation is a nop in curl on
Windows.
On Sunday, August 14, 2016, yoava333<EMAIL_ADDRESS>wrote:

@alexcrichton https://github.com/alexcrichton unfortunately Windows
doesn't work with the new cainfo option.
Looking at the source it seems that CURLOPT_CAINFO is not supported with
winssl.
I've tried to install the certificate (tested with chrome) but cargo is
still unable to download crates.
I've tested this on windows 10 (10586.494) with cargo 0.13.0-nightly (
c205132
https://github.com/rust-lang/cargo/commit/c205132c6ff66babd0eb741e08363f1d79d77eba
2016-08-09).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rust-lang/cargo/issues/1180#issuecomment-239668595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAD95BTiEvq0yY0T8EfP7OPzeFiN0it5ks5qfvskgaJpZM4DTdrr
.

So, http.cainfo wants a Certificate Authority bundle to point to.
In case you are wondering "what on earth is a 'Certificate Authority bundle' and where do I take one?", the working answer may be* the curl's site (cacert.pem).
* At least if you are on a server with sufficiently old version of some enterprise Linux, in this case the proxy may be a red herring.
(I spent too much time on this today.)

With the "git the cli" config option (I forget what it is exactly) available as an alternative, do we still care to resolve this anyways?

I think we'll still want to consider this yeah for all of Cargo's other interactions, as there's often https issues with crates.io as well


Compile Time Error Occur When i add object mapper to my project

public protocol TransformType {
associatedtype Object                       // Show Error:Expected Declarartion
associatedtype JSON
func transformFromJSON(value: AnyObject?) -> Object? //Use of undeclared type
func transformToJSON(value: Object?) -> JSON? //Use of undeclared type object

}
I do not know what is issue and how it resolve. I am using alamophire and realm in my project

The latest version of ObjectMapper requires Xcode 7.3. Either update xcode or add the previous release of ObjectMapper to your project.


"config/local.conf" settings aren't being used?

Hi, I am getting an error I don't know how to debug attempting to run the DemoJourney simulation.
Here is my "local.conf":
% export env=config/local.conf

% cat src/test/resources/config/local.conf
app {
  host = "http://localhost:5601/cry"
  version = "7.12.0"
}

security {
  on = true
}

auth {
  providerType = "basic"
  providerName = "basic"
  username = "admin"
  password = "changeme"
}

And I have a local Kibana and ES 7.12.0 running:
% curl -i http://localhost:5601/cry
HTTP/1.1 302 Found
location: /cry/login?next=%2Fcry%2F
kbn-name: pink.local
kbn-license-sig: 29bcf563e040fd115ec3733e9e9d9fe170e849a278f1ab8f1e38d35adf62fbd2
cache-control: private, no-cache, no-store, must-revalidate
content-length: 0
date: Thu, 01 Apr 2021 23:45:39 GMT
content-type: application/octet-stream
Connection: keep-alive
Keep-Alive: timeout=120

When I run the gatling:test I get (full output is at the bottom):
16:47:22.781 [INFO ] KibanaConfiguration - Getting Kibana status info
16:47:23.889 [ERROR] i.g.a.Gatling$ - Run crashed
java.net.ConnectException: Connection refused
	at java.base/sun.nio.ch.Net.connect0(Native Method)
	at java.base/sun.nio.ch.Net.connect(Net.java:574)
	at java.base/sun.nio.ch.Net.connect(Net.java:563)
	at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:333)
	at java.base/java.net.Socket.connect(Socket.java:648)
	at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
	... 31 common frames omitted
Wrapped by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:5620 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused
...

which suggests my "local.conf" is not being read to use Kibana at port 5601 rather than port 5620.
Can someone help me figure out what is going on? I was able to successfully run these back in December.  Thanks.
Full output of the mvn run
[16:45:39 trentm@pink:~/el/kibana-load-testing (git:master)]
% mvn gatling:test -Dgatling.simulationClass=org.kibanaLoadTest.simulation.DemoJourney
[INFO] Scanning for projects...
[INFO]
[INFO] --------------< org.elastic.kibana-test:kibana-load-test >--------------
[INFO] Building kibana-load-test 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- gatling-maven-plugin:3.1.2:test (default-cli) @ kibana-load-test ---
16:47:19,797 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
16:47:19,798 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
16:47:19,798 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml]
16:47:19,799 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
16:47:19,799 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml]
16:47:19,799 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [file:/Users/trentm/el/kibana-load-testing/target/test-classes/logback.xml]
16:47:19,805 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@5d740a0f - URL [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml] is not of type file
16:47:19,848 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
16:47:19,849 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
16:47:19,853 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [CONSOLE]
16:47:19,861 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
16:47:19,901 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - ROOT level set to WARN
16:47:19,901 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [CONSOLE] to Logger[ROOT]
16:47:19,901 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
16:47:19,902 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@214b199c - Registering current configuration as safe fallback point

Java HotSpot(TM) 64-Bit Server VM warning: Option UseBiasedLocking was deprecated in version 15.0 and will likely be removed in a future release.
16:47:21,714 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
16:47:21,715 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
16:47:21,716 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/Users/trentm/el/kibana-load-testing/target/test-classes/logback.xml]
16:47:21,716 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
16:47:21,716 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml]
16:47:21,716 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [file:/Users/trentm/el/kibana-load-testing/target/test-classes/logback.xml]
16:47:21,775 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
16:47:21,776 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
16:47:21,781 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [CONSOLE]
16:47:21,788 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
16:47:21,835 |-INFO in ch.qos.logback.core.joran.action.TimestampAction - Using current interpretation time, i.e. now, as time reference.
16:47:21,836 |-INFO in ch.qos.logback.core.joran.action.TimestampAction - Adding property to the context with key="date" and value="20210401164721" to the LOCAL scope
16:47:21,836 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.FileAppender]
16:47:21,838 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE]
16:47:21,839 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
16:47:21,840 |-INFO in ch.qos.logback.core.FileAppender[FILE] - File property is set to [target/simulation-20210401164721.log]
16:47:21,841 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
16:47:21,841 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [CONSOLE] to Logger[ROOT]
16:47:21,841 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
16:47:21,841 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@376b4233 - Registering current configuration as safe fallback point

16:47:21.971 [INFO ] i.g.c.c.GatlingConfiguration$ - Gatling will try to use 'gatling.conf' as custom config file.
16:47:22.330 [INFO ] a.e.s.Slf4jLogger - Slf4jLogger started
16:47:22.781 [INFO ] KibanaConfiguration - Getting Kibana status info
16:47:23.889 [ERROR] i.g.a.Gatling$ - Run crashed
java.net.ConnectException: Connection refused
	at java.base/sun.nio.ch.Net.connect0(Native Method)
	at java.base/sun.nio.ch.Net.connect(Net.java:574)
	at java.base/sun.nio.ch.Net.connect(Net.java:563)
	at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:333)
	at java.base/java.net.Socket.connect(Socket.java:648)
	at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
	... 31 common frames omitted
Wrapped by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:5620 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:156)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:376)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
	at org.kibanaLoadTest.helpers.HttpHelper.loginIfNeeded(HttpHelper.scala:29)
	at org.kibanaLoadTest.helpers.HttpHelper.getStatus(HttpHelper.scala:105)
	at org.kibanaLoadTest.KibanaConfiguration.syncWithInstance(KibanaConfiguration.scala:90)
	at org.kibanaLoadTest.simulation.BaseSimulation.<init>(BaseSimulation.scala:72)
	at org.kibanaLoadTest.simulation.DemoJourney.<init>(DemoJourney.scala:7)
	... 17 common frames omitted
Wrapped by: java.lang.reflect.InvocationTargetException: null
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
	at io.gatling.app.Runner.run0(Runner.scala:65)
	at io.gatling.app.Runner.run(Runner.scala:52)
	at io.gatling.app.Gatling$.start(Gatling.scala:80)
	at io.gatling.app.Gatling$.fromArgs(Gatling.scala:45)
	at io.gatling.app.Gatling$.main(Gatling.scala:37)
	at io.gatling.app.Gatling.main(Gatling.scala)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at io.gatling.mojo.MainWithArgsInFile.runMain(MainWithArgsInFile.java:53)
	at io.gatling.mojo.MainWithArgsInFile.main(MainWithArgsInFile.java:34)
java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at io.gatling.mojo.MainWithArgsInFile.runMain(MainWithArgsInFile.java:53)
	at io.gatling.mojo.MainWithArgsInFile.main(MainWithArgsInFile.java:34)
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
	at io.gatling.app.Runner.run0(Runner.scala:65)
	at io.gatling.app.Runner.run(Runner.scala:52)
	at io.gatling.app.Gatling$.start(Gatling.scala:80)
	at io.gatling.app.Gatling$.fromArgs(Gatling.scala:45)
	at io.gatling.app.Gatling$.main(Gatling.scala:37)
	at io.gatling.app.Gatling.main(Gatling.scala)
	... 6 more
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:5620 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:156)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:376)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
	at org.kibanaLoadTest.helpers.HttpHelper.loginIfNeeded(HttpHelper.scala:29)
	at org.kibanaLoadTest.helpers.HttpHelper.getStatus(HttpHelper.scala:105)
	at org.kibanaLoadTest.KibanaConfiguration.syncWithInstance(KibanaConfiguration.scala:90)
	at org.kibanaLoadTest.simulation.BaseSimulation.<init>(BaseSimulation.scala:72)
	at org.kibanaLoadTest.simulation.DemoJourney.<init>(DemoJourney.scala:7)
	... 17 more
Caused by: java.net.ConnectException: Connection refused
	at java.base/sun.nio.ch.Net.connect0(Native Method)
	at java.base/sun.nio.ch.Net.connect(Net.java:574)
	at java.base/sun.nio.ch.Net.connect(Net.java:563)
	at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:333)
	at java.base/java.net.Socket.connect(Socket.java:648)
	at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
	... 31 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  5.313 s
[INFO] Finished at: 2021-04-01T16:47:23-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal io.gatling:gatling-maven-plugin:3.1.2:test (default-cli) on project kibana-load-test: Gatling failed.: Process exited with an error: 255 (Exit value: 255) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

@trentm I think you faced #17, the last comment in the issue explains the workaround.
I will update documentation to explain how things might work with base path.

@dmlemeshko I don't yet understand.  My stacktrace is different to Tina's from #17:
From #17
09:57:11.178 [INFO ] KibanaConfiguration - Base URL = http://localhost:5601
09:57:11.179 [INFO ] KibanaConfiguration - Kibana version = 8.0.0
09:57:11.179 [INFO ] KibanaConfiguration - Security Enabled = true
09:57:11.179 [INFO ] KibanaConfiguration - Auth payload = {"providerType":"basic","providerName":"basic","currentURL":"http://localhost:5601/login","params":{"username":"admin","password":"changeme"}}
09:57:11.179 [INFO ] Base Simulation - Loading sample data
09:57:11.297 [ERROR] HttpHelper - Exception occurred during loading sample data
09:57:11.299 [ERROR] i.g.a.Gatling$ - Run crashed
java.lang.RuntimeException: Adding sample data failed:
	at org.kibanaLoadTest.helpers.HttpHelper.addSampleData(HttpHelper.scala:94)
...

whereas mine isn't even using the configured "app.host":
Wrapped by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:5620 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused

Also, as far as I can tell I am using the workaround described at https://github.com/elastic/kibana-load-testing/issues/17#issuecomment-739321329

I have kibana.dev.yml configured to use a static basePath:

% cat config/kibana.dev.yml
server.basePath: "/cry"
elasticsearch.username: "admin"
elasticsearch.password: "changeme"

and I have that same basePath configured in my "config/local.conf":
% cat src/test/resources/config/local.conf
app {
  host = "http://localhost:5601/cry"
  version = "7.12.0"
}

security {
  on = true
}

auth {
  providerType = "basic"
  providerName = "basic"
  username = "admin"
  password = "changeme"
}

Or are you suggesting I need to use the other mentioned workaround:

Run Kibana without a base path

?

I noticed Tina's workaround showed a space in the app.host:
...
app {
  host = "http://localhost:5603 /xhf"
...

so I tried that as well:
app {
  host = "http://localhost:5601 /cry"
  version = "7.12.0"
}
...

However, I still get the same error.

@dmlemeshko ping

@trentm I checked code and port 5620 is not hardcoded.
KibanaConfiguration - Base URL = http://localhost:5601 confirms that your was read.
Just to make sure that your latest changes are in /target, run mvn clean test-compile
At the moment your run fails on login API call and it could be something with payload. You can check here to get its value an try to run it locally.
Have you tried running with --no-base-bath or it is critical for you?

I pushed a commit that should log request on failure, the log will look like:
22:56:34.930 [INFO ] KibanaConfiguration - Getting Kibana status info
22:56:35.058 [ERROR] HttpHelper - Login to Kibana failed:
POST http://localhost:5601/internal/security/login
Headers: Map(Content-Type -> application/json, kbn-xsrf -> xsrf)
Body: {"providerType":"basic","providerName":"basic","currentURL":"http://localhost:5601/login","params":{"username":"elastic","password":"changeme"}}
[Ljava.lang.StackTraceElement;@3c4262d1
22:56:35.060 [ERROR] i.g.a.Gatling$ - Run crashed
java.net.ConnectException: Connection refused (Connection refused)
	at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
	at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
	at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
	at java.base/java.net.Socket.connect(Socket.java:591)
	at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
	... 30 common frames omitted

I hope it will help to understand the root cause

@dmlemeshko Here is what I get from running with your update:
% mvn gatling:test -Dgatling.simulationClass=org.kibanaLoadTest.simulation.DemoJourney
[INFO] Scanning for projects...
[INFO]
[INFO] --------------< org.elastic.kibana-test:kibana-load-test >--------------
[INFO] Building kibana-load-test 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from central: https://repo.maven.apache.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.2/scala-parallel-collections_2.13-1.0.2.pom
Downloaded from central: https://repo.maven.apache.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.2/scala-parallel-collections_2.13-1.0.2.pom (1.9 kB at 5.3 kB/s)
Downloading from central: https://repo.maven.apache.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.2/scala-parallel-collections_2.13-1.0.2.jar
Downloaded from central: https://repo.maven.apache.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.2/scala-parallel-collections_2.13-1.0.2.jar (1.1 MB at 4.3 MB/s)
[INFO]
[INFO] --- gatling-maven-plugin:3.1.2:test (default-cli) @ kibana-load-test ---
15:23:50,340 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
15:23:50,341 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
15:23:50,342 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml]
15:23:50,342 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
15:23:50,342 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml]
15:23:50,342 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [file:/Users/trentm/el/kibana-load-testing/target/test-classes/logback.xml]
15:23:50,351 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@5d740a0f - URL [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml] is not of type file
15:23:50,418 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
15:23:50,418 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
15:23:50,424 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [CONSOLE]
15:23:50,431 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
15:23:50,475 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - ROOT level set to WARN
15:23:50,475 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [CONSOLE] to Logger[ROOT]
15:23:50,476 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
15:23:50,476 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@214b199c - Registering current configuration as safe fallback point

15:23:56.473 [main][WARN ][ZincCompiler.scala:183] i.g.c.ZincCompiler$ - /Users/trentm/el/kibana-load-testing/src/test/scala/org/kibanaLoadTest/helpers/Helper.scala:160:11: class JSONObject in package json is deprecated (since 1.0.6): Use The Scala Library Index to find alternatives: https://index.scala-lang.org/
    parse(JSONObject(meta).toString()).getOrElse(Json.Null)
          ^
15:23:58.272 [main][WARN ][ZincCompiler.scala:144] i.g.c.ZincCompiler$ - one warning found
Java HotSpot(TM) 64-Bit Server VM warning: Option UseBiasedLocking was deprecated in version 15.0 and will likely be removed in a future release.
15:23:58,807 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
15:23:58,808 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
15:23:58,810 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/Users/trentm/el/kibana-load-testing/target/test-classes/logback.xml]
15:23:58,810 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
15:23:58,810 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/Users/trentm/.m2/repository/io/gatling/gatling-maven-plugin/3.1.2/gatling-maven-plugin-3.1.2.jar!/logback.xml]
15:23:58,810 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [file:/Users/trentm/el/kibana-load-testing/target/test-classes/logback.xml]
15:23:58,870 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
15:23:58,870 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
15:23:58,875 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [CONSOLE]
15:23:58,881 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
15:23:58,930 |-INFO in ch.qos.logback.core.joran.action.TimestampAction - Using current interpretation time, i.e. now, as time reference.
15:23:58,931 |-INFO in ch.qos.logback.core.joran.action.TimestampAction - Adding property to the context with key="date" and value="20210406152358" to the LOCAL scope
15:23:58,931 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.FileAppender]
15:23:58,934 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE]
15:23:58,935 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
15:23:58,935 |-INFO in ch.qos.logback.core.FileAppender[FILE] - File property is set to [target/simulation-20210406152358.log]
15:23:58,936 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
15:23:58,936 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [CONSOLE] to Logger[ROOT]
15:23:58,937 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
15:23:58,937 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@376b4233 - Registering current configuration as safe fallback point

15:23:59.070 [INFO ] i.g.c.c.GatlingConfiguration$ - Gatling will try to use 'gatling.conf' as custom config file.
15:23:59.429 [INFO ] a.e.s.Slf4jLogger - Slf4jLogger started
15:23:59.875 [INFO ] KibanaConfiguration - Getting Kibana status info
15:24:00.979 [ERROR] HttpHelper - Login to Kibana failed:
POST http://localhost:5620/internal/security/login
Headers: Map(Content-Type -> application/json, kbn-xsrf -> xsrf)
Body: {"providerType":"basic","providerName":"basic","currentURL":"http://localhost:5620/login","params":{"username":"elastic","password":"changeme"}}
[Ljava.lang.StackTraceElement;@3b6c624
15:24:00.980 [ERROR] i.g.a.Gatling$ - Run crashed
java.net.ConnectException: Connection refused
	at java.base/sun.nio.ch.Net.connect0(Native Method)
	at java.base/sun.nio.ch.Net.connect(Net.java:574)
	at java.base/sun.nio.ch.Net.connect(Net.java:563)
	at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:333)
	at java.base/java.net.Socket.connect(Socket.java:648)
	at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
	... 31 common frames omitted
Wrapped by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:5620 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:156)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:376)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
	at org.kibanaLoadTest.helpers.HttpHelper.loginIfNeeded(HttpHelper.scala:31)
	at org.kibanaLoadTest.helpers.HttpHelper.getStatus(HttpHelper.scala:114)
	at org.kibanaLoadTest.KibanaConfiguration.syncWithInstance(KibanaConfiguration.scala:90)
	at org.kibanaLoadTest.simulation.BaseSimulation.<init>(BaseSimulation.scala:72)
	at org.kibanaLoadTest.simulation.DemoJourney.<init>(DemoJourney.scala:7)
	... 17 common frames omitted
Wrapped by: java.lang.reflect.InvocationTargetException: null
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
	at io.gatling.app.Runner.run0(Runner.scala:65)
	at io.gatling.app.Runner.run(Runner.scala:52)
	at io.gatling.app.Gatling$.start(Gatling.scala:80)
	at io.gatling.app.Gatling$.fromArgs(Gatling.scala:45)
	at io.gatling.app.Gatling$.main(Gatling.scala:37)
	at io.gatling.app.Gatling.main(Gatling.scala)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at io.gatling.mojo.MainWithArgsInFile.runMain(MainWithArgsInFile.java:53)
	at io.gatling.mojo.MainWithArgsInFile.main(MainWithArgsInFile.java:34)
java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at io.gatling.mojo.MainWithArgsInFile.runMain(MainWithArgsInFile.java:53)
	at io.gatling.mojo.MainWithArgsInFile.main(MainWithArgsInFile.java:34)
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
	at io.gatling.app.Runner.run0(Runner.scala:65)
	at io.gatling.app.Runner.run(Runner.scala:52)
	at io.gatling.app.Gatling$.start(Gatling.scala:80)
	at io.gatling.app.Gatling$.fromArgs(Gatling.scala:45)
	at io.gatling.app.Gatling$.main(Gatling.scala:37)
	at io.gatling.app.Gatling.main(Gatling.scala)
	... 6 more
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:5620 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:156)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:376)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
	at org.kibanaLoadTest.helpers.HttpHelper.loginIfNeeded(HttpHelper.scala:31)
	at org.kibanaLoadTest.helpers.HttpHelper.getStatus(HttpHelper.scala:114)
	at org.kibanaLoadTest.KibanaConfiguration.syncWithInstance(KibanaConfiguration.scala:90)
	at org.kibanaLoadTest.simulation.BaseSimulation.<init>(BaseSimulation.scala:72)
	at org.kibanaLoadTest.simulation.DemoJourney.<init>(DemoJourney.scala:7)
	... 17 more
Caused by: java.net.ConnectException: Connection refused
	at java.base/sun.nio.ch.Net.connect0(Native Method)
	at java.base/sun.nio.ch.Net.connect(Net.java:574)
	at java.base/sun.nio.ch.Net.connect(Net.java:563)
	at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
	at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:333)
	at java.base/java.net.Socket.connect(Socket.java:648)
	at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
	... 31 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  13.179 s
[INFO] Finished at: 2021-04-06T15:24:01-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal io.gatling:gatling-maven-plugin:3.1.2:test (default-cli) on project kibana-load-test: Gatling failed.: Process exited with an error: 255 (Exit value: 255) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

% echo $env
config/local.conf

% cat src/test/resources/config/local.conf
app {
  host = "http://localhost:5620"
  version = "8.0.0"
}

security {
  on = true
}

auth {
  providerType = "basic"
  providerName = "basic"
  username = "elastic"
  password = "changeme"
}

How did you start Kibana?
I tried it an hour ago running from source:
x-pack git:(master) node scripts/functional_tests_server.js

Wait for Kibana to start and run Gatling from 2nd terminal window with:
mvn clean test-compile
mvn gatling:test -Dgatling.simulationClass=org.kibanaLoadTest.simulation.DemoJourney

works fine:
01:23:22.925 [INFO ] a.e.s.Slf4jLogger - Slf4jLogger started
01:23:23.389 [INFO ] KibanaConfiguration - Getting Kibana status info
01:23:24.676 [INFO ] Base Simulation - Running DemoJourney simulation with 50 users
01:23:24.676 [INFO ] KibanaConfiguration - Base URL = http://localhost:5620
01:23:24.676 [INFO ] KibanaConfiguration - Kibana version = 8.0.0
01:23:24.676 [INFO ] KibanaConfiguration - Security Enabled = true
01:23:24.676 [INFO ] KibanaConfiguration - Auth payload = {"providerType":"basic","providerName":"basic","currentURL":"http://localhost:5620/login","params":{"username":"elastic","password":"changeme"}}
01:23:24.679 [INFO ] HttpHelper - Loading sample data
Simulation org.kibanaLoadTest.simulation.DemoJourney started...

You can double check target content to see what is the config after project compilation

KibanaConfiguration - Base URL = http://localhost:5601 confirms that your config was read.

That isn't a quote from logs from my machine. "5601" is never in the maven output.

How did you start Kibana?

I have a checkout of kibana tag v7.12.0, and I am running:
% ELASTIC_APM_LOG_LEVEL=info yarn start

You can double check target content to see what is the config after project compilation

Sigh. This is probably it. I have been editing the "local.conf" at src/test/resources/config/local.conf.
When env=config/local.conf in what directory is it looking for "config/local.conf"?

Have you tried running with --no-base-bath or it is critical for you?

I didn't know about that option.

x-pack git:(master) node scripts/functional_tests_server.js

I also didn't know about this way of starting Kibana.
I have to run now. I'll try again tomorrow and reply here. Thanks for the help.

@dmlemeshko There were two issues:

The directory in which to place the config file is not at all clear from the README. I had been using "./src/test/resources/config/" because (a) that worked the first time (I am guessing that mvn copies from there to "target/test-classes/config/" on its first build?) and (b) to README says:

Update Kibana configuration in /resources/config/local.conf file

which seems to encourage editing config files in the "src/resources" directory.

The README shows an example run using:

export env=config/cloud-7.9.2.conf

However, in commit e5b16f39e038ce1f2ad7279f07aa5ba469d5984e support for using envvars was dropped in favour of using mvn gatling:test -Denv=....
As well, given that I don't know Java or Scala well at all, it was difficult for me to track what directory https://github.com/elastic/kibana-load-testing/blob/master/src/test/scala/org/kibanaLoadTest/simulation/BaseSimulation.scala#L72 was reading from.
The load testing is working for me again, thanks.
Updating the README usage examples would help a lot here. Let me know if you need a PR for that. Cheers.

@trentm thank you for update.
Regarding your first point: it is the right way to update to add a new .conf file in ./src/test/resources/config/, you just need to re-compile the project whenever you made any changes in src.
I think gatling:test does not re-compile code intentionally, so you need to do mvn clean to delete \target.Next time you run gatling:test it will re-compile with all the latest changes.
I agree, it should be specified in README. And yes, I must update it with  fresh example. I will do it tomorrow.
Let me know if you have any other questions, sorry it took a while.

Calling this good after README updates in https://github.com/elastic/kibana-load-testing/commit/7b8e4a4267c6172dc4bc9da589d1dc8353185b10


support for foundation zurb

Is there any support for foundation zurb?

What would that mean? Allowing changing of the html classes/ids ?
Formtastic does not support any specific css framework.

Closing due to inactivity. There is https://github.com/mjbellantoni/formtastic-bootstrap.


Support latest django-graphql-jwt

For making PR not so radical, https://github.com/mirumee/saleor/pull/2430 locked django-graphql-jwt to lower than 0.1.13.
In django-graphql-jwt 0.1.13, GraphQLJWTError is renamed to JSONWebTokenError and it does not provide backward compatibility.
Since it actually doesn't break compatibility with saleor and to have new features and fewer bugs, let's support the latest version and lock it to >=0.1.13
Pull Request Checklist

[ ] Privileged views and APIs are guarded by proper permission checks.
[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[ ] Database queries are optimized and the number of queries is constant.
[ ] The changes are tested.
[ ] The code is documented (docstrings, project documentation).
[ ] GraphQL schema and type definitions are up to date.

Not sure why but seemingly unrelated dependency hashes change in this PR.

Because we didn't pin specific version in Pipfile. For example, we only pin Django = ">=1.11", so if there are any new releases such as 2.1.12, pipenv lock will upgrade these packages to the latest version only if they match the requirments in Pipfile.
It has same behaviour with pip-tools.
It looks like there is no way to only upgrade only a specific package but leave others untouched, except you pin all packages with specifc version by ==some_version. But doing that will break the easiness of upgrading pacakges.

pip-tools allows you to upgrade specific dependencies, I kind of expected pipenv to do the same.

Unfortunately, it is not supported yet https://github.com/pypa/pipenv/issues/966. 😢


feat(operator): add sample and sampleTime

sample is equivalent to Rx2/3 sample(observable)
sampleTime is equivalent to Rx2/3 sample(number, scheduler)

closes #178

merged with 9e627891f63f5d259e1e96bdc4f76f04742f90ba


Add example to compare classifiers

This PR adds an example to compare several Riemannian classifiers on low-dimensional synthetic datasets, adapted to SPD matrices from https://scikit-learn.org/stable/auto_examples/classification/plot_classifier_comparison.html
@gabelstein

Display of the current example:

decision functions are bit weird no? for example I am surprised that the kNN decision function is not more irregular.

Thanks, looks good! will include it @qbarthelemy

On closer inspection, this will probably be very confusing, as we can only display two dimensions of the three dimensional space. it could be alleviated with a 3d-plot, but that plot couldn't show decision boundaries properly. I'll look into another way of including an example.

decision functions are bit weird no? for example I am surprised that the kNN decision function is not more irregular.

Good catch! Digging into the code, I have discovered that current version of KNN does not implement predict_proba() : it only inherites from MDM, which has only one center by class.

will include it

Ok, but do not merge this branch in yours. Wait the merge, and rebase your branch on the last master.

On closer inspection, this will probably be very confusing, as we can only display two dimensions of the three dimensional space. it could be alleviated with a 3d-plot, but that plot couldn't show decision boundaries properly. I'll look into another way of including an example.

Previous example plots the decision boundary for the horizontal 2D plane going through the mean value of the third coordinates.
3D decision boundaries are not easy to show, but I try a new display.

I use RandomState, but figures are not reproducible from one run to another.

Good catch for the missing RandomState in make_gaussian_blobs!
The doc is nicely generated, but is it possible to use a different to have a more interpretable example on the 3rd line? See below on the artifact generated by GH Action, the 3rd dataset seems to have only blue class or indecisive probability for the contourf plot. On the 3D example you posted above, the partition of the space seems more conclusive.

I would do it in sklearn using euclidian data. Basically replace the
predict_proba in sklearn and see what works best
in sklearn. Then copy this in PyRiemann

Message ID: @.***>

LGTM
Kudos @qbarthelemy


.form-control  flickers/flashes in OS X Chrome v50

This started happening recently when I updated Chrome for Mac to v50.
Whenever I set .form-control to a select element, I will start flickering when activated. It's really annoying and haven't ever run into this issue before. I made a video so you can see what's going on. https://www.youtube.com/watch?v=Z04pW9Jkgso
The only workaround I found is to disable the transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; property of .form-control for select elements. I've been able to replicate this bug on two more machines.
I might be omitting details so if you need more details about my environment I can provide with no problem.
Thanks!

Whats your complete Chrome and OS X version

@wolfy1339 Chrome: Version 50.0.2661.94 (64-bit). OSX: 10.11.4.

@caroso1222 Your video is private so I can't see it. Please provide a JSFiddle/JSBin. Are you using Bootstrap v3 or v4?

Hi @RyanZim. I'm so sorry, I just disabled the private property of the video. I'm working of the JSFiddle. I'm working with Bootstrap v3.3.6.
Thanks!

Me too, same symptoms. Number of flickers doesn't depend on number of items in dropdown selector. It can vary as I navigate around to other pages, then return. In my Gemfile.lock: twitter-bootstrap-rails (3.2.0). Chrome Version 50.0.2661.94 (64-bit), OSX 10.11.4. Seemed to start around 2w ago. Any pointers on root cause would be appreciated. Off to try the workaround, thanks for that.

BTW, awesome, many thanks for that hint, this has been bugging us for weeks and our team thanks you! Added this to our .css and problem solved!
select.form-control {   transition: none; }

Adding the transition: none override to select tags with form-control fixed it for me. Currently midway through a BS2 -> BS3 upgrade and this was bothering me. Thanks!

Looks like a browser bug to me.
CC: @cvrebert

Definitely a browser bug, although I haven't been able to reproduce with a trivial JS Bin I whipped up.
@caroso1222 Looking forward to seeing your JS Fiddle.

OS: OSX 10.11.4 (15E65)
Browser: Chrome Version 50.0.2661.102 (64-bit)

@martin-walsh JS Bin, jsFiddle, or video please.

https://bugs.chromium.org/p/chromium/issues/detail?id=613885

same issue for me too.
OS: OSX 10.11.3
Browser: Chrome Version 50.0.2661.102 (64-bit)

Has anyone observed this problem on Windows or Linux?

@bryanskene @slgriffiths @nagarakesh4 Could you please make a JS Bin, jsFiddle, or similar that demonstrates the problem? Without a testcase, I can't really file a good bug against Chrome. Thanks in advance.
@vecmezoni That bug seems to be Android-specific, whereas this bug is OS X-specific so far. Though it's possible there could be some relation.

I can test on windows when we get a testcase.

OSX: 11.5 Chrome: 50.0.2661.102 (64-bit) - latest bootstrap and I'm using select2 (which may not apply).  Select flashes twice on open.

@SourceCode We need a live example, not a screenshot. Do you experience this problem on getbootstrap.com?

I've seen this bug outside of Bootstrap and was also able to prevent the flashing by killing the transition. Wasn't able to create a test case though and have a feeling that it may only happen on heavy pages.

If I use it in the most basic example and just a small piece of the code in a fiddle it does not happen but unfortunately in more complex scenarios it does seem to happen (more libraries, more controls, more 'things' happening).
I'm working to isolate it but I am at a conference which is why I could only supply a quick screen capture to illustrate what I and other users are observing.  It could be unrelated to bootstrap - however this is the very first result when searching for this issue in google.  If I locate the cause I will update the thread but that may be some time.

@SourceCode Do you experience this problem on getbootstrap.com?

Filed Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=614838
Please star it, folks.
(Testcases would still be greatly appreciated and very helpful.)

@cvrebert thanks! starred.

I have managed to isolate and reproduce the problem: https://jsfiddle.net/fczbkk/jhdsua5k/

@cvrebert I tried the testcase on Windows and am unable to reproduce there. I'm guessing it's OS X-specific.

@fczbkk You seem to have found a different bug (related to DOM attribute mutations) which also causes the same type of flickering.

The relevant bug for this might be https://crbug.com/608140 , which was fixed as of Chrome 51.0.2704.54.
Can y'all please re-test with up-to-date stable Chrome?

Are we sure it's not the other issue that was reported by @fczbkk? https://crbug.com/616197

We're not completely sure of anything at this point.

Using OSX 10.10.5 (Yosemite) and Chrome 50.0.2661.102 (64-bit)
I DO NOT get the flashing select menu on this page:
https://jsfiddle.net/fczbkk/jhdsua5k/

El Capitan 10.11.5, Chrome Version 51.0.2704.103 (64-bit) I do get the flashing, fwiw.

@ryanguill Could you please post a comment on https://bugs.chromium.org/p/chromium/issues/detail?id=608140 with the same information, to let the Chrome folks know?

I am not able to reproduce with the codepen in that bug, but was able to with the jsfiddle in this one https://bugs.chromium.org/p/chromium/issues/detail?id=616197 - and I have posted there.

@ryanguill The issue that that was duped to (https://bugs.chromium.org/p/chromium/issues/detail?id=614250 ) is supposed to have been fixed in v52. Could you re-test using Chrome Canary?

I just downloaded canary - can confirm that everything looks to be fixed both with that fiddle example and with my personal test case that brought me here.

Going to assume at this point that Chrome 52 has fixed the relevant bugs.
I'll be happy to reopen this if anyone observes the problem in Chrome 52+.


Implement support for LocalDate and OffsetDateTime in RequestInformation

Implements behavior for LocalDate and OffsetDateTime in RequestInformation's getSanitizedValues. Added accompanying test for LocalDate path parameter resolution.
Edit: scope is extended to include LocalTime and PeriodAndDuration.
closes #1583

Marking as draft until we can evaluate extending this issue to tackle time and duration amongst other types.

@microsoft-github-policy-service agree company="VisBook AS"

Updated to include time and duration datatype support (LocalTime and PeriodAndDuration). Also merged upstream changes. The version is now bumped up to 1.5.0 and all tests pass. Let me know if I've missed something.

Thank you for making the changes! Can you also bump std uri template to v2 so we can confirm there's no end to end regression please?
https://github.com/microsoft/kiota-java/blob/bf66598153485fea2442dcf108d00e4ff6b8ab30/components/abstractions/gradle/dependencies.gradle#L11

Yes. Apologies, I missed your earlier question.
It seems this causes an exception in UriTemplateTest.java:32 - this passes parameters directly to StdUriTemplate and will fail.

@espenvis thanks for the information.
I think you can remove the last line in the CSV and the date parameter in the unit test. (make sure you pull beforehand since I've applied formatting to the csv file)

@espenvis thanks for the information. I think you can remove the last line in the CSV and the date parameter in the unit test. (make sure you pull beforehand since I've applied formatting to the csv file)

Yep, that's what I figured. I'll do that.

Test still fails due to a JUnit error of some sort. I'll have a look.

Seems it complained about the change in delimiter. Pushing a fix for that.


controller: Replace UpdateNode spec call when creating the default disk

The node controller is not supposed to change the node spec.
Author: Sheng Yang<EMAIL_ADDRESS>Date:   Thu Oct 31 14:02:53 2019 -0700

    controller: node: Update automatic created disk with `UpdateNode` call

    It's less than ideal. We need to move it out in the future.

Done in https://github.com/longhorn/longhorn-manager/commit/fea5f683cb939359fd7a918116e5f71836e35a51


We need the ability to run a sequence of expressions.

Currently the so called PankuConsole is just REPL, we haven't reached its full potential yet.
There should be something we can run a sequence of expressions with basic flow controls.
Or even further, a runtime gdscript code interpreter to make it more powerful. (This is a pretty tough task, but maybe we can learn something from this project)

It's extremely tough to run user GDScript steadily.
The solution should be creating an assembly-like vm that it's basic commands are expressions.


Backport "HBASE-25770 Http InfoServers should honor gzip encoding when requested (#3159)" to branch-2.2

Signed-off-by: Duo Zhang<EMAIL_ADDRESS>Signed-off-by: Josh Elser<EMAIL_ADDRESS>

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
7m 39s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ branch-2.2 Compile Tests _

+0 :ok:
mvndep
0m 16s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
3m 26s
branch-2.2 passed

+1 :green_heart:
compile
1m 18s
branch-2.2 passed

+1 :green_heart:
checkstyle
1m 40s
branch-2.2 passed

+1 :green_heart:
shadedjars
4m 24s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 54s
branch-2.2 passed

+0 :ok:
spotbugs
3m 27s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
4m  4s
branch-2.2 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 15s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
3m  9s
the patch passed

+1 :green_heart:
compile
1m 19s
the patch passed

+1 :green_heart:
javac
1m 19s
the patch passed

-1 :x:
checkstyle
0m 16s
hbase-http: The patch generated 1 new + 43 unchanged - 0 fixed = 44 total (was 43)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
xml
0m  1s
The patch has no ill-formed XML file.

+1 :green_heart:
shadedjars
4m 27s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
hadoopcheck
29m 56s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2 2.10.0 or 3.1.2 3.2.1.

+1 :green_heart:
javadoc
0m 57s
the patch passed

+1 :green_heart:
findbugs
4m 26s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
1m 18s
hbase-http in the patch passed.

-1 :x:
unit
205m 48s
hbase-server in the patch failed.

+1 :green_heart:
asflicense
1m  6s
The patch does not generate ASF License warnings.

285m 30s

Reason
Tests

Failed junit tests
hadoop.hbase.client.TestRestoreSnapshotFromClientSimple

hadoop.hbase.master.assignment.TestCloseRegionWhileRSCrash

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3170/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3170

Optional Tests
dupname asflicense javac javadoc unit shadedjars hadoopcheck xml compile spotbugs findbugs hbaseanti checkstyle

uname
Linux 74fc05e6c90f 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 GNU/Linux

Build tool
maven

Personality
/home/jenkins/jenkins-home/workspace/Base-PreCommit-GitHub-PR_PR-3170/out/precommit/personality/provided.sh

git revision
branch-2.2 / 0fc18a9056

Default Java
Oracle Corporation-1.8.0_282-b08

checkstyle
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3170/1/artifact/out/diff-checkstyle-hbase-http.txt

unit
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3170/1/artifact/out/patch-unit-hbase-server.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3170/1/testReport/

Max. process+thread count
2436 (vs. ulimit of 12500)

modules
C: hbase-http hbase-server U: .

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3170/1/console

versions
git=2.20.1 maven=3.6.3 findbugs=3.1.11

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


Layer features

Problem:

User have to close the layer configuration panel manually after creating a new layer or updating layer's options
Developers have to define configMode again and again

Users open plugin w/o base map image.
Default layer will be auto-generated after adding defaults in visConfig in createMapsExplorerDashboardsVisTypeDefinition.

User have to manually close the layer configuration panel after creating/updating layer
Layer configuration panel can't be closed after click discard button

Description:

Redefine the onClick() for Create/Update button
Create ConfigMode
Implement useMemo() to initialize base road map during the initialization in MapsExplorerEditor
Set ConfigLayerId to undefined in executing applyChanges() to close the layer configuration panel

Remove Delete button
Close layer configuration panel after clicking discard button
Display "Discard" on button only when user want to close a un-edited layer configuration panel, otherwise, display "Cancel"

Issues Resolved:
#12 #14
Image:
https://user-images.githubusercontent.com/47327467/176353174-eba870ed-602c-43cd-a774-23074f1189a6.mov
Check List

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Duplicate to #13


It is possible to scroll the page with full modal

I think for every kind of modal, if one is open, the body element should not be scrollable.


Improve the script editor's executing line highlight

Godot version
3.3.2
System information
Windows 10
Issue description
Try and guess which line is the executing one :)
Godot:

VS Code

The colors on the arrow in Godot's is really close to the breakpoint color, and for people who are color blind it's probably pretty much impossible to tell.
Steps to reproduce
Trigger a breakpoint
Minimal reproduction project
n/a

In master b5b633ff5, it looks like this:

This will require different implementations in 3.x and master.

In master b5b633f, it looks like this:

That does look a little better simply because it's bigger, but it's still not that easy to distinguish. I think some kind of shape around the breakpoint would be good (maybe a square, or maybe it could be a triangle and like vs code it could shrink the breakpoint's circle to fit inside), and also a more vibrant color.

Still reproducible as of 4.3.dev cae759949: