RegressionTests.testBadRequestFollowingGoodRequest fails with #78

With the router invocation moved to a DispatchQueue as in #78 we see a new failure in RegressionTests.testBadRequestFollowingGoodRequest. A work-around for this failure was included in #78.
Initially, with the changes for #78, the test first started failing with a precondition failure at HTTPServerPipelineHandler.swift, line 108. This was fixed in swift-nio through this PR. After that, the same test starts failing with no activity on the client.
The test kicks off an HTTP server and makes a good request (GET /) followed by a bad request to an invalid route (GET #/). The first request has a normal response and the second one has an error response triggered from NIOHTTP1.HTTPServerProtocolErrorHandler. We only check for a badRequest response from the second request. With #78 we seem to be receiving neither of the responses at the client.
I printed some diagnostics as suggested by @weissi using a ChannelHandler. I added this to the server pipeline:
final class PrintEverythingHandler: ChannelDuplexHandler {
    typealias OutboundIn = HTTPServerResponsePart
    typealias InboundIn = HTTPServerRequestPart

    func channelRead(ctx: ChannelHandlerContext, data: NIOAny) {
        print("Server <- \(self.unwrapInboundIn(data))")
        ctx.fireChannelRead(data)
    }

    func write(ctx: ChannelHandlerContext, data: NIOAny, promise: EventLoopPromise<Void>?) {
        print("Server -> \(self.unwrapOutboundIn(data))")
        ctx.write(data, promise: promise)
    }
}

... and this to the client pipeline
final class PrintEverythingHandler: ChannelDuplexHandler {
    typealias OutboundIn = HTTPClientRequestPart
    typealias InboundIn = HTTPClientResponsePart

    func channelRead(ctx: ChannelHandlerContext, data: NIOAny) {
        print("Client <- \(self.unwrapInboundIn(data))")
        ctx.fireChannelRead(data)
    }

    func write(ctx: ChannelHandlerContext, data: NIOAny, promise: EventLoopPromise<Void>?) {
        print("Client -> \(self.unwrapOutboundIn(data))")
        ctx.write(data, promise: promise)
    }
}

Server <- means "server received" and Server -> means the "server sent". Client <- and Client -> have similar meanings.
Now, I see two types of intermittent problems running RegressionTests.testBadRequestFollowingGoodRequest
Problem 1
Client -> head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> end(nil)

Client -> head(HTTPRequestHead { method: GET, uri: "#/", version: HTTP/1.1, headers: [] })
Client -> end(nil)

Server <- head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Server <- end(nil)

Server -> head(HTTPResponseHead { version: HTTP/1.1, status: notFound, headers: [("Date", "Sun, 26 Aug 2018 18:37:21 GMT"), ("Content-Type", "text/plain"), ("Connection", "Keep-Alive"), ("Keep-Alive", "timeout=60.0"), ("Content-Length", "14")] })
Server -> body(NIO.IOData.byteBuffer(ByteBuffer { readerIndex: 0, writerIndex: 14, readableBytes: 14, capacity: 16, slice: _ByteBufferSlice(upperBound: 16, _begin: 0), storage: 0x00007f6be0027400 (16 bytes)}))
Server -> end(nil)

So, the server sends a response to the first request, no error response to the second request and nothing is received at the client.
Problem 2
Client -> head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> end(nil)

Client -> head(HTTPRequestHead { method: GET, uri: "#/", version: HTTP/1.1, headers: [] })
Client -> end(nil)

Server <- head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Server <- end(nil)

Here, the server send neither of the responses.
Expected output
Client -> head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> end(nil)

Client -> head(HTTPRequestHead { method: GET, uri: "#/", version: HTTP/1.1, headers: [] })
Client -> end(nil)

Server <- head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Server <- end(nil)
Server -> head(HTTPResponseHead { version: HTTP/1.1, status: notFound, headers: [("Connection", "Keep-Alive"), ("Content-Type", "text/plain"), ("Date", "Sun, 26 Aug 2018 18:38:38 GMT"), ("Keep-Alive", "timeout=60.0"), ("Content-Length", "14")] })
Server -> body(NIO.IOData.byteBuffer(ByteBuffer { readerIndex: 0, writerIndex: 14, readableBytes: 14, capacity: 16, slice: _ByteBufferSlice(upperBound: 16, _begin: 0), storage: 0x00007f2a1c02d030 (16 bytes)}))
Server -> end(nil)

HTTPServerProtocolErrorHandler returning an error response

Client <- head(HTTPResponseHead { version: HTTP/1.1, status: notFound, headers: [("Connection", "Keep-Alive"), ("Content-Type", "text/plain"), ("Date", "Sun, 26 Aug 2018 18:38:38 GMT"), ("Keep-Alive", "timeout=60.0"), ("Content-Length", "14")] })

Client <- body(ByteBuffer { readerIndex: 0, writerIndex: 14, readableBytes: 14, capacity: 14, slice: _ByteBufferSlice(upperBound: 173, _begin: 159), storage: 0x00007f2a14031c60 (1024 bytes)})
Client <- end(nil)

Client <- head(HTTPResponseHead { version: HTTP/1.1, status: badRequest, headers: [("Connection", "close"), ("Content-Length", "0")] })
Client <- end(nil)

Here, the server sent a normal response followed by an error response and both of them were received on the client.
If the two requests are separated by a time gap, we always get the expected output. This is how we are currently working around the problem.

@weissi Can you please suggest how I could proceed debugging this failure? I have run out of diagnostic options.

@pushkarnk I just ran that test case about 100 times on top of this (https://github.com/apple/swift-nio/pull/597) branch and it didn't fail a single time. Is this fixed with that NIO PR?

Based on some inputs from @weissi I added the channelInactive and errorCaught callbacks to the PrintEverythingHandlers and this is the output from the two kinds of failures I see:
** Failure kind 1 **
Client -> head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> end(nil)
Client -> head(HTTPRequestHead { method: GET, uri: "#/", version: HTTP/1.1, headers: [] })
Client -> end(nil)
Server <- head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Server <- end(nil)
Server: channel inactive
Client: channel inactive
Server -> head(HTTPResponseHead { version: HTTP/1.1, status: notFound, headers: [("Content-Type", "text/plain"), ("Date", "Wed, 29 Aug 2018 09:17:59 GMT"), ("Connection", "Keep-Alive"), ("Keep-Alive", "timeout=60.0"), ("Content-Length", "14")] })
Server -> body(NIO.IOData.byteBuffer(ByteBuffer { readerIndex: 0, writerIndex: 14, readableBytes: 14, capacity: 16, slice: _ByteBufferSlice(upperBound: 16, _begin: 0), storage: 0x00007f5a5402c6c0 (16 bytes)}))
Server -> end(nil)
Server -> error response from HTTPServerProtocolErrorHandler
Server: PrintEverythingHandler caught invalid URL

** Failure type 2 **
Client -> head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> end(nil)
Client -> head(HTTPRequestHead { method: GET, uri: "#/", version: HTTP/1.1, headers: [] })
Client -> end(nil)
Server <- head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Server <- end(nil)
Server: channel inactive
Client: channel inactive
Fatal error: No channel available to write.: file /home/Kitura-NIO/Sources/KituraNet/HTTP/HTTPServerResponse.swift, line 71

** Passing run **
Client -> head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> end(nil)
Server <- head(HTTPRequestHead { method: GET, uri: "/", version: HTTP/1.1, headers: [] })
Client -> head(HTTPRequestHead { method: GET, uri: "#/", version: HTTP/1.1, headers: [] })
Server <- end(nil)
Client -> end(nil)
Server -> head(HTTPResponseHead { version: HTTP/1.1, status: notFound, headers: [("Connection", "Keep-Alive"), ("Keep-Alive", "timeout=60.0"), ("Content-Type", "text/plain"), ("Date", "Wed, 29 Aug 2018 08:40:33 GMT"), ("Content-Length", "14")] })
Server -> body(NIO.IOData.byteBuffer(ByteBuffer { readerIndex: 0, writerIndex: 14, readableBytes: 14, capacity: 16, slice: _ByteBufferSlice(upperBound: 16, _begin: 0), storage: 0x00007f32f0027b50 (16 bytes)}))
Server -> end(nil)
Server -> error response from HTTPServerProtocolErrorHandler
Server: PrintEverythingHandler caught invalid URL
Server: channel inactive
Client <- head(HTTPResponseHead { version: HTTP/1.1, status: notFound, headers: [("Connection", "Keep-Alive"), ("Keep-Alive", "timeout=60.0"), ("Content-Type", "text/plain"), ("Date", "Wed, 29 Aug 2018 08:40:33 GMT"), ("Content-Length", "14")] })
Client <- body(ByteBuffer { readerIndex: 0, writerIndex: 14, readableBytes: 14, capacity: 14, slice: _ByteBufferSlice(upperBound: 173, _begin: 159), storage: 0x00007f32e4031c60 (1024 bytes)})
Client <- end(nil)
Client <- head(HTTPResponseHead { version: HTTP/1.1, status: badRequest, headers: [("Connection", "close"), ("Content-Length", "0")] })
Client <- end(nil)
Client: channel inactive

right, so the channel gets shut down on parser error. That happens because of this. Which just shuts the connection immediately but the HTTPServerProtocolErrorHandler hasn't even received that request yet as it might be pipelined.
In other words: If you pipeline an HTTP request that doesn't even parse, then the connection will be closed as soon as the parser hits this error. I think we should change that and have the later handlers in the pipeline do that whenever they feel like it. It might be a bit tricky though as all further data will trigger further errors. I'll file a NIO issue to discuss this.
For now, would you be happy making your test not use HTTP pipelining? Browsers don't use pipelining anyway...

@ianpartridge it's only about parser errors though, right? The only situation in which we close the connection (too?) early is when there's pipelining and a subsequent request isn't even a valid HTTP request.

Yep that's right. I don't think it's essential for this specific test to use pipelining at this time.

@ianpartridge cool, feel free to comment on https://github.com/apple/swift-nio/issues/600 and say that you want the fix to be prioritised. I'm pretty sure we could release a non-default enableAutomaticClosingOnError: false option to stop this from happening.

This issue has been fixed per https://github.com/apple/swift-nio/issues/600 through https://github.com/apple/swift-nio/pull/837 and https://github.com/apple/swift-nio/pull/814
I'll close this issue now. Please reopen if this failure is seen again.


Outline thumbnail not drawing on Linux with hi-res display

On Archi 4.5.1, 4.6, 4.7
Linux Mint running in VMWare Fusion with display set to hi-res.
With this configuration, the Outline Thumbnail throws an "Graphic Disposed" exception.
This is because when an Image is drawn at hi-res the Image#destroy() method is called which causes its owning org.eclipse.swt.graphics.GC to be disposed.
So the org.eclipse.draw2d.archi.part.Thumbnail can no longer draw on that GC
This is from the Linux version of org.eclipse.swt.graphics.Image:
void destroy() {
	if (memGC != null) memGC.dispose();
	...
	memGC = null;
}

memGC is our GC instance! Thanks a lot.

I've spent some time investigating this and I can't fix it.
Note - the same thing happens with Modelio's tool as they also use the Draw2d thumbnail component (in their case the outcome is worse because an infinite series of error dialogs appear...)
For Archi, I'll add a check to catch the exception so it does not write to the error log.
Unfortunately, it means that the Outline thumbnail does not work for the Linux version of Archi with a hi-res display.
This is why I am opening this issue in case someone wonders why, which I will also close as "won't fix".
If any Eclipse SWT gurus would like to help, please do!

TBH, the Draw2D Thumbnail class has cost me many days of frustration...

Closing this as #CANTFIX #WONTFIX #FUCKIT

Opening this up again, because....

Opening this up again, because....

OCD...

...maybe. ;-)

...because I hate to be beaten by something like this.
I have a workaround for it now. But it's not satisfying because of the underlying cause which only happen on Linux where the device scaling is > 100.
Under those conditions, the Image's destroy method is called which disposes of its GC which happens to belong to the Thumbnail. So if that happens we create a new GC and also create other instances as per the Mac fix.
I don't know why this should be and it might be an Eclipse Linux SWT bug. Or it might not.

I'll close this now. Beer is the reward.

This is caused by an underlying issue on Linux SWT:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=563253

At least this had a good outcome. The underlying issue on GTK has now been fixed:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=563253


Determine if moving forward w/ pro version of goreleaser is needed

Before releasing https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.68.0, a change was made in the release process to utilize goreleaser's pro feature to split/merge the build process.
I'm putting an issue here to decide if using the pro version is the best way to move forward, if so, we'll need to get a license purchased for the project.

I am not very comfortable with the idea of using goreleaser pro. I think two important goals/ideals for the release process are that

anyone can know exactly what happened in the release process
anyone is able to easily reproduce a given release (minus actually pushing to the registries/releases page of course)

Goreleaser pro is closed-source, which IMO makes (1) much more difficult and it is a paid product, which makes (2) also much more difficult. Ultimately we have to trust someone (in our case Github) for infra, but if we can avoid having to trust in more software I think it would be for the best.

A bit of history: I started using goreleaser as it seemed a good option to build and release this project. Once I added more distributions (contrib), I came across a limitation, which could be addressed using a specific feature of the pro version. I thought it was fair to require a pro version for that, as the feature was quite "enterprisey" (I can't recall 100% what it was right now). I requested a temporary key from the project's author, to ensure that I could get the problem solved and that the final solution would be acceptable.
Once I determined it was a good solution despite the requirement to have a pro key, I requested the CNCF to acquire a key, which they did. I tried to find the ticket where I requested it under the service desk, but couldn't. The paper trail I have shows that the license was acquired in late October 2021.


chore(deps): update dev dependencies

This PR contains the following updates:

Package
Type
Update
Change

httpx (changelog)
dev-dependencies
minor
^0.19.0 -> ^0.20.0

pytest-asyncio
dev-dependencies
minor
^0.15.1 -> ^0.16.0

types-PyYAML
dev-dependencies
patch
^5.4.10 -> ^5.4.12

types-setuptools
dev-dependencies
patch
^57.4.0 -> ^57.4.2

Release Notes

encode/httpx
v0.20.0
Compare Source
The 0.20.0 release adds an integrated command-line client, and also includes some
design changes. The most notable of these is that redirect responses are no longer
automatically followed, unless specifically requested.
This design decision prioritises a more explicit approach to redirects, in order
to avoid code that unintentionally issues multiple requests as a result of
misconfigured URLs.
For example, previously a client configured to send requests to http://api.github.com/
would end up sending every API request twice, as each request would be redirected to https://api.github.com/.
If you do want auto-redirect behaviour, you can enable this either by configuring
the client instance with Client(follow_redirects=True), or on a per-request
basis, with .get(..., follow_redirects=True).
This change is a classic trade-off between convenience and precision, with no "right"
answer. See discussion #1785 for more
context.
The other major design change is an update to the Transport API, which is the low-level
interface against which requests are sent. Previously this interface used only primitive
datastructures, like so...
(status_code, headers, stream, extensions) = transport.handle_request(method, url, headers, stream, extensions)
try
    ...
finally:
    stream.close()

Now the interface is much simpler...
response = transport.handle_request(request)
try
    ...
finally:
    response.close()

Changed

The allow_redirects flag is now follow_redirects and defaults to False.
The raise_for_status() method will now raise an exception for any responses
except those with 2xx status codes. Previously only 4xx and 5xx status codes
would result in an exception.
The low-level transport API changes to the much simpler response = transport.handle_request(request).
The client.send() method no longer accepts a timeout=... argument, but the
client.build_request() does. This required by the signature change of the
Transport API. The request timeout configuration is now stored on the request
instance, as request.extensions['timeout'].

Added

Added the httpx command-line client.
Response instances now include .is_informational, .is_success, .is_redirect, .is_client_error, and .is_server_error
properties for checking 1xx, 2xx, 3xx, 4xx, and 5xx response types. Note that the behaviour of .is_redirect is slightly different in that it now returns True for all 3xx responses, in order to allow for a consistent set of properties onto the different HTTP status code types. The response.has_redirect_location location may be used to determine responses with properly formed URL redirects.

Fixed

response.iter_bytes() no longer raises a ValueError when called on a response with no content. (Pull #1827)
The 'wsgi.error' configuration now defaults to sys.stderr, and is corrected to be a TextIO interface, not a BytesIO interface. Additionally, the WSGITransport now accepts a wsgi_error confguration. (Pull #1828)
Follow the WSGI spec by properly closing the iterable returned by the application. (Pull #1830)

pytest-dev/pytest-asyncio
v0.16.0
Compare Source

Configuration
📅 Schedule: "every 1 month on Monday before 5am" (UTC).
🚦 Automerge: Disabled due to failing status checks.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box.

This PR has been generated by Renovate Bot.

Branch automerge failure
This PR was configured for branch automerge, however this is not possible so it has been raised as a PR instead.

Branch has one or more failed status checks


Update Express 5 branch with latest updates from 4.18.x

Hello Express Team!
I was comparing the branches from v5 which has the updates from v4.17.3 but which is a bit far from the latest version.
Is there a plan to keep the beta/next version in sync?
Thanks.

Hello, and you for your issue. Yes, the changes will be merged with the rc release coming up, which has the final router, send, and body parser. I hope that helps! We don't merge it until we are cutting out the release, just to make sure we include all the latest 4.x changes at the time of the 5 release.

I'll add that the plan is to get the rc released within this month, as the final bits are being done on the dependencies now. There is a slight delay as we have an open security report for 4.x that is taking priority at the moment, however. I am working with the reporter to determine if there is an actual issue or not at the moment.

@dougwilson thank you for your hard work. Do you think an updated 5.0 release will come soon? I'd like to use 5.0 with the qs issues that were fixed in 4.18.2

Is there anything I can do to help this happen?  I'd be content with a v5.0.0-beta.2 release if that could come quicker than a full RC.  I can try to put together a PR that merges in recent changes.  I don't pretend to be intimately familiar with which patches in the 4.x branch are appropriate for 5.x, but with a small amount of direction, I'd be happy to do what I can to speed things along.

+1 to the above comment; we're using 5.0.0 but want to upgrade to resolve the qs vulnerability https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24999

Hey everyone, sorry I didn't forget about this, just had an emergency and had to step away to take care of some things. I am back now and got almost everything done before I left, including the body-parser 2.x with the updated qs which would be needed, so I'll be hard pushing this to completion in the next 1-2 days here ❤

I took a crack at merging master into the 5.0 branch, resolving conflicts as best I could.  Would it be useful to submit this as a pull request?  Anything else I can do to make this happen?

Hi @gilly3 thank you for that! I already got all the merging done and conflicts, and just working on writing up the change log of everything new and changed getting added in to 5.x from the merge. I should have that done shortly. There is a couple more changes that need to land on on the 4.x branch and then a new 4.x and 5.x release will get pushed out here, ideally this week. The body-parser change was released and put on to master since the last reply above and that sets up the 4.18.3 release that will be the 4.x stepping stone for the new 5.x release, if that makse sense.

Any updates on this?

Yes, some great news. Bad news is it has been almost non stop false vulnerability reporting consuming so much of my time to explain how express and even node.js works (sometimes eveb http itself!) in order to keep bad cves being filed against express and middlewares which has been so tiring. Seems like an endless fight, as peope want to have their name on a cve for a large project at all costs without care or knowledge of the project. The good news is that I have managed to get things done inbetween that and we gonna have a final 5 release done no more betas and stuff so people can just start using. I'm posting from my phone at work, so will follow up more when I get home ❤

I was reading some other bugs describing that, it sounds quite painful. I guess powering a large part of the interwebs has downsides. :) I will be at the ready to put it through some paces if and when you need eyes.


Empty result when debugtype is 'embedded'

First of all I would like to say that this is an awesome project. We have been waiting a long time for a code coverage story on .Net Core. 👍
I noticed today that if I set the debugtype to 'embedded' the results comes out empty.
<DebugType>embedded</DebugType>

Is this a known issue?

The coverlet logic only works with assemblies that have PDB files. Will need to update it to look for debug information in multiple places

@tonerdo I think mono.cecil actually supports embedded pdb's 👍

@seesharper can you tell me if this issue existing yet?Try last version please we support embedded and non embedded pdb at the moment.


Catch exceptions raised by Controller.factory()

What do these changes do?
Implement mechanism to catch Exceptions raised by factory().
Are there changes in behavior for the user?
User must be aware that it is now possible for Controller.start() to raise Exception caused by other than host:port conflict
Related issue number
Closes #212
Checklist

[x] I think the code is well written
[x] Unit tests for the changes exist
[x] tox testenvs have been executed in the following environments:

[x] Windows 10 (via PyCharm): (ALL)
[x] Windows 10 (via PSCore 7.0.3): (ALL)
[x] WIndows 10 (via Cygwin): qa,py36-{nocov,cov}
[x] FreeBSD 12.1 on VBox: (ALL) + pypy3-nocov
[x] Ubuntu 18.04 on VBox: (ALL) + pypy3-{nocov,cov,diffcov}
[x] Ubuntu 18.04 on WSL 1.0: (ALL) + pypy3-{nocov,cov,diffcov}
[x] Ubuntu 20.04 on VBox: (ALL) + pypy3-{nocov,cov,diffcov}

[x] Documentation reflects the changes
[x] Add a news fragment into the NEWS.rst file

This pull request introduces 1 alert when merging df48a5a into 3b10324 - view on LGTM.com
new alerts:
* 1 for Default version of SSL/TLS may be insecure

Ugh, it was just for internal check -_-
Okay, let's figure out how to fix this.

Okay, w.r.t. this LGTM.com alert
This is difficult.
The linked LGTM.com documentation for that alert specifies that, and I quote:

Both of the cases above should be updated to use a secure protocol instead, for instance by specifying ssl_version=PROTOCOL_TLSv1_1 as a keyword argument.

The Big Problem™ is that the Python documentation for ssl.PROTOCOL_*, stated quite clearly, and I quote:

Deprecated since version 3.6: OpenSSL has deprecated all version specific protocols. Use the default protocol PROTOCOL_TLS with flags like OP_NO_SSLv3 instead.

PLUS the Python documentation for ssl.SSLContext clearly says, and I partially quote:

Changed in version 3.6: The context is created with secure default values. The options ... OP_NO_SSLv2 (except for PROTOCOL_SSLv2), and OP_NO_SSLv3 (except for PROTOCOL_SSLv3) are set by default.

So it's a clear case that that particular rule of LGTM.com is not up-to-date especially w.r.t. Python 3.6, which we had specified as the minimum supported Python version.
I'm trying to figure out how to continue further on this PR...

Ugh, the "intermittent coverage fail" again ... let me cherry-pick from PR #211 to fix this ...

I give up. Can someone disable LGTM analysis of JavaScript for aiosmtpd?

I'll test these changes on my 7 test systems, and if they all passes, I'll undraft this.

I hope this can be merged soon... I have some PR-to-be (i.e., still on my laptop/repo and not turned into a PR), that kind of relies on this PR...

This has been passing checks and waiting review for almost 2 weeks; I'm merging within 24h.


Add network policy to lock this down by default.

Would rather not have an open SMTP relay - this way we can only allow SMTP connections from whatever namespace we decide is allowed.

This works as designed.


Add check for omim gene entries used as xrefs

Replaces https://github.com/monarch-initiative/mondo/pull/7984 since too many changes in master at this point.
See https://github.com/monarch-initiative/mondo/issues/7983 for context. Should also pass now since https://github.com/monarch-initiative/mondo/pull/8011.

Nico or Sabrina - can you review and merge this once approved?

It's the same SPARQL query as the original PR. It's a new PR since there were too many changes in master in the time to sort out what needed to be updated in mondo-edit.obo to make this test pass.


Does a lookupObject() request need to be signed with a key?

I noticed that the function lookupObject() in Fedify cannot look up the handle<EMAIL_ADDRESS>whereas Mastodon can do that successfully.
I found out that the webfinger request succeeds but the request for the actor URL fails.
On the commandline, I could reproduce this with curl:
curl 'https://threads.net/.well-known/webfinger?resource=acct%3Arosiesherry%40threads.net'
{"links":[{"href":"https://threads.net/ap/users/17841400229440049/","rel":"self","type":"application/activity+json"},{"href":"https://www.threads.net/<EMAIL_ADDRESS>
curl -H "Accept: application/activity+json" https://threads.net/ap/users/17841400229440049/
{"success":false,"error":"Not found"}

From within Mastodon, it works: When I enter<EMAIL_ADDRESS>into the search box, I can find the account and follow it.
What can I do to make lookupObject() work?

Threads require authorized fetch:
$ fedify lookup<EMAIL_ADDRESS>✔ Looking up the object...
Failed to fetch the object.
It may be a private object.  Try with -a/--authorized-fetch.

$ fedify lookup --authorized-fetch<EMAIL_ADDRESS>✔ Looking up the object...
Person {
  id: URL "https://threads.net/ap/users/17841400229440049/",
  name: "Rosie Sherry",
  icon: Image {
    url: URL "https://scontent-ssn1-1.cdninstagram.com/v/t51.2885-19/357895950_1476536013157146_3785762587441170856_n.jpg?_nc_cat=101&ccb=1-7&_nc_sid=fcb8ef&_nc_ohc=e24viTQ-7BwQ7kNvgGpeQYm&_nc_ht=scontent-ssn1-1.cdninstagram.com&oh=00_AYBVvsvyKQVe2CXtG5CnM2A-PUNeczeRzXYoSh6ZRUdRxQ&oe=66D3B307"
  },
  summary: "
Living life differently.
💰 Founder @ministryoftesting
❤ Community building
♾ AuDHD
🤪 5x mother
🫶 Home educator
🇬🇧 Brighton, UK
",
  url: URL "https://threads.net/@rosiesherry/",
  preferredUsername: "rosiesherry",
  publicKey: CryptographicKey {
    id: URL "https://threads.net/ap/users/17841400229440049/#main-key",
    owner: URL "https://threads.net/ap/users/17841400229440049/",
    publicKey: CryptoKey {
      type: "public",
      extractable: true,
      algorithm: {
        name: "RSASSA-PKCS1-v1_5",
        modulusLength: 2048,
        publicExponent: Uint8Array(3) [ 1, 0, 1 ],
        hash: { name: "SHA-256" }
      },
      usages: [ "verify" ]
    }
  },
  inbox: URL "https://threads.net/ap/users/17841400229440049/inbox/",
  outbox: URL "https://threads.net/ap/users/17841400229440049/outbox/",
  following: URL "https://threads.net/ap/users/17841400229440049/following/",
  followers: URL "https://threads.net/ap/users/17841400229440049/followers/",
  endpoints: Endpoints { sharedInbox: URL "https://threads.net/ap/inbox/" }
}

So, you need to pass an authenticated document loader to lookupObject().  From Looking up remote objects section in the docs:

Some objects require authentication to look up, such as a Note object with a visibility of followers-only.  In such cases, you need to use the Context.getDocumentLoader() method to get an authenticated DocumentLoader object.  The lookupObject() function takes the documentLoader option to specify the method to fetch the remote object:
const documentLoader = await ctx.getDocumentLoader({ handle: "john" });
const note = await lookupObject("...", { documentLoader });

See the Getting an authenticated DocumentLoader section for details.

Works, thank you!


Import the PhantomJS env from the Scala.js core repository.

This is the initial import of the PhantomJS env and its sbt plugin from the Scala.js core repository. The history of this commit reflects the entire history of relevant files from the core repo, filter-branch'ed to appear as if they had always been in this repo. This commit adds the specific setup of the build and tests.
The history was obtained as follows, starting from commit https://github.com/scala-js/scala-js/commit/f21e7f5ea652fe4a186f1ecd8c0070fbb80edc80 of the core repo.
First, we identified all the paths where relevant files have lived in the past, through renamings along their history. This is the list:
js-envs/src/test/scala/org/scalajs/jsenv/test/RetryingComJSEnvTest.scala
js-envs-test-suite/src/test/scala/org/scalajs/jsenv/test/RetryingComJSEnvTest.scala
phantomjs-env/src/test/scala/org/scalajs/jsenv/phantomjs/RetryingComJSEnvTest.scala

js-envs/src/main/scala/org/scalajs/jsenv/RetryingComJSEnv.scala
phantomjs-env/src/main/scala/org/scalajs/jsenv/phantomjs/RetryingComJSEnv.scala

sbt-plugin/src/test/scala/scala/scalajs/sbtplugin/test/env/PhantomJSTest.scala
js-envs/src/test/scala/org/scalajs/jsenv/test/PhantomJSTest.scala
js-envs-test-suite/src/test/scala/org/scalajs/jsenv/test/PhantomJSTest.scala
phantomjs-env/src/test/scala/org/scalajs/jsenv/phantomjs/PhantomJSTest.scala

js-envs-test-suite/src/test/scala/org/scalajs/jsenv/test/PhantomJSWithCustomInitFilesTest.scala
phantomjs-env/src/test/scala/org/scalajs/jsenv/phantomjs/PhantomJSWithCustomInitFilesTest.scala

sbt-plugin/src/main/scala/scala/scalajs/sbtplugin/env/phantomjs/*
js-envs/src/main/scala/org/scalajs/jsenv/phantomjs/*
phantomjs-env/src/main/scala/org/scalajs/jsenv/phantomjs/*

phantomjs-sbt-plugin/src/main/scala/org/scalajs/jsenv/phantomjs/sbtplugin/PhantomJSEnvPlugin.scala

sbt-plugin-test/build.sbt
sbt-plugin-test/jetty9/src/main/resources/test.txt
sbt-plugin-test/project/Jetty9Test.scala
sbt-plugin-test/project/build.sbt

Based on that, we filter-branch'ed to keep only those files, using the following incantation, inspired by http://stackoverflow.com/a/6006679/1829647:
git filter-branch \
    --prune-empty \
    --index-filter '
  git ls-tree -z -r --name-only --full-tree $GIT_COMMIT \
    | grep -z -v "^js-envs/src/test/scala/org/scalajs/jsenv/test/RetryingComJSEnvTest.scala$" \
    | grep -z -v "^js-envs-test-suite/src/test/scala/org/scalajs/jsenv/test/RetryingComJSEnvTest.scala$" \
    | grep -z -v "^phantomjs-env/src/test/scala/org/scalajs/jsenv/phantomjs/RetryingComJSEnvTest.scala$" \
    | grep -z -v "^js-envs/src/main/scala/org/scalajs/jsenv/RetryingComJSEnv.scala$" \
    | grep -z -v "^phantomjs-env/src/main/scala/org/scalajs/jsenv/phantomjs/RetryingComJSEnv.scala$" \
    | grep -z -v "^sbt-plugin/src/test/scala/scala/scalajs/sbtplugin/test/env/PhantomJSTest.scala$" \
    | grep -z -v "^js-envs/src/test/scala/org/scalajs/jsenv/test/PhantomJSTest.scala$" \
    | grep -z -v "^js-envs-test-suite/src/test/scala/org/scalajs/jsenv/test/PhantomJSTest.scala$" \
    | grep -z -v "^phantomjs-env/src/test/scala/org/scalajs/jsenv/phantomjs/PhantomJSTest.scala$" \
    | grep -z -v "^js-envs-test-suite/src/test/scala/org/scalajs/jsenv/test/PhantomJSWithCustomInitFilesTest.scala$" \
    | grep -z -v "^phantomjs-env/src/test/scala/org/scalajs/jsenv/phantomjs/PhantomJSWithCustomInitFilesTest.scala$" \
    | grep -z -v "^sbt-plugin/src/main/scala/scala/scalajs/sbtplugin/env/phantomjs/" \
    | grep -z -v "^js-envs/src/main/scala/org/scalajs/jsenv/phantomjs/" \
    | grep -z -v "^phantomjs-env/src/main/scala/org/scalajs/jsenv/phantomjs/" \
    | grep -z -v "^phantomjs-sbt-plugin/src/main/scala/org/scalajs/jsenv/phantomjs/sbtplugin/PhantomJSEnvPlugin.scala$" \
    | grep -z -v "^sbt-plugin-test/build.sbt$" \
    | grep -z -v "^sbt-plugin-test/jetty9/src/main/resources/test.txt$" \
    | grep -z -v "^sbt-plugin-test/project/Jetty9Test.scala$" \
    | grep -z -v "^sbt-plugin-test/project/build.sbt$" \
    | xargs -0 -r git rm -r --cached
  ' HEAD

That gave the result visible in https://github.com/sjrd/scala-js-env-phantomjs/tree/import-from-core-step1. Unfortunately, --prune-empty does not prune empty merge commits. We fixed that using the solution found in http://stackoverflow.com/a/38420284/1829647:
git filter-branch --prune-empty --parent-filter 'sed "s/-p //g" | xargs -r git show-branch --independent | sed "s/\</-p /g"'

giving https://github.com/sjrd/scala-js-env-phantomjs/tree/import-from-core-step2
Now, we had a clean history, except that it was orphaned wrt. the Initial commit of this repository, which is 51c45de4e5079a999abe964bc0e06dadcac8e789. To have a nice PR with a history that appears to have come from the Initial commit, we reattached the first meaningful commit to the Initial commit using:
git filter-branch --parent-filter 'sed "s/ca1d58a31e27756c0d07fd65fbfdb1a3e0c6642e/51c45de4e5079a999abe964bc0e06dadcac8e789/"'

which yielded https://github.com/sjrd/scala-js-env-phantomjs/tree/import-from-core-step3.
Almost there, except that now the files from the Initial commit have been removed in the first meaningful commit of the filter-branch. We restored them using:
git filter-branch --index-filter 'git reset 51c45de4e5079a999abe964bc0e06dadcac8e789 -- .gitignore LICENSE README.md'

finally giving the history in https://github.com/sjrd/scala-js-env-phantomjs/tree/import-from-core-step4.
This PR is one commit on top of that final step.

Phew ... managed to get it green. I had to resort to using coursier on Travis, because the normal ivy resolution was simply killing all the time allocated to jobs on Travis!
Ping @gzm0. Since it's a new repo, I'm not sure you received earlier notifications.

Will the references to issues "in the future" (e.g. fix #2883) make our life harder in the future?
If yes, consider s/(#[0-9]+)/sjs\1/g
I'm still reviewing the rest.

The longer I think of it, the more unsure I get about importing the history. I do not understand what it buys us. IIUC, those commits won't build anyways, so we will not have bisecting capabilities or something.
Have you considered just replacing everything with a commit saying "copied from<EMAIL_ADDRESS>Yes, that would make us lose the history if we lose Scala.js, but then again, this would make this repo quite useless.
Ok, I now understand that it gives us blame capabilities. So maybe we should retain it.
I'll proceed with reviewing the filter branch procedure and the last commit.

Ok, I now understand that it gives us blame capabilities. So maybe we should retain it.

Yes, it's essentially for the blames.

Will the references to issues "in the future" (e.g. fix #2883) make our life harder in the future?

Hum, good point. Yes, I think you're right and we should rewrite those.

Yes, I think you're right and we should rewrite those.

If you are doing this and you need to repeat step 3 and step 4, note that I think they are just a convoluted way to do a rebase --onto.

Nah I'll do that as a step 5.
A rebase --onto flattens out all merges, so not good to import a history. (plus, it reassigns the "committer" field--different from "author"--, not a big deal but still annoying for an entire history)

A rebase --onto flattens out all merges, so not good to import a history

Ah, ah, indeed.

Updated:

Point issue references to the scala-js/scala-js repo
Add requested comments in the .travis.yml


Not compatible with HA core 2023.3.0

The integration does not start naymore. Errors:
Source: util/package.py:107
First occurred: 10:16:49 AM (2 occurrences)
Last logged: 10:16:53 AM

Unable to install package pyecotrend_ista==1.0.37: ERROR: Cannot install pyecotrend-ista==1.0.37 because these package versions have conflicting dependencies. ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts [notice] A new release of pip is available: 23.0 -> 23.0.1 [notice] To update, run: pip install --upgrade pip```

I am having the same error.

There seems to be a version which could close this. Is there a chance to use this already in HA core 2023.3.0 and above? Is there a timeline?

I deal with it daily, there are constant difficulties on the part of Ista. A cooperation has not really developed, they are interested but do not provide any support.


Curators can replace gene sets for a dataset in a private collection

Story
A curator can replace gene sets for a dataset in a private collection.

Model
See Link by adding a gene set “set” to a dataset in the thought experiments document.
The curator must create a gene set file that is specific to a dataset in the private collection.

Requirements
Replacing Gene Set(s) for a dataset in a private collection

MUST support the ability for the curator to select and upload a file containing one or more gene sets from their local drive

Validating Gene Set files during upload
The validation requirements for the file format are defined in the Gene Set File Format.

Verifying that gene sets are assigned to a dataset
There MUST be a simple UX hint that allows the curator to quickly verify either the number of gene sets or the names of the gene sets that are assigned to a dataset. See Gene Sets Tag in the UX Design section. These hints MUST NOT be displayed in public collections to consumers, only to curators in private collections including revisions.

UX Design
Replace Gene Sets
Upload Gene Set
Gene Sets Tag

Closing. Per the 2022 Q1 plan, the design would embed gene sets in datasets.


juce::Image is no longer transparent to use

This only affects programs that manipulate the internals of images by getting a BitmapData object and using the pointers, etc. within.
Workaround is to use software-image types that D2D won't touch.

I presume you don't mean "transparent" in the optical sense? You mean transparent in the sense that they operate differently?

Sorry, yes, that’s what I meant.


Feature/fix playground webflux

It is still a draft because it needs more testing with various project setups.

I opened up for review since it was to long ingering in Draft mode. I have not yet done the more extensive testing that I planned, so help would be appreciated in testing the PR with different setups (servlet vs. webflux, with / without csrf and so on) to find any bugs/regressions.

Is anything blocking this? I would very much like to keep using webflux... 😄

Can't we merge it ? From what I see, it looks pretty good.


[Sentinel US] API Review

New API Review meeting has been requested.
Service Name: Sentinel US
Review Created By: Nitisha Bhandari @ni-bhandari
Review Date: 2/7/2023 1:00 PM PT
PR: https://github.com/Azure/azure-rest-api-specs/pull/21808
Hero Scenarios Link: here
Core Concepts Doc Link: here
Description: This is a new data-plane API, in the Sentinel Threat Intelligence team, called the Upload Indicators API. It allows users to upload threat indicators in bulk directly into their workspaces.
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

@ni-bhandari Microsoft has developed a new API design language called Cadl. Cadl and the Cadl Azure.Core library provide standard APIs patterns and constructs that promote compliance to Azure’s API Guidelines. The language is powerful and expressive, avoiding the “boilerplate” common in OpenAPI defintions. There is extensive tooling in VS and VSCode to improve productivity of API designers.
We are encouraging all Azure service teams to migrate to Cadl. All new services should either start with Cadl or migrate to Cadl as soon as possible. Here are some resources to help you learn more about Cadl and how you can start using it for your service:

Cadl Azure Docs: aka.ms/cadlazure
Cadl Azure Playground: aka.ms/trycadlazure
Cadl Azure Process Docs: aka.ms/cadl/start
Cadl Discussion Teams channel: aka.ms/cadl/discussions

API Stewardship Reveiew: 7-Feb-23
POST /workspaces/{workspaceId}/threat-intelligence/indicators:upload
It would also be recommended to remove the threat-intelligence static segment as it doesn't really provide value and may be 'shipping our org chart'. This could look like the following, where the collection name becomes more descriptive:
POST /workspaces/{workspaceId}/threatIndicators:upload
The team should consider how they will handle versioning of the STIX format.
It is recommended that the team consider participating in the STIX group to be aware of any potential breaking changes.
The Azure REST API Guidelines specify a standard error format. It is recommended to follow this format. error format

@ni-bhandari It appears that the PR for this API was closed without merging. Has there been some change of plan?

@mikekistler We are still finalizing the changes for the API and implementing them. I'm sorry I didn't realize this would close due to inactivity. Can I open it again?

Hi @markweitzel, Our assignee appears to be out of office. Could you please help me reopen the PR? Is there anyone else I could reach out to? Thank you!


Dynamic ksize and strides with AvgPool

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

TensorFlow version (you are using):
1.11.0

Are you willing to contribute it (Yes/No):
Yes - but unfamiliar with contribution process and I think it would be very similar to MaxPoolV2

Describe the feature and the current behavior/state.
Adding an AvgPoolV2 with dynamic ksize, much like MaxPoolV2. This is very related to issue #11875
Will this change the current api? How?
It would add a new function gen_nn_ops.avg_pool_v2
Who will benefit with this feature?
Anybody looking to use an average pooling layer with dynamic ksize. For example, when running a graph with an input of an unspecified size when the ksize is dependent on the size of the input
Any Other info.

Sorry I don't have enough experience here, you need someone who has worked on the ops, I have only touched the python layer on top.

I can work on this, but re-defining op kernels sounds a very cool thing to do, @davideh29-portfolio do you want to contribute?

Any update on this?

Could you raise the priority for this, please?
I mean, it's been 2 years already, and over 3 since #11875 was implemented. I need dynamic average pooling to implement StripPooling in my CNN, but neither torch.nn.pool, nor gen_nn_ops.avg_pool support dynamic shapes.

We need dynamic stride support for avgpool

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The Tensorflow team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the Tensorflow space.
Thank you!


Pull request for first 10 files

Kindly review and let me know if any change required.
Copyright symbol was causing some issues so I have removed it temporarily

Hi Shrirang,
thanks for the pull request. I'll send you more Info via eMail. I'll close this pull request without a merge for now.


Improve the evaluation of states

Improve the method eval in the AlphaBetaState. The first step should be to add the death of the players.

The player death has been added to the evaluation.

Try to add :  la somme de %hp perdus*dps pour chaque unité


update confidence_to_peaks in vegcn/confidence.py[line 144]

2 problems in confidence_to_peaks in vegcn/confidence.py[line 144]:

Because of the unstability of compare two float in python, if there are two identical items(images), the result of c <= confidence[i] may change. So two identical items(images) may not be in the same cluster in the results.
If there is only ONE id(several images of one class) in the input, the compare of '<=' will lead to incorrect result

Solutions:

add a conf_eps, and change c <= confidence[i] to c <= (confidence[i] - conf_eps)
change c <= (confidence[i] - conf_eps) to c < (confidence[i] - conf_eps)

Signed-off-by: wangyunhang<EMAIL_ADDRESS>

Nice try.


HPA and ArgoCD - scaling is disabled since the replica count of the target is zero

Hi there,
I've created a Deployment without setting replicas and created a ScaledObject for scaling the deployment based on number of messages in AWS SQS.
The replica count is set to 0 because the application should act event driven. So whenever a new message appears in the queue it will scale up/down.
The Problem
The HPA shows scaling is disabled since the replica count of the target is zero because the default value for replicas in the deployment is 0. => The ScaledObject will be in not active state
When setting replicas in the deployment to eg. to 1 the HPA will work as expected and the ScaledObject will show active state BUT ArgoCD`s AutoSync will fight till infinity against the difference from the deployment spec and terminate/create replicas .
Why the HPA requires the deployment to have a replica count set?
As a workaround I disabled the AutoSync for the Deployments which are scaled by the HPA but ArgoCD will show them as OutOfSync.

HPA doesn't properly support scaling to 0, but that's something that KEDA does. So once the Deployment is scaled to 0, KEDA will activate it to 1 replica, you shouldn't do that. So your original ask (scale 0<->N replicas based on AWS SQS) should work properly, without your interaction.
But there should be only one controller that manages the number of replicas in the Deployment, so in this case it is KEDA. If you have additional tool that tries to modify the replica number, it will result in conflicts. So in this case it is probably the ArgoCD AutoSync.


[lbry] ci: GoReleaser zero out buildid for reproducible builds

This is the only missing step to make the compiled binaries deterministic.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
11 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.002%) to 51.813%

Files with Coverage Reduction
New Missed Lines
%

integration/rpctest/utils.go
2
77.65%

peer/peer.go
9
76.31%

Totals

Change from base Build<PHONE_NUMBER>:
0.002%

Covered Lines:
22354

Relevant Lines:
43144

💛  - Coveralls


Should clear cache after switching to path dependency_override

If you have a cached dependency, and then switch to a path override for that dependency, then future calls to pub run my_dependency:script should not be cached. Currently that is not the case and it will continue to run the cached version.

This issue has been moved to dart-lang/pub#1155.


Fix invalid variable names

Rust has some reserved keywords/names that are valid variable names in Python, such as _ (single underscore, used to throw away values) and match. If you use one of these as a variable name in a Seahorse program, you'll usually get a very weird rustfmt error.
# For example, this should not be allowed.
match = filter(..., array)

Ideally, Seahorse should raise an error when one of these names are encountered, and guide the user to choose a different name.

I'm working on this issue, I need more information.

Hey, can I handle this problem? Or does it no longer matter?


Missing doc for numMaxThreads configuration

druid.broker.http.numMaxThreads and druid.global.http.numMaxThreads are missing.

Still relevant.


libgrib1 is looking for a new maintainer

https://github.com/C2SM/spack-c2sm/blob/03bf4aa20ef791b4a565a707441382584a4bf8f6/repos/c2sm/packages/libgrib1/package.py#L33

@jonasjucker will take ownership


cigien: Blacklist (?-i:^longpanda$)

cigien requests the blacklist of the username (?-i:^longpanda$). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:^longpanda$) has been seen in 9 true positives, 0 false positives, and 0 NAAs.

(?-i:^longpanda$) has been seen in 9 true positives, 0 false positives, and 0 NAAs.

Approved by Zoe in Charcoal HQ

Approved by Zoe in Charcoal HQ


Add E2E Sanity Test for Statsd

Description of the issue
Add E2E Sanity Test for Statsd
Description of changes

Added integration test to validate that the agent publishes metrics for the Statsd input plugin

License
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
License
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Tests
Run integration  test on my fork https://github.com/khanhntd/amazon-cloudwatch-agent/actions/runs/3609860857/jobs/6083399608
null_resource.integration_test (remote-exec): 2022/12/03 20:01:06 ==============================
null_resource.integration_test (remote-exec): 2022/12/03 20:01:06 ==============Statsd==============
null_resource.integration_test (remote-exec): 2022/12/03 20:01:06 ==============Successful==============
null_resource.integration_test (remote-exec): statsd_counter   Successful

LGTM; Some comments from collected PR apply here as well.


Unable to access the Jar file.

So I tried using the command prompt and it says unable to access this jar file, then I tried double clicking and Java gave me the error of. A Java Exception has occured, I really don't know much about those, think i could get some guidance?

Which version of Java do you have installed?
Could you post a screenshot of the terminal after you try to execute the command?
Maybe you tried to launch the program from the wrong directory or with the wrong file name. You can change to the folder you downloaded the jar file to using cd  (e.g. cd Downloads) or right click on the file while holding shift, copy the path and paste the whole path after java -jar in the command line.

For the Java version, I assume its 4.1.1 well the latest version i think?

The latest version would be 22 😅. You can get it by typing in java -version.
I assume you didn't download the program to C:\Windows\System32. So you have to navigate to the right directory using cd first, or open the command prompt directly in the right folder by shift-right-clicking in the explorer and then "Open command window here" or something line "Open PowerShell here"

That was it, i had version 8 XD just downloaded version 22 and it worked, thank you!


Update CNAME records in NameCheap for reducing emails hitting Spam

We discovered a few of our emails being sent from Hubspot were going to spam. To resolve, HubSpot recommends we connect our domain (https://knowledge.hubspot.com/domains-and-urls/connect-your-email-sending-domain). To do this, we need to update our CNAME records in NameCheap. Detailed instructions can be found here https://knowledge.hubspot.com/domains-and-urls/update-your-dns-records#namecheap.

hs1-26010207._domainkey
klimadao-finance.hs07a.dkim.hubspotemail.net.
hs2-26010207._domainkey
klimadao-finance.hs07b.dkim.hubspotemail.net.

We have been blacklisted, two issues causes

we have an open relay (not sure who manages this on our google email setup/configuration but it's now a serious issue).

This is what I picked up on the external "soft" pentest.
*** - Email security ***
Test open relay mail and confirm risk if any (in-progress/on-going).
SMTP	alt3.aspmx.l.google.com.	Open relay.
SMTP	alt3.aspmx.l.google.com.	Reverse DNS does not match SMTP Banner.
DNS	klimadao.finance	SOA Expire Value is out of recommended range.
DNS	klimadao.finance	SOA Serial Number Format is Invalid.

We have not added an extra layer of security on our mail management.
DKIM record create - needs to be completed.

HTH.

This looks like it can be closed


Remove non-existent HP xrefs (1)

Mondo term (ID and Label):
MONDO:0009576
Xref that should be fixed (ID and label):
HP:0007660 should be removed as it is not a valid HP ID
Other comments:
nonexistent

this is in HPO:
https://hpo.jax.org/app/browse/term/HP:0000485


fix(motion_velocity_smoother): change curvature calculation distance parameter

Description
For https://github.com/autowarefoundation/autoware.universe/pull/4924
Tests performed
run psim
Effects on system behavior
see https://github.com/autowarefoundation/autoware.universe/pull/4924
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

Psim Check
https://github.com/autowarefoundation/autoware_launch/assets/59680180/7af3a9de-d52b-4530-97d2-c1c527ae9926
https://github.com/autowarefoundation/autoware_launch/assets/59680180/ce1cebd8-9daa-4578-ae25-946bdb064b41

Psim Check 2
https://github.com/autowarefoundation/autoware_launch/assets/59680180/65258b26-0966-48e2-becf-8e06c41a23ce
https://github.com/autowarefoundation/autoware_launch/assets/59680180/27fe6066-5278-46cd-851e-4ad6a965c327


Add a Contact

User Story
As a user, I would like to be able to add a contact so that I can update my network as I meet new people.
Detailed Description
...
Task List

[x] Render button (frontend) #15
[x] Popup menu for adding a contact #17
[x] Submit request to "add contact" api #18
[x] Process "add contact" request #16
[ ] Send "add contact" response #34
[ ] Process "add contact" response
[x] insert contact into database #53

Acceptance Criteria

[x] Given the user is on the home page , then the user should be able to add a contact to their network

Need to properly insert contact into list on frontend


CAS-509: Unschedule Mayastor pod to test replica loss

End-to-end testing: Unschedule Mayastor pod to test replica loss.
In order to avoid low-level network manipulation to fault a child,
the new test unschedules the corresponding mayastor replica pod,
so removing it from the IO path, to achieve the same effect.
This allows greater flexibility in where the test can be run
(e.g. CI testing) as the kubernetes API is all that is needed.
Slight refactoring of node-labelling code.

bors try

bors try

bors try

bors try

Closing to try and fix commit message issues

Closing to try and fix commit message issues


Unable to open: No such file or directory (2) [Error while loading .magnitude model]

>>> vecs = Magnitude('http://magnitude.plasticity.ai/word2vec/heavy/GoogleNews-vectors-negative300.magnitude') # full url
>>> Unable to open: No such file or directory (2)
Killed

But module has been previously downloaded and cached
ubuntu@magnitude:~$ cd .magnitude/
ubuntu@magnitude:~/.magnitude$ ls
word2vec_heavy_GoogleNews-vectors-negative300.magnitude

same issue

Could you have found a solution for this issue?


Document how to include time in commit message

Hi! I'm pretty interested in gtm, as it parallels something I've been thinking of doing for a long time.
In my own planning, I was assuming I'd integrate with my existing commit-labeling system, called gitlabels. (For me, this is a part of a personal crusade to start exposing “effort invested” numbers on open-source work, to help encourage newbies who feel swamped and incapable — for instance, I'm also time-labeling blog posts.)
So, I guess this is an advertisement for my work, and offer to integrate efforts.
Here's an example of one possible format for time-taken-information, as an example of an automatically-appended timing record:
(!! new API revert inc!) Replace ::walk with Giraphe

This was half-a-year in the making; bit of a black-triangle moment. 🤣

/time-invested "T11H42M"

(Yanked that format from ISO 8601, after removing the P, as the fact that it's a duration is implicit and a given in this case.)
Alternatively a shorter form (and these are explicitly equivalent), although I'm not a huge fan, as it wastes extremely-limited first-line-real-estate:
(!! new API revert inc! took:T11H42M) Replace ::walk with Giraphe

This was half-a-year in the making; bit of a black-triangle moment. 🤣

I'd be willing to apply some implementation-work here, although I may only be able to help with the Vim and sh implementations (my Go is non-existent).
Any thoughts? 😊

A nice way to integrate with gtm is via a git pre-commit hook to populate the commit message with the time spent.  Take a look at this https://github.com/git-time-metric/gtm/issues/72. Does that do accomplish what you are looking for?

Oh, I'm sure I can scrape and manipulate the data into the format for my personal use; I just thought this might be a nice on-by-default feature of gtm (encoding the time information into commits.)
To do it nicely, gtm might need to wrap git (saw some discussion of this elsewhere), though.


Error running relay-chat

When I run relay-chat, there are two problems:
On localhost:8080 (GraphQL), there is this message:
{
  "errors": [
    {
      "message": "Must provide query string."
    }
  ]
}

and on localhost:3000 (react app), nothing is rendered, this is the react developer tool result:

+1


evidence steps refactoring

criteria for success:

speeding up inclusion of new T-D datasets
low code maintainance
modular scoring

Issue moved to opentargets/platform #186 via ZenHub


responsive tenants, clients, position, skills, roles, criteria page

https://github.com/user-attachments/assets/57cf18f8-3996-43ba-bfbf-af58e5f73e3f


State change issue

Which @ngneat/elf-* package(s) are the source of the bug?
store
Is this a regression?
No
Description
I have modified your Todos example project to create reproduction example of issue, that I'm facing now in my Project. I added state prop 'processing' and it's value is unexpectedly changed when filter is modified. There is a statement in repos constructor that  monitors todos & filter modifications. It sets 'processing' to true and back to false after 3s as some data processing simulation. It works correctly first time on load, but switches back from true to false immediately when you change filter by button.  The 'processing' prop value is rendered to UI & logged to console.
Please provide a link to a minimal reproduction of the bug
https://angular-ivy-v6pzpb.stackblitz.io
Please provide the exception or error you saw
No response
Please provide the environment you discovered this bug in
No response
Anything else?
No response
Do you want to create a pull request?
No

What you mean is unclear to me. You are subscribed to the following:
combineLatest([this.todos$, this.filter$])

When you update the filter property, it runs and calls setProcessingState.

Yes, but check console what happened when setProcessingState(true) is called.

Open app
Click 'Active' button

Expected: The 'processing' property should be set to true, after 3s is switched back to false.
The bug: The 'processing' property is set to true, but immediately switched back to false.


Remove the link to the sharpdevelop forum from readme.md

The forum at community.sharpdevelop.net doesn't seem to exist any more, so no need to retain a link to it in the documentation?
I certify that I own, and have sufficient rights to contribute, all source code and related material intended to be compiled or integrated with the source code for the SharpZipLib open source product (the "Contribution"). My Contribution is licensed under the MIT License.

Indeed. Thanks!


Update gocd

Updated gocd module to be able to use ami-baker from a GoCD job

@hazim1093 please delete the dead code which is related to older ami baker solution! and include it in this PR as well

fixes #34
fixes #37
fixes #39


Windows 7/10 32Bits machines Unable to Compile Project

Describe the bug
32Bits versions of both Win10 and Win7 are unable to compile a project, giving the next error just below the "Linking..." line:
"Warnings:

C:\tmp/_gbstools/gbdk/bin/makebin
: Invalid argument
.._gbstools\gbdk\bin\lcc.exe:
1"

The 32Bits version of GBStudio is been used, the problem persisted even if ran as admin, no false positive nor alert by the win10 antivirus (perhaps expected since it happens and win7 as well), all permissions are set to "Allow" for every user
The issue was checked in 2 windows 7 devices and 1 Windows 10 device, all of them gave the exact same result
To Reproduce
Compile a project, even a brand new and empty project will cause the error to pop up, again, on a 32bits Windows Computer
Expected behavior
Project being successfully compiled
Screenshots

Platform

OS: Windows 10 / Windows 7
App version : Version 2004 for Windows 10 computer, the win7 ones were borrowed, had to give them back and i forgot to check their version

Additional context
in the win10 one, changing the tmp directory in 3.0 would save for Beta 2.5, but it wouldn't save for 3.0

https://github.com/chrismaltby/gb-studio/issues/1001
I've been having the EXACT same issue. I thought it just happened to me, i even installed older versions and it still didn't work.
Ironic how the 32 bit versions can't run anything, eventhough the version is 32 bit. I hope this problem gets solved.


No guide for KEYBOARD_CUSTOM_KEY

I've read that the SDK added support for generic layouts.
Looking through the Colore docs I cannot see how the current grid implementation allows for generic layouts.
Could I get some help with this please?
As an example: the Blade and Ornata both have very different key layouts. If I reference a key using the grid, I will not get the same key on the Blade as I would on the Ornata.

The IKeyboard interface provides index-based indexers and key-based indexers for setting colors. Setting a color via a key (for example: keyboard[Key.A] = Color.Red will set the "A" key to the color red regardless of the user's current keyboard layout. This is supported as far as the SDK supports it, there have been issues in the past where it's not working properly due to bugs in the SDK/firmware.
Are you using v5.2 or v6.0 of Colore?
As for the documentation, we currently only have the "Getting Started" guide. But there's also the raw API documentation you can look at for v5.2 and v6.0.
For the keyboard specifically, check out the API docs for IKeyboard (or the v6.0 version).


Daily cron job

Separate github workflow that triggers daily around 7PM UTC.
To discuss: I've collected the 'daily jobs' (though it includes the weekly SC mailing) into one action+script. We could have separate scripts for each daily job if that is cleaner. No real preference from my side, at the moment these are still manageable as-is.

Other than the remarks above, all LGTM.

@everthemore would you like to finish this, or shall I take over?

I believe this was basically finished. If you agree and can merge the updates with minor effort, please go ahead. If I am mistaken and components are missing, I am happy to fix them first.

Actually, nvm, I can see that I never pushed the latest version. Let me take a look

FYI, current version adds users to test_list on mailgun on purpose

@everthemore can you please take a look and merge if you're happy?


surface errors from image wait

only display error message if it exists to prevent dangling colon in message

Codecov Report

Merging #527 into master will increase coverage by 0.01%.
The diff coverage is 85.71%.

@@            Coverage Diff             @@
##           master     #527      +/-   ##
==========================================
+ Coverage   66.34%   66.35%   +0.01%
==========================================
  Files          74       74
  Lines        2998     3002       +4
==========================================
+ Hits         1989     1992       +3
- Misses        728      729       +1
  Partials      281      281

Impacted Files
Coverage Δ

pkg/logs/wait_for_image.go
69.69% <85.71%> (+0.34%)
:arrow_up:

Continue to review full report at Codecov.

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


Add recommendation to use kms provider

Add a warning to encrypting secrets documentation that if using a provider with secrets encryption, kms provider is preferred as it materially changes the threat model.

@sftim @sethvargo please help add a lgtm if this looks good to you.

I don't think I can LGTM? I haven't got my Kubernetes member status sorted yet.
But also I'm kind of neutral on the current wording vs. making improvements.
Summary: :man_shrugging: (sorry)

LGTM - I also don't have permission to add labels

/assign @tfogo

On a line by itself, add:
{{< feature-state for_k8s_version="v1.14" state="beta" >}}

(change the version to match the first Kubernetes release when this feature was in beta.
Typically, you put this line before the paragraph where you describe the feature. It needs to be clear what you're marking the status of, so that might call for rewording.

@mayakacz could you please ensure that checks pass.

/lgtm
/approve


Fixed generate_password_hash

No longer wrong saved registration password to the database.

Thanks!

No problem :) I'll try to find other bugs.
2017-06-30 9:19 GMT+02:00 Michael Herman<EMAIL_ADDRESS>
Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/realpython/flask-skeleton/pull/18#issuecomment-312194675,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANTVFMyJdHaxw9a56rTYUEwbdgjeLYSvks5sJKGUgaJpZM4OJwMn
.


Stops running if the terminal isn't selected

So if you run a long standing (ex. tar to untar large tar balls) command on bash and then deselect the terminal window (ie do something in the mean time) it will often stop until you re-select bash.

I have also observed this.  I have not been able to reproduce it reliably, though.
I tried writing a simple shell script that outputs text on a regular interval.  I've never seen it hang.  I don't think it's due to writing to the console too quickly -- I've mostly observed it when doing large "apt-get install"'s, which generally print a line or a few lines per second.

Is it possible that you're running into the “selected text” console behavior – if you accidentally select text with the mouse it will stop reading input which typically pauses the app trying to output.

I'm gonna agree with @benhillis on this one. Selecting the text can cause the output to pause, regardless of the focus of the console window.

I often have a two-monitor setup where I'm working on one monitor and have a bunch of random scripts and status-type windows that I have dragged over to the other monitor.  On a couple occasions I've dragged a terminal over to the other monitor, watched it for a while, then gone back to work on my main monitor, and looked back some time later to notice a hang.
I suppose it's possible that my mouse strayed over to the wrong screen and that I clicked on it while I was over there.  I'll pay attention next time.  But if so, apparently that's a very easy mistake to make and not notice...

In my case, sometimes grunt watch and electron-prebuilt processes stop to work when my machine wake up from sleep/suspend. I can nothing with that consoles until force close them and reopen.

Try turning quick edit mode off:  Right Click on header > Properties > Options > Edit Options
Source: https://stackoverflow.com/questions/30418886/how-and-why-does-quickedit-mode-in-command-prompt-freeze-applications


What do we want to do with badges?

Do we keep all of them, or do we cull them?
At the very least we should categorize the badges (like "2022 talk badges")

Decided on keeping & categorizing.


Allow using AI Service with tools without memory

Context
Currenty AI Service can use tools only if there is a ChatMemory or ChatMemoryProvider configured.
This is probably an unnecessary and overly strict requirement. In practice, tools can be used without the memory that spans between calls to AI service, using only a "temporary memory" that spans single call to the AI service (that can include multiple interactions with LLM due to tool executions).
Change
Allow using AI Services with tools without memory. If there is no memory configured, a "temporary memory" is used for each AI Service invocation to store all messages created/produced in scope of this AI Service invocation.
Checklist
Before submitting this PR, please check the following points:

[X] I have added unit and integration tests for my change
[X] All unit and integration tests in the module I have added/changed are green
[X] All unit and integration tests in the core and main modules are green
[ ] I have added/updated the documentation
[ ] I have added an example in the examples repo (only for "big" features)
[ ] I have added my new module in the BOM (only when a new module is added)

cc @geoand

👌


[Suggestion] Market bigger buying size (Markt größere Kaufmengen)

I'm wondering why I it is neither implemented nor in any "issue" (according to search function):
Please make it possible to buy higher sizes in the market, eg. while holding SHIFT. Could be 25 or 50 at once.
Wundert mich, dass das nicht bereits implementiert ist und auch kein Issue dazu geöffnet wurde (zumindest findet die Suche nach Markt/Market dazu nichts):
Es wäre super wenn man zb durch halten der SHIFT Taste größere Mengen aufeinmal kaufen könnte, zb in 25er oder 50er Schritten. Aktuell ist das echt eine reine 30 sekündige Klickerei, wenn man Holz oder Nahrung braucht es es das af der Map nicht mehr gibt.
Natürlich ein sehr großes Dankeschön für diesen tollen Patch!! :)

Maybe also a automatet market like in Crusader 2 that you can set a minimum or maximum amount you should have for a ressource 👍 would be really great

Maybe also a automatet market like in Crusader 2 that you can set a minimum or maximum amount you should have for a ressource 👍 would be really great

I don't think, that this would be a good Idea. This micro is part of the game and shouldn't be removed completely by auto-buy. But changing the buy size would help indeed. And maybe an enhancement to sell all goods of a type at once

@UserwithnoUsername regarding automated markets like in Crusader 2: This would be very complicated to implement, would require additional GUI and more complex mechanics. Also, this has been suggested and discussed in other issues already (for more details, just search for the terms).
Shift-based larger buy/sell amounts on the other hand should be considerably easier (and actually feasible) to implement (possibly as simple as just repeating the regular action X times if Shift is pressed), nice idea! :)
Also, buying/selling in increments of 1 (with a different modifier key, e.g. Ctrl instead of Shift) instead of 5 would be handy as well sometimes.
Also, if this does work, I could imagine it also being employed for recruiting troops, to recruit e.g. 5 troops of the same type with 1 Shift-click... but that has been suggested elsewhere already I think?


scn.find doensn't work on debina

So we are having a problem with scn.find method. On alpine, it works with no problem but on Debian for some reason returns None for every SAML.
scn.find('saml:SubjectConfirmationData', namespaces=OneLogin_Saml2_Constants.NSMAP)
We had a similar problem on Alpine as well everything worked ok if we installed with pip 21.1.2 but if we would use a newer version of pip same thing would happen, scn.find would stop working. Can I get some suggestions on why this could happen?

Yes, it seems related to the version used on lxml and its dependency libxml2


Noviny/assemble release plan

SOME NOTES:
This works in theory - I've thrown some gnarly test cases at it and it didn't break. Next step is to make this thorough. We had a lot of old tests for updating versions and determining dependencies that I want to rewrite for this, since errors here can be extremely costly.
There's some code neatness that needs to be addressed.
The test-utils file is an implementation of @mitchellhamilton's idea to generate a whole state to run tests against. We can set up and modify a data set easily now. I'm still not in love with how I am testing the output though.
Next package after this is the one that takes the output of this and applies it to a repository. After that, probably wire it into the CLI

@mitchellhamilton think this is good for review if you want to look at it.

@mitchellhamilton updated yah!


examples: Add usage of base64encode

What this PR does / why we need it:
Showcase the usage of base64encode for the user_data field.
I was looking at using it like on Terraform-side and it works without any issue.
How Has This Been Tested?:
I've run this setup on my Nutanix cluster, and it worked as expected.
Special notes for your reviewer:

No code change, just extend the current examples. Also the user_data content is exactly the same.
Removed some non-needed spaces on example/source.nutanix.pkr.hcl.
Added the default disabled variable, image_export as false, so that someone else get to know it quicker. IMHO, this is the purpose of the examples.
CLA already sent.

Release note:
NONE

thanks for your contribution Mario @mjtrangoni

HI @mjtrangoni FYI #134

Interesting. I had no issues with this. Is it something related to one OS?

no your example can't work this is pretty strange
a base64encode("scripts/cloud-init/cloud-config-centos.yaml") just return  c2NyaXB0cy9jbG91ZC1pbml0L2Nsb3VkLWNvbmZpZy1jZW50b3MueWFtbA==
who is the base64 version of the file path and you get the file. path in the user_data file


[HackaDoc] Update web-sites-web-hosting-plan-overview.md

Customers should be encouraged to have multiple sites share a WHP - this helps to optimize their spend.

Cam - please add [Hackadoc] to your pull request title.


Allow aliasing of registered classes using AutoInject

I have two namespaces (let's say bill and bob), both of which have a service named service registered in the container. If I want to use Registry::AutoInject["bill.service", "bob.service"] I receive the error Dry::AutoInject::DuplicateDependencyError: name +service+ is already used.
If there are multiple dependencies using the same name, can we not prefix them with the namespace name (bob_service and bill_service) when injecting them into a class?

@adaam2 you can set up aliases with
Registry::AutoInject[bill_service: "bill.service", bob_service: "bob.service"]

@flash-gordon Perfect, thanks


Lower loglevel of wifi at runtime

Since the wifi binary lib does not listen to the sdkconfig setting

Makes the boot a little faster as well :)


Anybody had peatio-slanger repo.looks like it is removed

Anybody had peatio-slanger repo.looks like it is removed
Thanks in advance for any help

https://github.com/amarian12/peatio-slanger

what fungtions of peatio-slanger

Hi anarian, thanks alot for your help. I see nlexch is running fine. Did you figure out to use slanger or garufa ? Or are you using pusher ? I am unable to get slanger worked. My email<EMAIL_ADDRESS>Any help to run slanger or garufa will be great.

I am able to get it work with poxa... Amazing and super fast. Peatio working good with poxa.

hi, @pkdcryptos  how to run poxa?

Can you pls email to em<EMAIL_ADDRESS>Sorry I checked this nessage a bit late.

bittrex opensource: https://github.com/frezeq0/bittrex-opensource

bittrex opensource: https://github.com/pkdcryptos/frezeq0_bittrex-opensource

@pkdcryptos  Hello, can yu help me to install and run poxa?


[Playground] Evaluated code button is a bit off

Removed old hack, works now:

With a bit more space


Refactor type generation

make apis provided by the generated schema as stable as possible (introduce namespaces for types, don't return only the first operation output message part, fallback to GraphQLJSON on generation errors and incompatible xsd to preserve a working (but partly untyped) schema).
Set a more versatile foundation for additional xsd features which can be implemented later without breaking changes.
Fix errors around the type resolution in different namespaces.
Remove the usage of node-soap's service descriptions because they are incomplete. Unfortunately node-soap seems to rely on them too which leads to some bugs.
Remove specs which don't work anymore because of removed WSDL sources
Add a dev server

Fixes https://github.com/AEB-labs/node-soap-graphql/issues/16 and partially https://github.com/AEB-labs/node-soap-graphql/issues/17 and https://github.com/AEB-labs/node-soap-graphql/issues/18

Looks good so far. Is suspect you want to do more?

I'm currently waiting for some people to provide me with more wsdl files which didn't work before. Perhaps we could have a look together with @Yogu. I will also add some more specs. Unfortunately, most of the old ones are gone.


refactor(appconfig): use appconfig provider

Current dependencies on/for this PR:

main

PR #129

PR #131

PR #132   👈

PR #130

This comment was auto-generated by Graphite.

Merge Activity

Sep 27, 9:57 AM: @pevisscher started a stack merge that includes this pull request via Graphite.


Wordcloud Check When No Search Yet

If no search is done yet, do not give error with wordcloud.

Wordcloud error with no search and search with multiple words is solved.


discovery: Move static ignore list to system-probe

What does this PR do?
Move the static list of ignored process names to system-probe, so that system-probe can avoid doing unnecessary work.

Motivation
https://datadoghq.atlassian.net/browse/USMON-1214

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Did you verify the output of the check (and not the http endpoint of system-probe) does not report the ignored services?

Yes.

/merge


General way to pass extra attributes to Field

According to http://www.w3.org/TR/html-markup/syntax.html#syntax-attributes attribute name allows almost all characters, including - (dash)
I'm trying to create an <input> tag with attribute data-toggle to work with Flat-UI's css definition, but unfortunately current design of Field.__call__ doesn't allow such attribute names.

@prencher @patrickyan You're right on the specs but let's get practical. How many users are using underscores in data attributes opposite to how many are using frameworks such as Bootstrap which uses  data-x-y-z format?
If the majority of us are using the latter it's not nice to force all of us use the hacky ** syntaxt.
This is a typical breaking change for a major release maybe. :)
PS: To preserve the opportunity to use underscore a solution may be to use an escape character which you can pass only using the ** syntax.
What do you think?

Finished in #248


feature: deduplicate defaults and export defaults

With #419, programmable defaults are now supported.
State files are known to be verbose and repetitive since each and every field is exported.
Add a deduplicate mode in decK which only exports fields that are different from defaults and then export the default values as well.
This results in a much smaller state file with the same information.

#340 is another issue along the same lines.


go/packages: returned packages are in incorrect order

Using Go 1.12.
package main

import (
	"fmt"

	"golang.org/x/tools/go/packages"
)

func main() {
	cfg := &packages.Config{
		Mode: packages.LoadImports,
	}

	initial, err := packages.Load(cfg, "golang.org/x/tools/cmd/compilebench", "fmt")
	if err != nil {
		panic(err)
	}
	for _, x := range initial {
		fmt.Println(x.PkgPath)
	}
}

When I run this, I get:
$ go run bug.go
fmt
golang.org/x/tools/cmd/compilebench

I expected:
$ go run bug.go
golang.org/x/tools/cmd/compilebench
fmt

Load is documented to return the packages in the order they were passed to Load. (And this is important; if given relative package names, I have no other way of correlating them to the packages I receive back from Load.)
This does not reproduce if Mode is LoadFiles; it reproduces with all other modes.
cc @matloob

The input to Load is "patterns", and the documentation says "in general it is not possible to determine which packages correspond to which patterns"
I don't believe there is even an implied promise about the order matching, so I am surprised the documentation made you think that, we should probably fix the documentation.
I think if you need to do this, I think you need to make multiple independent calls to load instead.

I think if you need to do this, I think you need to make multiple independent calls to load instead.

That's unfortunate. I guess I understand. It's a cumbersome and expensive way to resolve a relative path. I might be remembering the order-preservation promise from go/loader.


📌  SPIKE - Improve dashboarding experience

User Story
As a user of the Monitoring and Alerting system (IMAP)
I want a simple way to create dashboards
So that I can actually create a dashboard without being a Grafana 🤓
Value / Purpose
The feedback that it is hard edit and create dashboards
It is a convoluted process to store as code, can this be improved?
Useful Contacts
Rich, Emile
Additional Information
Look at

https://grafana.com/blog/2020/02/26/how-to-configure-grafana-as-code/
https://grafana.com/blog/2018/09/13/everything-you-need-to-know-about-monitoring-mixins/

Definition of Done
Example - [ ] Documentation has been written / updated

[ ] README has been updated
[ ] User docs have been updated
[ ] Another team member has reviewed
[ ] Tests are green

The core purpose of IMAP has now changed from a solution which the wider business was encouraged to use, to one which we solely expect to be used within our team. That aside however, the newly designed IMAP no longer required users store their dashboards in code.
We have updated the landing page of monitoring to reflect this and have also updated the NVVS DevOps page with respect to this.


[Feat] Add Pacman

Is your feature request related to a problem? Please describe.
I wanna play pacman.
Describe the solution you'd like
play pacman
Additional context
Try using pygame for it.

@SubstantialCattle5 , can we use Turtle for this project?

@SubstantialCattle5  @3xpl0itk1t , can we use Turtle for this project?

Use whatever you want just make it fun!!!!


Get notified when draft is modified

🚀 Feature Proposal
I’d like to add a handler to a draft created by createDraft that is notified as soon as the draft is modified.
Motivation
I am using drafts to edit immutable structures in svelte. For an autosave feature, I’d like to watch modifications as they happen.
Right now, you can only listen to patches when finishing a draft.
Can this be solved in user-land code?
No.
Example
Please provide an example for how this feature would be used.

You can check the patches.length generated at the end of produce. Patches are only computed when finalising the object, so aren't available in between.


Add VO vo.projectescape.eu project_id

Summary

Related issue :

need  #214  to be merged first


[FEATURE] GraphRAG + Flowise

GraphRAG (https://github.com/microsoft/graphrag) shows great promise of a more improved and effective method of RAG beyond simple document chunking.
With the introduction of more cost effective models such as GPT-4o-mini and future generations the cost of a GraphRAG approach to indexing can be significantly reduced.
Request is to add a GraphRAG component to flowise that can accept a multi-document / multi-source input which on upsert runs the GraphRAG indexing, and then can be queried like any other Flowise RAG chatflow for use with standard chat bots, chains, and Agents.
Thank you!

+1

+1 gpt4omini is already in main branch, just wait for graphRag now.

+1

As the indexing seems very complex to build plus it requires a graph database I wonder if you have tried out indexing your data through the solution accelerator provided by MS?
@HenryHengZJ correct me if I'm wrong but the best way to tackle this would be to have an Azure AI Search (as they have for Langchain python now) Tool. At least we could then query that graph index.
I'll try playing around with this architecture this week. But as of now I think the indexing is too complex to be a out-of-the-box no-brainer for flowise.

Hope this helps https://js.langchain.com/v0.2/docs/tutorials/graph/

yeah we are still tinkering how to make it easy to do it on Flowise, as GraphRAG does involves much more technnical challenges

I cannot wait to see this feature for flowise Thank you all Devs

+1

+1

+1

+1

Just to keep you up to date: https://neo4j.com/developer-blog/global-graphrag-neo4j-langchain/
Check out this blog post which goes in detail into how to build a proper gepah that's like MS Paper. It's expensive.. and somewhat complex. At least the indexi g

FYI I've been testing graphRAG with GPT4-turbo and GPT4o-mini, switching from GPT4 to 4o-mini reduced cost from $50 indexing cost, down to ONLY $0.37 for same size indexing. Cost should no longer be a major factor in this type of approach, especially for static datasets.
I'm open to putting a bounty on this if anyone is interested.

+1

+1

GraphRAG (https://github.com/microsoft/graphrag) shows great promise of a more improved and effective method of RAG beyond simple document chunking.
With the introduction of more cost effective models such as GPT-4o-mini and future generations the cost of a GraphRAG approach to indexing can be significantly reduced.
Request is to add a GraphRAG component to flowise that can accept a multi-document / multi-source input which on upsert runs the GraphRAG indexing, and then can be queried like any other Flowise RAG chatflow for use with standard chat bots, chains, and Agents.
Thank you!

Yes PLEASE!

+1

+1

+1 I tried creating a custom JS function to query a Neo4j database but sadly that does not work either....

Thanks for the update 🫡
On Thu, 14 Nov 2024 at 17:54, TS-Eichhorn @.***> wrote:

+1 I tried creating a custom JS function to query a Neo4j database but
sadly that does not work either....
—
Reply to this email directly, view it on GitHub
https://github.com/FlowiseAI/Flowise/issues/2837#issuecomment-2475890607,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC4KSFUYUSDPSOITZSQXAL32ARXOLAVCNFSM6AAAAABLF34PFGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZVHA4TANRQG4
.
You are receiving this because you commented.Message ID:
@.***>

--
Kind Regards,
Manie
+61 416 824 559

Update. I got a connection with neo4-j working on a local version of Flowise. I followed this tutorial: https://www.youtube.com/watch?v=vmKLAeyLXy8 to add neo4j-driver as an external dependency. This allowed me to create a custom tool that queried a neo4j database and retrieved graph information.
FYI: In my setup the creation and filling of the graph database is not done by AI due to having structured data, so I have not tested transforming documents into graphs using Flowise.

Thanks for the update 🫡
…
On Thu, 14 Nov 2024 at 17:54, TS-Eichhorn @.> wrote: +1 I tried creating a custom JS function to query a Neo4j database but sadly that does not work either.... — Reply to this email directly, view it on GitHub <#2837 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC4KSFUYUSDPSOITZSQXAL32ARXOLAVCNFSM6AAAAABLF34PFGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZVHA4TANRQG4 . You are receiving this because you commented.Message ID: @.>
-- Kind Regards, Manie +61 416 824 559

@TS-Eichhorn  Thank you! I was looking for Neo4j support or Flowise!  Will explore more and see if get  transforming documents into graphs using Flowise

I just use graphlit to build the Graph and then use a flowise tool to query the GraphRAG.
Pretty straightforward actually

@googlepoke
Update. I got a connection with neo4-j working on a local version of Flowise. I followed this tutorial: https://www.youtube.com/watch?v=vmKLAeyLXy8 to add neo4j-driver as an external dependency. This allowed me to create a custom tool that queried a neo4j database and retrieved graph information.
FYI: In my setup the creation and filling of the graph database is not done by LLMs due to having structured data, so I have not tested transforming documents into graphs using Flowise.

That is great. I am using LightRAG to populate neo4j. LightRAG can use ollama. So cost is not a concern any more. I will try your method to pull data from neo4j in using the flowise custom tool. will it be possible for you to share a brief explanation of your code. Thank you.

I just use graphlit to build the Graph and then use a flowise tool to query the GraphRAG. Pretty straightforward actually

Could you share some details on you did this 😊?


ConnectionRefusedError on second training epoch

On completion of a single training epoch using this workflow, ./rs train throws the following error:
root@f5a70d76856f:/app# ./rs train --model config/model-unet-rutland.toml --dataset config/dataset-building.toml
--- Hyper Parameters on Dataset: rutland/ ---
Batch Size:	 1
Image Size:	 256
Learning Rate:	 0.0001
Weight Decay:	 0.0001
Loss function:	 CrossEntropy
Weights :	 [1.481308, 13.684548]
---
Epoch: 1/2
Train: 100%|##################################################################################################################################| 127/127 [15:39<00:00,  7.40s/batch]
Train    loss: 0.5145, mIoU: 0.507, building IoU: 0.081, MCC: 0.140
Validate: 100%|#################################################################################################################################| 14/14 [00:22<00:00,  1.60s/batch]
Validate loss: 0.3873, mIoU: 0.475, building IoU: 0.141, MCC: 0.313
Epoch: 2/2
Train:   1%|#                                                                                | 1/127 [00:10<22:52, 10.90s/batch]Exception ignored in: <bound method _DataLoaderIter.__del__ of <torch.utils.data.dataloader._DataLoaderIter object at 0x7f9d62863e80>>
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/data/dataloader.py", line 349, in __del__
    self._shutdown_workers()
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/data/dataloader.py", line 328, in _shutdown_workers
    self.worker_result_queue.get()
  File "/usr/lib/python3.5/multiprocessing/queues.py", line 345, in get
    return ForkingPickler.loads(res)
  File "/usr/local/lib/python3.5/dist-packages/torch/multiprocessing/reductions.py", line 70, in rebuild_storage_fd
    fd = df.detach()
  File "/usr/lib/python3.5/multiprocessing/resource_sharer.py", line 57, in detach
    with _resource_sharer.get_connection(self._id) as conn:
  File "/usr/lib/python3.5/multiprocessing/resource_sharer.py", line 87, in get_connection
    c = Client(address, authkey=process.current_process().authkey)
  File "/usr/lib/python3.5/multiprocessing/connection.py", line 487, in Client
    c = SocketClient(address)
  File "/usr/lib/python3.5/multiprocessing/connection.py", line 614, in SocketClient
    s.connect(address)
ConnectionRefusedError: [Errno 111] Connection refused
Traceback (most recent call last):
  File "/usr/lib/python3.5/runpy.py", line 184, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/app/robosat/tools/__main__.py", line 60, in <module>
    args.func(args)
  File "/app/robosat/tools/train.py", line 133, in main
    train_hist = train(train_loader, num_classes, device, net, optimizer, criterion)
  File "/app/robosat/tools/train.py", line 184, in train
    outputs = net(images)
  File "/usr/local/lib/python3.5/dist-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/torch/nn/parallel/data_parallel.py", line 109, in forward
    return self.module(*inputs, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/app/robosat/unet.py", line 139, in forward
    dec5 = self.dec5(dec4)
  File "/usr/local/lib/python3.5/dist-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/app/robosat/unet.py", line 44, in forward
    return nn.functional.relu(self.block(x), inplace=True)
  File "/usr/local/lib/python3.5/dist-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/torch/nn/modules/conv.py", line 301, in forward
    self.padding, self.dilation, self.groups)
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/data/dataloader.py", line 178, in handler
    _error_if_any_worker_fails()
RuntimeError: DataLoader worker (pid 3212) is killed by signal: Killed.

This looks suspiciously like a pytorch problem experienced by some other folks, and in particular this looks like it may be related to the fact that I'm running this locally on CPU.
If the CPU thing is the problem, is there a pipeline'd way for me to tune the number of threads down to 0 per the recommendation in the linked ticket? batch_size does not appear to be it.

Per @ocourtin, this is resolved (on my appallingly-single-cored docker setup) by adding --workers 0 to the ./rs train invocation.

I think we should make worker=0 the default.
I ran into similar worker problems when I was on a box with very little shared memory by default. The workers communicate via shared memory and are getting killed if they can not allocate enough shm.
Workaround was to increase shared memory e.g. via
umount /dev/shm
mount -t tmpfs -o rw,nosuid,nodev,noexec,relatime,size=4G shm /dev/shm

# df -h | grep shm
shm  4.0G  0  4.0G   0% /dev/shm

@ocourtin looks like 2 cpus 🤷♂
>>> import multiprocessing
>>> print(multiprocessing.cpu_count())
2


Bootstrap Group Select Example

I'm really interested in this feature. But I cannot find any examples of how it works. The JS Fiddle example (http://jsfiddle.net/wenyi/86es7wfp/) doesn't seem to be working.
Thanks for your great work!

Hi @deepfriedbrain , in my case, the JS Fiddle example is working well. Can you show me your problem?

Hi @wenzhixin
I think I misunderstood what this project is about. This is for bootstrap button group select. I'm interested in grouping with your "Bootstrap Table". I got the link from the top nav bar of your "Bootstrap Table" home page and thought that this project is to add row grouping to the table. I apologize for the confusion.
I'm really looking for grouping on the Bootstrap Table but not able to find good options for it. I'll post my question on the Bootstrap Table GitHub. Any help would be appreciated.
Thanks.

OK!


Mean Vector Should Use Apple's Accelerate Framework when applicable

Apple has mean calculation for vectors in Accelerate.  We should use this for a potential speedup.  https://developer.apple.com/reference/accelerate/1449980-vdsp_meanv?language=objc

Let's look in to what the speedup would actually be. Just ran a test, generating 1 billion random doubles then averaging them. On my machine it took matlab, nifty, and numpy 12, 13, and 14 seconds to generate the numbers and 0.6, 1.3, and 1.1 seconds to average them, respectively (the average in nifty was just a dumb loop). There's clearly room for a speed up, but on an absolute scale it might not be big. Also, if we did go with Accelerate, what would we do on Linux? Would it stay un-optimized or is it worth finding a more optimized implementation?

Just for kicks I wondered how using cblas would work. It doesn't directly support summing a vector but it has a dot product, so dotting a vector with a 1 vector as a sum seemed worth trying. It surprisingly takes only a little longer than the dumb loop with this approach (I guessed it would be way longer)

Migrated issue to pivotal tracker