Unable to connect o API server behind nginx/https reverse proxy after version 0.26.1-1

Since version 0.26.1, connection to a DC using https is not working anymore... rolling back to 0.26.0 works but I'm not able to upgrade beyond that...
Expected Behavior
Normal connectivity to API server over https
Current Behavior
the DC/API is displaying with the following message :
Datacenter XXX returned:unknown content length of -1
Possible Solution
no idea :(
Steps to Reproduce (for bugs)
Configure api server behind nginx using https and login/password
DC config :
{
"name": "xxx",
"host": "xxx.abc.com",
"user": "admin",
"pass": "password",
"ssl": true,
"insecure": false,
"port": 443
}
works with 0.26.0 and broken at 0.26.1 and over (some version will go to traceback, and 1.1.0-1 will go to the error described before.
Logs from tracing http on container:
{"timestamp":"2018-01-05T16:44:22.917291855Z","level":"info","src":{"func":"github.com/sensu/uchiwa/uchiwa/daemon.(*Daemon).fetchData","line":74},"message":"Updating the datacenter xxx"}
{"timestamp":"2018-01-05T16:44:22.917349267Z","level":"debug","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*Sensu).getSlice","line":54},"message":"GET https://xxx.xxx.com:443/stashes"}
{"timestamp":"2018-01-05T16:44:22.924670354Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func1","line":25},"message":"Dial started for request https://xxx.xxx.com:443/stashes: tcp <IP_ADDRESS>:443"}
{"timestamp":"2018-01-05T16:44:22.925608978Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func2","line":31},"message":"Dial done with error=nil"}
{"timestamp":"2018-01-05T16:44:22.930356705Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func5","line":43},"message":"TLS handshake done with error=nil"}
{"timestamp":"2018-01-05T16:44:22.930406148Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func3","line":34},"message":"Successful connection details: {Conn:0xc4203e2a80 Reused:false WasIdle:false IdleTime:0s}"}
{"timestamp":"2018-01-05T16:44:22.932949579Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func4","line":37},"message":"Got first response byte for the request"}
{"timestamp":"2018-01-05T16:44:22.933130305Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest","line":61},"message":"Length of response body: 2 bytes"}
{"timestamp":"2018-01-05T16:44:22.933271512Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest","line":85},"message":"Closing connection"}
{"timestamp":"2018-01-05T16:44:22.933336989Z","level":"debug","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*Sensu).getSlice","line":54},"message":"GET https://xxx.xxx.com:443/silenced"}
{"timestamp":"2018-01-05T16:44:22.940724429Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func1","line":25},"message":"Dial started for request https://xxx.xxx.com:443/silenced: tcp <IP_ADDRESS>:443"}
{"timestamp":"2018-01-05T16:44:22.941741519Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func2","line":31},"message":"Dial done with error=nil"}
{"timestamp":"2018-01-05T16:44:22.946119727Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func5","line":43},"message":"TLS handshake done with error=nil"}
{"timestamp":"2018-01-05T16:44:22.946194265Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func3","line":34},"message":"Successful connection details: {Conn:0xc42003bc00 Reused:false WasIdle:false IdleTime:0s}"}
{"timestamp":"2018-01-05T16:44:22.948997625Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func4","line":37},"message":"Got first response byte for the request"}
{"timestamp":"2018-01-05T16:44:22.949115931Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest","line":61},"message":"Length of response body: 2 bytes"}
{"timestamp":"2018-01-05T16:44:22.949256798Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest","line":85},"message":"Closing connection"}
{"timestamp":"2018-01-05T16:44:22.949326846Z","level":"debug","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*Sensu).getSlice","line":54},"message":"GET https://xxx.xxx.com:443/checks"}
{"timestamp":"2018-01-05T16:44:23.021802252Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func1","line":25},"message":"Dial started for request https://xxx.xxx.com:443/checks: tcp <IP_ADDRESS>:443"}
{"timestamp":"2018-01-05T16:44:23.022856104Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func2","line":31},"message":"Dial done with error=nil"}
{"timestamp":"2018-01-05T16:44:23.027906845Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func5","line":43},"message":"TLS handshake done with error=nil"}
{"timestamp":"2018-01-05T16:44:23.027963094Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func3","line":34},"message":"Successful connection details: {Conn:0xc4201d6700 Reused:false WasIdle:false IdleTime:0s}"}
{"timestamp":"2018-01-05T16:44:23.031447122Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest.func4","line":37},"message":"Got first response byte for the request"}
{"timestamp":"2018-01-05T16:44:23.031560773Z","level":"httptrace","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*API).doRequest","line":61},"message":"Length of response body: -1 bytes"}
{"timestamp":"2018-01-05T16:44:23.031661187Z","level":"warn","src":{"func":"github.com/sensu/uchiwa/uchiwa/sensu.(*Sensu).getSlice","line":59},"message":"GET https://xxx.xxx.com:443/checks returned: unknown content length of -1"}
{"timestamp":"2018-01-05T16:44:23.031680391Z","level":"debug","src":{"func":"github.com/sensu/uchiwa/uchiwa/daemon.(*Daemon).fetchData","line":96},"message":"unknown content length of -1"}
{"timestamp":"2018-01-05T16:44:23.031695247Z","level":"warn","src":{"func":"github.com/sensu/uchiwa/uchiwa/daemon.(*Daemon).fetchData","line":97},"message":"Connection failed to the datacenter xxx"}
but curl is working fine from the same location :

Trying <IP_ADDRESS>...
TCP_NODELAY set
Connected to xxx.xxx.com (<IP_ADDRESS>) port 443 (#0)
ALPN, offering http/1.1
successfully set certificate verify locations:
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: none
TLSv1.2 (OUT), TLS handshake, Client hello (1):
TLSv1.2 (IN), TLS handshake, Server hello (2):
TLSv1.2 (IN), TLS handshake, Certificate (11):
TLSv1.2 (IN), TLS handshake, Server key exchange (12):
TLSv1.2 (IN), TLS handshake, Server finished (14):
TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
TLSv1.2 (OUT), TLS change cipher, Client hello (1):
TLSv1.2 (OUT), TLS handshake, Finished (20):
TLSv1.2 (IN), TLS change cipher, Client hello (1):
TLSv1.2 (IN), TLS handshake, Finished (20):
SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
ALPN, server did not agree to a protocol
Server certificate:
...

TCP_NODELAY set
Connected to xxx.xxx.com (<IP_ADDRESS>) port 443 (#0)
ALPN, offering http/1.1
successfully set certificate verify locations:
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: none
TLSv1.2 (OUT), TLS handshake, Client hello (1):
TLSv1.2 (IN), TLS handshake, Server hello (2):
TLSv1.2 (IN), TLS handshake, Certificate (11):
TLSv1.2 (IN), TLS handshake, Server key exchange (12):
TLSv1.2 (IN), TLS handshake, Server finished (14):
TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
TLSv1.2 (OUT), TLS change cipher, Client hello (1):
TLSv1.2 (OUT), TLS handshake, Finished (20):
TLSv1.2 (IN), TLS change cipher, Client hello (1):
TLSv1.2 (IN), TLS handshake, Finished (20):
SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
ALPN, server did not agree to a protocol
Server certificate:
...
Server auth using Basic with user 'admin'

GET /stashes HTTP/1.1
Host: xxx.xxx.com
Authorization: Basic YWRtaW4tZXNzaWxvci1zZW5zdS1hcGk6WFdPaDV4MUQxS1JaWHBtNGFacWo=
User-Agent: curl/7.57.0
Accept: /

< HTTP/1.1 200 OK
< Server: nginx/1.13.5
< Date: Fri, 05 Jan 2018 20:02:59 GMT
< Content-Type: application/json
< Content-Length: 2
< Connection: keep-alive
< Access-Control-Allow-Credentials: true
< Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization
< Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
< Access-Control-Allow-Origin: *
<

Connection #0 to host xxx.xxx.com left intact

Context

not able to upgrade to 1.1.0

Your Environment

Uchiwa version used: several (0.26.0 and over)
Sensu version used: 1.1.1
Operating System and version (e.g. Ubuntu 14.04): alpine

you can use my fork in the meantime : https://github.com/jpoizat/uchiwa it works and contains everything but the change that causes me an issue...

Thank you


Replace m2r2 with sphinx_mdinclude

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 97.562%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
4842

Relevant Lines:
4963

💛  - Coveralls

@hsinfan1996 the test currently failing is fixed in #977. If you review it, we can merge it quickly and then this one.


add ignoreMethods option

pull request for: https://github.com/googleapis/cloud-trace-nodejs/issues/919

I signed it!


no action after submitting a bid

I have participated in the auction for "exrnnrxe".
When I click "bid", then it seems to be processing, i.e. the button turns into "bidding". However, after a couple of second it turns back to "bid".
I have not done anything, but I have Metamask open.
I am on a Mac version 10.10 and have used Chrome.

Can you please open the developer console in chrome (Command+Shift+I) and copy any error messages and logs you see and paste them into this bug?

 Now checking for events since block 3647922
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207 launchRatio 0.0016781568287245969
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207 name: exrnnrxe
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:3 Exception from Tracker afterFlush function:
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:3 ReferenceError: BigNumber is not defined
at t (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207)
at o (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207)
at h.View. (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207)
at 76e77ac50d95382f4462038064ccd3eaf1692ca6.js:106
at Function.e._withTemplateInstanceFunc (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:107)
at 76e77ac50d95382f4462038064ccd3eaf1692ca6.js:106
at Object.h._withCurrentView (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:106)
at n (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:106)
at o.Computation._compute (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:55)
at new o.Computation (76e77ac50d95382f4462038064ccd3eaf1692ca6.js:55)
SourceSansPro-ExtraLightIt.otf Failed to load resource: the server responded with a status of 404 (Not Found)
Simple-Line-Icons.woff Failed to load resource: the server responded with a status of 404 (Not Found)
Simple-Line-Icons.ttf Failed to load resource: the server responded with a status of 404 (Not Found)
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207 upsert exrnnrxe 0
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! roselandfurniture
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! untrochaic
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! vvoprose
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! screencast
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! vocicultural
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! elafoon
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! gametea
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! journeyworker
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! freedomhacker
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! mustafaercel
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! exrnnrxe
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! network1sports
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! iflashgame
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! payunity
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! groupseres
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! goldenlion
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! zhifubao
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209
Watched name auction started! exxtrafamous
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207 secret<PHONE_NUMBER>208349681533606912746492127646873890823641292963375000129027367163242847354062957192882
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207 Dummy hashes not working undefined
376e77ac50d95382f4462038064ccd3eaf1692ca6.js:209 update Reveal Names:

76e77ac50d95382f4462038064ccd3eaf1692ca6.js:207 secret<PHONE_NUMBER>190557321425524491038213634901481404364393298027625317457027031501223552348097233743449
76e77ac50d95382f4462038064ccd3eaf1692ca6.js:209 update Reveal Names:

contentscript.js:2454 Error: PortDuplexStream - disconnected
at PortDuplexStream._write (contentscript.js:207)
at doWrite (contentscript.js:5016)
at writeOrBuffer (contentscript.js:5005)
at PortDuplexStream.Writable.write (contentscript.js:4943)
at PostMessageStream.ondata (contentscript.js:4088)
at PostMessageStream.EventEmitter.emit (contentscript.js:2454)
at readableAddChunk (contentscript.js:3759)
at PostMessageStream.Readable.push (contentscript.js:3718)
at PostMessageStream._onMessage (contentscript.js:3185)

This should be fixed now; please reopen if it's still not working for you.


[Gally]: master <- dev

Automatically created by Git-Ally

:tada: This PR is included in version 3.0.29 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Or not? We could use SugarSS with PostCSS for now.

Well, it seems like porting our color functions to Postcss will be a clusterfuck so let's hold off on that for now.

Soooooo thanks to the good people of the PostCSS gitter, it is in fact possible to replicate the color functions with some PostCSS plugins, yay!
See:
https://github.com/GitScrum/postcss-at-rules-variables
https://github.com/ben-eb/postcss-color-yiq

After further consideration, we will stay with Gulp + Sass for the time being until Fly is more stable.


Enhancements

Pin to a single block when fetching states
Allow to specify original and fork chain name
Remove parachain scheduler absolute block number

Thanks for the changes @h4x3rotab. I've merged them in https://github.com/maxsam4/fork-off-substrate/pull/51 with slight tweaks.
Apologies for the delay.


Reports API

Meta bug for Reports API. Reference: https://docs.microsoft.com/en-us/graph/api/resources/report?view=graph-rest-1.0

[ ] Microsoft Teams device usage #232
[ ] Microsoft Teams user activity #232
[ ] Outlook activity #233
[ ] Outlook app usage #233
[ ] Outlook mailbox usage #233
[ ] Office 365 activiations #234
[ ] Office 365 active usres #234
[ ] Office 365 groups activity #234
[ ] OneDrive activity #235
[ ] OneDrive Usage #235
[ ] SharePoint activity #235
[ ] SharePoint site usage #235
[ ] Skype for Business activity #236
[ ] Skype for Business device usage  #236
[ ] Skype for Business organizer activity #236
[ ] Skype for Business participant activity #236
[ ] Skype for Business peer-to-peer activity #236
[ ] Yammer activity  #237
[ ] Yammer device usage  #237
[ ] Yammer groups activity #237

How do you plan to implement them ? I will have to fetch and parse some of them for work soon so if you can describe how you would wish to see them implemented I could kill 2 birds with 1 stone.

How do you plan to implement them ? I will have to fetch and parse some of them for work soon so if you can describe how you would wish to see them implemented I could kill 2 birds with 1 stone.

I believe some, if not most, are already done regarding these. This ticket is somewhat older, and was added before we started parsing and using OpenApi files for Microsoft graph in order to implement the api methods. I try to go through and update or close tickets like these. I need to check what is currently included from this list so here in the next few days ill get back to you on that. Is there a specific graph Api your looking to use?

I don't have the full list of reports I'll need because specs are still being written but I already now I'll need

getOffice365ActivationsUserDetail
getOffice365ActiveUserDetail  (both by period and date )
most of the applications activity reports (Teams, OneDrive, Outlook, ...) by period and date

I don't have the full list of reports I'll need because specs are still being written but I already now I'll need
* getOffice365ActivationsUserDetail

* getOffice365ActiveUserDetail  (both by period and date )

* most of the applications activity reports (Teams, OneDrive, Outlook, ...) by period and date

You can get activity reports for Teams and OneDrive already, and use OData queries to get by date. I will need to get back to you on the others.

So the Reports API has all that as shown in the docs. I have a branch that will include implementation for the reports API and get back to you hopefully within a few weeks on using it.

Sounds great !
Do tell if you need help for the manual parts or for testing.

@DevLazio Hey, ive been working on getting these done but I have run into a few snags. What I didnt realize at first is that most of these Report API requests are for getting CSV files of the content, and that makes it somewhat difficult to generate given that there has to be some indication in the OpenAPI file that says these reqeusts are going to be a file that you can download after a redirect.
Getting the response in a file isn't an issue and there are other APIs that are covered that also do redirects to a download page. But the way requests like this work are different and so the code that is generated for downloadable files uses a different macro.
I am currently going through the OpenAPI config for the Graph API's to see if I can find something that can be used to identify these types of requests. It may be possible that I can use the 302 code that the response comes back with but that is really only meant to say that the request is a redirect with the header having a location field of URL to redirect to, not that its going to be a downloadable file on the other end. Ill keep you updated on what I can find and decide to do.

Thanks for the update.
On the online doc they are noted with a Return Type of "Stream" but I can't find that in the OpenApi config.

Although it looks like every request that returns a "#/components/schemas/microsoft.graph.report" schema is a CSV file, but that doesn't mean that the opposite is true.

The "Content-Disposition" header of the 2nd response might be a better indication if you're going that way.

Yeah, I found the reports schema and one other components specific part in the OpenAPI config will at least work for the reports API. Working out a few issues now on it and possibly after the holidays is when it looks like ill be able to finish it.

@DevLazio If you want, you can start testing things out on this branch.
I still need to clean up a few things, such as some of the method names. Microsoft, for whatever reason, puts the same name for two different requests and so they put random characters on the end of their names in the OpenAPI config instead of just naming them according to what they do specifically.
For instance, you can get a report of active user counts by date or by period. For getting it by date, the path is /reports/getOffice365ActiveUserDetail(date={{id}}) and the method name they gave is get_office_365_active_user_detail_d_389. For getting it by period the path is /reports/getOffice365ActiveUserDetail(period='{{id}}') and the method name they gave is get_office_365_active_user_detail_6_8ad.

Awesome ! Thanks a lot, I'll start testing right away.
That's some weird naming scheme indeed.

Okay, I think I found why the program hangs here : is_overwrite_existing_file is trying to acquire the mutex lock but can't because it has already been acquired here.
Adding drop(request); just above seems to resolve the issue (we get an error if overwrite_existing_file has not been set, file is overwritten otherwise)

@DevLazio Worked on the issue with getting file content a bit more. I updated my branch so that you can now choose whether you want to get the content as text, bytes, or to download the file.

Just tested and it's exactly what I needed, thank you!
As a side note, I noticed that errors returned are not Send + Sync anymore. I used to return
std::result::Result<T, Box<dyn std::error::Error + Send + Sync>>
from functions using graph_rs and I now have to return
std::result::Result<T, Box<dyn std::error::Error>>.
I don't need the Send + Sync traits because I use the async version, just wanted you to know if that was not intentional.

Just tested and it's exactly what I needed, thank you!
As a side note, I noticed that errors returned are not Send + Sync anymore. I used to return std::result::Result<T, Box<dyn std::error::Error + Send + Sync>> from functions using graph_rs and I now have to return std::result::Result<T, Box<dyn std::error::Error>>. I don't need the Send + Sync traits because I use the async version, just wanted you to know if that was not intentional.

hmm, weird. I don't remember removing anything that was intentionally labeled with send + sync but there could also be several reasons for that happening. Im honestly not sure on this yet.

Going to go ahead and close out this ticket.


Fix order of "On Enter"/"On Leave" execution

Fixes issue #1219 of GB Studio.

Note, that it should not make much difference, because scripts are executed in the parallel contexts.

I didn't have time to do more testing (busy with work and life stuff :/ ) but the original report (https://github.com/chrismaltby/gb-studio/issues/1219) that this was working fine on 3.0.3. However trigger.c hasn't changed between that version and 3.1 other than cosmetic changes. Given what toxa said, the issue should be somewhere else then, right?

yes, this might help in most of the cases, but there is no guarantee, that is what i am saying. you should write your code somehow not taking into account the fixed order of the enter/leave events.

Was this always the case or has there been a specific change that modified the order behaviour?

script_execute() spawns a concurrent thread, thus always.

in 3.0 there was a problem with scripts, that sometimes (very often) threads were not spawned at all (spawned, but terminated immediately: https://github.com/chrismaltby/gbvm/commit/d81252195eb56fee4f85ad41ac5253d42e13aca6).

Still seems to be an issue for people: OnEnter is not triggered properly with adjecent triggers. I am also having issues in my game where 8x8 coins are floating next to each other.

@nielsderijk I replied to #1345 which I think is the issue for the message you mention.
@untoxa could it be that, because trigger scripts are locked the fact that they run concurrently doesn't matter and they'll consistently execute on a given order. This is that when going from Trigger A to Trigger B: first Trigger B.On Enter and then Trigger A.On Leave?
It that's the case I think merging this PR will still make sense because A.On Leave > B.On Enter makes more sense than B.On Enter > A.On Leave.

Closing as it is out of date. May consider resubmitting in the future.


Usages of include/require in expressions incorrectly marked as errors

From new parser, #357
include 'foo.php';          // No error
include('foo.php');         // No error
if(include 'foo.php'){}     // No error
$bar = include 'foo.php';   // Error
$bar = (include 'foo.php'); // No error
@include 'foo.php';         // Error
@(include 'foo.php');       // No error
@include('foo.php');        // Error
!include 'foo.php';         // Error

I wonder whether this should be an tolerant-php-parser issue instead?

Actually that's pretty likely... will track it here until I look into it

This issue was moved to Microsoft/tolerant-php-parser#146


New update for Sign-in Frequency every time - additional support scenario -

[Enter feedback here]
Internal documents show that the feature is now supported additional scenarios below.  Could you please update because our customer asks the public evident support.
AVD,
sensitive app
VPN
Thanks

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

ID: 9561a367-20d8-62e9-57e5-694bab4c0878
Version Independent ID: a7c757e0-052b-fc42-70c5-030081baa573
Content: Configure authentication session management - Microsoft Entra ID
Content Source: docs/identity/conditional-access/howto-conditional-access-session-lifetime.md
Service: active-directory
Sub-service: conditional-access
GitHub Login: @MicrosoftGuyJFlo
Microsoft Alias: joflore

@ShiChen872
I've delegated this to @MicrosoftGuyJFlo, a content author, to review and share their valuable insights.

Resolved in https://github.com/MicrosoftDocs/entra-docs-pr/pull/1134
Following up offline internally.
#please-close


Add CircleCI config

@natebird what's the motivation for adding circle-ci?  Are you planning to keep travis?

@olbrich I find Circle to be much faster and easier to configure. We'll run both for now.


Threading issue

I have been seeing a crash occur on Android devices (4.4, 5.0 and 6.0) and I have also seen the crash on an iOS 10.2 Simulator now. I am fairly sure there is an issue with my threading implementation however I wanted to double check whether there is a known issue or something obvious with the error that I am seeing. I have attached a copy of the log as it is a bit bit to place in here.
threading crash log.txt
I am using the sqlite-net-sqlcipher package from nuget at version 1.5.176-beta.
I basically have an app that downloads data from a server and places it on the file system, sometimes checking what is in the DB but infrequently (and I believe I have disabled that). Next once the user logs in the files are processed and stored in the DB.
I am using SQLiteAsyncConnection to handle the connection pooling for the multi-threading as previously using the SQLiteConnection we kept getting Busy errors from the db layer.
This is how we access the Connection property.
    protected SQLite.SQLiteAsyncConnection Connection
    {
        get
        {
            if (this.connection == null)
            {
                this.connection = new SQLite.SQLiteAsyncConnection(this.GetDatabasePath());

                // Only use the key if one has been supplied.
                if (!string.IsNullOrWhiteSpace(this.key))
                {
                    // Set the database access key.
                    this.connection.SetKey(key);
                }
            }

            return this.connection;
        }
    }

And just to cover the SetKey method is an extension method that I created:
    public static void SetKey(this SQLite.SQLiteAsyncConnection connection, string key)
    {
        string safeKey = key;

        if (key == null)
        {
            safeKey = "NULL";
        }
        else
        {
            safeKey = key.Replace("'", "''");
        }

        // The "PRAGMA key" is the command SQLCipher Encryption key
        // This statement will not raise exception if the key is wrong
        connection.QueryAsync<int>($"pragma key = '{safeKey}'");
    }

Is there anything obvious from the log as to what is causing the issue?

It was something that may be an obvious no no. I was creating lots of SQLiteAsyncConnections rather than creating a single one and using that. Using the single one has resolved my issue.


Make numba_histogramdd work as np.histogramdd

This pull request fixes the inconsistant behaviour of the function _hist_from_bins. The aim is to mimic the behaviour of np.histogramdd in 'numba_histogramdd'.
I believe this to be the best solution as it is easier to implement for non-linear bins. Converting a list of center points in a non-linear array to the ranges of the bins defined around them can lead to unexpected behaviour, different from the users expectation.
By explicitly requiring the bins edges and not the bins centers leaves more space to the user to define peculiar binnings.
Furthermore, I added test functions, which ensure the behaviour of numba_histogramdd to behave as np.histogramdd.
The only remaining exception is the fact we do not (yet) support weights and density as np does.
If agreed upon, this closes #67 and the long discussion about the inconsistent binning behaviour

You can enforce a failed test by setting e.g.
sample1d = np.array([[x] for x in np.linspace(-2,2,1001)])

I added a fix for this, please have a look.

I added a fix for this, please have a look.

This indeed does what you were mentioning, and adds values on the right edge to the last bin.
However, even though this is the numpy default behaviour, do we want this? does it not make the last bin slightly bigger than all the others, leading to possible artifacts in analysis? what do you think?

However, even though this is the numpy default behaviour, do we want this? does it not make the last bin slightly bigger than all the others, leading to possible artifacts in analysis? what do you think?

Well, it's only an infinitisimal increase, as it only adds the edge of "size" 0 itself. As the goal is to make the two functions equal in behavior, I would go for this. Otherwise, the tests might randomly fail, which is not what we want.

Ok, I agree! I would wait for an opinion from the others and eventually merge.

2. Do we want to return the center of the bins here? How does xarray actually handle plotting of 2D arrays with non-equidistant axes?

Xarray interprets axis nodes apparently as the bin centers, so we should calculate and return these. I will also crosscheck that this is the same convention in nexus, but I believe so.

Xarray interprets axis nodes apparently as the bin centers, so we should calculate and return these.

I thought the same, but we should probably not by default return the center values of the bins. The function numba_histogramdd, just as the original numpy version, returns the bins and the edges.
When constructing the binned array the simplest solution would be as you suggest to return the center values of the bins. However we should leave the option of representing the axes as ranges (xarrayallows this, see results of xr.groupby, similar to pandas). It might help in some special cases.
We could then add a function which computes the center bins for all axes and have it easy accessible. It could also be the same function that does this when generating the xarray in the first place.

I think the bugfix is done now, so I suggest to merge this one and do further improvements and code revisions in a new branch/pull request. @steinnymir please merge if you agree.

I created a new issue for the further fixes


[FEATURE] add URL validation using ZOD using Regex [FRONTEND & BACKEND]

Description
In the "Add Project" modal, we have a field "Live URL". It's currently doesn't have URL validation. Use basic URL validation like URL should be starting with https:// or www etc.

In the "Profile" page if we goto our own profile, we able to see "Edit Profile" button. Upon clicking on the button it will show a edit profile sheet. There we have - github, linkedin, twitter and website fields. It's currently doesn't have URL validation. Use basic URL validation like URL should be starting with https:// or www etc.  in case of social links like github, twitter etc check the domain as well, if it matches.

Let us know if you have any doubt. Comment here so that we can assign it to you. :)

@rohitdasu  If this issue is not assigned can you please assign it to me, I have done this same issue in my recent opensource project wanderlust.

@rohitdasu  If this issue is not assigned can you please assign it to me, I have done this same issue in my recent opensource project wanderlust.

Sure, you can work on it.

@rohitdasu Added validation using zod in both frontend and backend and made a pull request regarding issue #432

@rohitdasu You checked my Pr?

@Akash5908 i will check later today. Sorry for the delay

@rohitdasu I solved the build issue and made a new pull request plz check.

@rohitdasu I solved the issue and made a pull request plz check.


[gbc] Switch from Parsec to Megaparsec

gbc can only be built with GHC >= 8.0.1

stack resolver has been updated

Not working on travis, will look after https://github.com/Microsoft/bond/pull/649 gets merged.

This page is handy to see the definitions of the parsec parsers that we used to use (specially number related) in case you want to deeply code review the Lexer.hs https://hackage.haskell.org/package/parsec-3.1.11/docs/Text-Parsec-Token.html

This is the travis error I'm hitting https://travis-ci.org/Microsoft/bond/jobs/290239737#L2191

To debug the Travis error, try unsetting the CC and CXX variables that we point to ccache. Based on the results of that, we can figure out our next step.

I think I've figured out the problem. We should not be doing apt-get install haskell-stack and instead should install the latest version by doing wget -qO- https://get.haskellstack.org/ | sh as described here. Also will need to pass --allow-different-user to stack setup and stack build.

I'm 80% certain we need a more recent Stack build, waiting on https://github.com/Microsoft/bond/pull/673 to be merged and dockerfile to be udpated


Added 5.4 (LTS) branch

Added new branch with all links now pointing to 5.4, fixed some mixing links in the miscellaneous section.

Closing for inactivity


feat: CT-48 Add polling to Contentful webhook

My only slight concern is that a fairly common pattern is to unpublish and then delete immediately, which would cause the polling to throw "Not Found" if the entry had been deleted before the webhook was processed.


Keyboard Macros

📝 Provide a description of the new feature
I would love to have Keyboard Manager to feature keyboard macros.

Good idea, Duplicate of #5668


Enable CD for pipeline-maven-plugin

Description
https://github.com/jenkinsci/pipeline-maven-plugin Preparation for enabling CD releases
Follow up of https://github.com/jenkins-infra/repository-permissions-updater/pull/2608, as it was incomplete (missing components)
FYI @alecharp @aheritier
Submitter checklist for adding or changing permissions

Always

[x] Add link to plugin/component Git repository in description above

For a newly hosted plugin only

[ ] Add link to resolved HOSTING issue in description above

For a new permissions file only

[ ] Make sure the file is created in permissions/ directory
[ ] artifactId (pom.xml) is used for name (permissions YAML file).
[ ] groupId / artifactId (pom.xml) are correctly represented in path (permissions YAML file)
[ ] Check that the file is named plugin-${artifactId}.yml for plugins

When adding new uploaders (this includes newly created permissions files)

[ ] Make sure to @mention an existing maintainer to confirm the permissions request, if applicable
[ ] Use the Jenkins community (LDAP) account name in the YAML file, not the GitHub account name
[ ] Make sure to @mention the users being added so their GitHub account names are known if they require GitHub merge access (see below).
[ ] All newly added users have logged in to Artifactory at least once

Reviewer checklist (not for requesters!)

[ ] Check this if newly added person also needs to be given merge permission to the GitHub repo (please @ the people/person with their GitHub username in this issue as well). If needed, it can be done using an IRC Bot command
[ ] Check that the $pluginId Developers team has Admin permissions while granting the access.
[ ] In the case of plugin adoption, ensure that the Jenkins Jira default assignee is either removed or changed to the new maintainer.
[ ] If security contacts are changed (this includes add/remove), ping the security officer (currently @Wadeck) in this pull request. If an email contact is changed, wait for approval from the security officer.

There are IRC Bot commands for it

Thanks @bguerin
Effectively we had a big doubt with @alecharp about the setup to do for a multi-module project. Everything is built from the parent on the CI but everything should be released together. There is probably a documentation improvement to do to cover this case even if rarely encountered


Editor: Parenthesis highlighting fails

For example:

It seems like it does not ignore strings and comments..
Also, I have noticed that parenthesis highlighting is offsetted by -1 on the first line (see ZSPU and ZCPU images above).

Duplicate of #447.


Add version flag for volume replication operator

Other than currents flags in /manager, need a new flag which displays version -version.
It will be helpful in our case, where we are building pipelines for image creation of csi-addons components, once the image is built, if we have the version displayed, it will be easy to add that as a verification step in pipeline.

Looks like a good suggestion. added good-first-issue

As add more details like below
Git commit, Go build,platform details


Feature Request: Uppercase

Hello,
Could you do an uppercase version of this package please?
Thank you,
Thomas

No, that would be a lot of effort but doesn't make the point any better!


Reformer Embedding Dialogue Policy (REDP)

Description of Problem: Google announced an optimization of Transformers, which is the based of Rasa's embedding policy with reduced complexity and equivalent results according to their accompanying article. Offering this policy is a great improvement since training models represents costs for all Rasa's users.
Overview of the Solution:
Maintain the Embedding Policy but instead of using Transformers, use the Reformer implementation (this is provided by Trax Python library).

Definition of Done:

[x] Tests are added
[x] Feature described the docs
[x] Feature mentioned in the changlog

thanks @staticdev for the suggestion! I think it's a cool idea, but the scalability of the reformer (as I understand it without having read the paper in detail) is related to the length of a sequence. Since we don't have many stories with hundreds or thousands of turns, I don't think it's the most urgent thing for us to work on.


Suggestion for Fine-Grained Batch Control e.g per_device_train_batch_size or mini_batch_size

Hello there,
First, I'd like to express my appreciation for your excellent work on this project.
While experimenting with PPO/RW using this repository, I consistently encounter Out of Memory (OOM) errors with the following configuration:

Model: LLaMA 7B
Tensor Parallelism (TP): 1
Pipeline Parallelism (PP): 8
Global Batch Size (GBS): 256
Sequence Length: 8192

This error is unexpected given the relatively small model size and parallelism configuration.
The project currently offers an n_mbs setting, which splits data batches into n_mbs chunks. However, this approach has limitations:

Difficulty in determining the exact batch size after data packing
To set n_mbs correctly without knowing  globale batch size is very hard

After reviewing the documentation, I believe a crucial feature is missing:
per_device_train_batch_size or mini_batch_size
A direct mini_batch_size setting would provide more intuitive and precise control over batch sizes across different parallelism configurations.
This setting would allow users to specify the mini-batch size for each Data Parallel (DP) rank, providing several benefits:

Fine-grained control in MP/PP/TP scenarios (e.g., virtual parallel)
Better resource utilization (e.g., a 7B parameter model shouldn't require PP > 2 if mini_batch_size = 1)

Would it be possible to consider adding this feature in a future update?

Hi dechun, sorry for the late reply.
Your suggestion is quite reasonable. I will raise a PR later. You can also make the change if you would like to contribute to this project.
I'd like to make some comments more about your scenario. Some tips here:

Set "ppo.gen.force_no_logits_mask=True", otherwise the mask will occupy a huge amount of GPU memory but turns out to have minor learning performance improvement.

Use the identical parallel strategy if your resource budget is tight (i.e., allocation_mode="d1m8p1", I believe TP is more memory-efficient than PP though). This will disable parameter reallocation but still enable offloading.

For now, calculate n_mbs based on per_device_train_batch_size=1. For PPO training, the global batch size is per_device_train_batch_size * (pp_size * 2) * dp_size * ppo_n_mbs * n_mbs. For generation or inference, it is per_device_train_batch_size * pp_size * dp_size * n_mbs. Though inconvenient, I think setting per_device_train_batch_size=1 implicitly will fix the OOM issue.

If OOM still happens, it would be helpful if you can share the log and CLI configuration. Discussions are welcomed.


Multi-GPU support?

First of all, I want to say great work!
I was just wondering if Madrona supports a host PC with multiple GPU devices? According to my best understanding, this feature is not supported; from a cursory glance through the codebase, cudaSetDevice() is used to set the current GPU device to use, but I haven't figured out where, when, and how many times it's being called. If it's being called just once, then it implies only 1 GPU is being used..
Please correct my understanding! Thanks!

Madrona only uses one GPU for each batch simulator instance. You can create multiple batch simulators on different GPUs (in different processes, or multiple processes) to do multi-GPU training.

Understood! I was thinking about an application where the available memory on a single GPU is not enough (i.e 1e5-1e6 entities), hence, the use of multiple devices to overcome this limitation (similar to a distributed simulation in a sense).
Am I correct to assume that all data in the registry table (i.e. where components, entity id's are stored) is globally accessible from each cuda block? If so, I suppose the major hurdle is how to optimally communicate data between separate  cuda devices (and to limit this as much as possible). A naive approach would be extremely inefficient...sounds like it could be another chapter in a certain thesis :)

Yeah, for very large simulations work would need to be done to allow ECS state to be shared between GPUs efficiently. Yep the ECS state is all in global CUDA memory. For simple parallel for ECS systems I can think of pretty simple strategies that would work for multi-GPU pretty efficiently. The challenges always arise when reductions / global operations across the simulation are necessary - then you would need to do something more intelligent to minimize cross GPU memory traffic.
We're definitely interested in applications that would require scaling up Madrona to efficiently leverage a rack of GPUs (rather than a bunch of individual GPUs working largely independently). This work isn't super high priority to us right now, but if someone comes to us with a specific application that would be enabled by better multi-GPU functionality I'd be happy to chat.

Closing this for now, feel free to open another issue or email me if you want to discuss further!


Martin Yeo comments

Cartopy Exercise
https://github.com/SciTools/courses/blob/master/course_content/cartopy_course/cartopy_intro.ipynb?short_path=0ebf141#L392
This could be a failing on my part, but I made an assumption that the information I needed about pole rotation would be within this notebook, and that I had therefore missed some crucial point. It was 20 minutes before I resolved to look at the cartopy documentation

Cube Plotting 5.3.3
https://github.com/SciTools/courses/blob/master/course_content/iris_course/5.Cube_Plotting.ipynb?short_path=065890a#L355
Found this misleading. A scatter plot of air temperature vs longitude would show every temperature at each longitude, instead the proposed solution just plots a 1D slice. I'm assuming the former is possible but inappropriate at this knowledge level, which is why a 1D slice is shown, but in that case the exercise text could be clearer

Advanced Concepts 7.4
https://github.com/SciTools/courses/blob/master/course_content/iris_course/7.Advanced_Concepts.ipynb?short_path=bdb08ee#L497

Incomplete sentence

Now have a CLA, so this should be able to go through...


Windows Issues (multiplication of stdout), colors/animations not working

Multiplication of stdout (I traced this issue down to the log-update package but I could be wrong). Seems like the package doesn't know what to cut from the output (wrong terminal height or something).
Colors and animations are not showing (I can set an env variable to bypass this but the multiplication bug is still there). Again, I believe this is a windows and dependencies issue. This happens with regular git hooks created manually, not only with husky.
I've looked a bit into the code and the issues is related to the check for tty process.stdout.istty which is undefined in my case when the process is starting from a hook. As such, the fallback renderer is used.
Thanks!

For it only outputs multiple times on a pre commit hook.

Hello @AlexanderOpran Did you find a solution for this?


Source cadvisor without Kubernetes?

Hi, is there a chance to get the old source behavior back. The one using etcd and cadvisor directly?

Looking for guidance on this as well - especially for testing a local heapster build. It would be useful to be able to test against a running cAdvisor.

Unfortunately this is out of the scope of the Heapster.
cc @mwielgus


GitHub Releases

Any chance you can use GitHub Releases for this project, rather than just tags? I'd like to be able to use the github-release concourse resource to trigger updates to our docker images based on new versions of bosh-init. Unfortunately right now curl https://api.github.com/repos/cloudfoundry/bosh-init/releases returns an empty array, so concourse doesn't find any releases to watch.

:+1:


Slow in the "source node and transform node" phase when has large pages amount

How about reducing data before sourceNodes?
ex: have a config to filter the slug.

@nonjene Thank you for your suggestion. Do you mind providing us with more details so that we can have a better understanding to investigate what you shared with us?


sbt issue with JLine

Hi,
I insatalled sbt as described , but i got this issues:
getting Scala 2.10.6 (for sbt)...
:: retrieving :: org.scala-sbt#boot-scala
	confs: [default]
	5 artifacts copied, 0 already retrieved (24392kB/59ms)
java.lang.NoClassDefFoundError: jline/TerminalFactory
	at sbt.ConsoleLogger$.ansiSupported(ConsoleLogger.scala:123)
	at sbt.ConsoleLogger$.<init>(ConsoleLogger.scala:117)
	at sbt.ConsoleLogger$.<clinit>(ConsoleLogger.scala)
	at sbt.GlobalLogging$.initial(GlobalLogging.scala:43)
	at sbt.StandardMain$.initialGlobalLogging(Main.scala:61)
	at sbt.StandardMain$.initialState(Main.scala:70)
	at sbt.xMain.run(Main.scala:29)
	at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
	at xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
	at xsbt.boot.Launch$.run(Launch.scala:109)
	at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
	at xsbt.boot.Launch$.launch(Launch.scala:117)
	at xsbt.boot.Launch$.apply(Launch.scala:18)
	at xsbt.boot.Boot$.runImpl(Boot.scala:41)
	at xsbt.boot.Boot$.main(Boot.scala:17)
	at xsbt.boot.Boot.main(Boot.scala)
Caused by: java.lang.ClassNotFoundException: jline.TerminalFactory

Please help.
Regards,

Could you describe exactly what you did, and what environment you have?
There are many ways of installing sbt, and if one of the sbt developers cannot reproduce your problem, it's difficult to help. One thing you could try is wiping out ~/.sbt/boot directory if you have one.

i just wanted to install sbt, so i downloded the last version and launched sbt (unzip and launch ./bin/sbt)
At first i have problems with jline and Jansi librairies (it canot be downloaded due to network issues), do i downloaded these libraries manually and added them to ~/.ivy/cache/{library}
i tried to delete ~/.sbt/boot, but it not helps

At first i have problems with jline and Jansi librairies (it canot be downloaded due to network issues), do i downloaded these libraries manually and added them to ~/.ivy/cache/{library}

ok. Messing with Ivy cache manually is a bad idea. Definitely not part of sbt installation step.


Mobile padding issue on default container

Hello I have noticed that pattern when we don't use any specific container or the static container there si no padding on mobile.
When I use the text block it's all good.

@bosschaert @sdmcraft  @meejain

We will find a better was to handle this later. For now as a work around either use text-block or padded-inline on the block section.


[stable/collabora-code] Fix container exposed port number

What this PR does / why we need it:
Fix pod port, so it won't break livenessProbe an readinessProbe and service if service.port is changed
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #14976

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Title of the PR starts with chart name (e.g. [stable/chart])

/assign @chrisingenhaa

/assign
/ok-to-test
/lgtm
thanks!


Logo request

To claim a logo, please fill the template below. If you have a feature request or bug report, open a blank issue.

Eligibility check
For open source projects

[ ] There are regular commits to my project
[ ] My project has more than one contributor
[ ]  My project has over 100 GitHub stars
[ ]  The git history of my project spans over 1 year

For NGOs

[x] My organization is registered in at least one country
[x] My organization has been existing for over one year

Name of your project/organisation: Vedanta Scandinavia
Link to git repository and/or website: https://www.vedanta.nu
Brief description of your project: We educate anyone interested about the ancient technology of the mind known as advaita Vedanta.
What logo do you want? Provide a link to it:
https://www.librelogos.org/logo/5

@Ultimanubis It's yours!
Thanks


docs: fix dotnet watch code sample

Some text was being included in a code snippet.
When creating a new PR, please do the following and delete this template text:

Reference the issue number if there is one:
Fixes #Issue_Number

The "Fixes #nnn" syntax in the PR description causes
GitHub to automatically close the issue when this PR is merged.

Suggest reviewers if you know who should review the PR, using the GitHub Reviewers UI.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@afnpires  thanks!


can't copy description on completionUI

I am developing an plugin for vscode ,Anyone know why can't copy description on completionUI ,where I can found the code in vscode souce that deal with that ?

This was just fixed yesterday and will be available with the January release cc19a2d
@alexandrudima fyi :smile:

@BleyChen says:

#1945 ,anyone know when this feature will release?

@joaomoreno I don't see how cc19a2d could fix copying a description from the suggestWidget

My mistake, I thought that allowing content widgets to be selectable will solve this issue. But suggest widget uses the tree which disables selection.

@BleyChen You can select the text, but you can't copy. Did I get this correctly?

@joaomoreno  i can't select the text and also can't copy

Closing as not supported.


Knowledge tool gets into a loop of trying to fetch the right file and fails eventually hitting the maximum context length.

Version -  0.10.0-rc2 (0.10.0-rc2)
Steps to reproduce the problem:

Launch chat with default Acorn Desktop Assistant.
Using " Add knowledge" , add 2 files - (Travel and diet pdf in my case)
Asked question  - "what can I have in empty stomach" about information in  diet pdf , for which it gave me the answer from internet tool.
Then I asked question about information in  travel pdf , for which is fetched information from my travel pdf as expected.
Tried to ask the same question from step 3, but this time I asked it to "Can you look up my diet plan doc to find out what can I have in empty stomach "

So i provided the actual file name after which it goes in continuous loop and finally failed with maximum context length is 128000 tokens. exceeded error.
https://github.com/user-attachments/assets/dcfcfa25-ad02-4b8b-ab3d-0e60a937c0f6

@sangee2004 please atttach the pdfs here

Tested with electron build from  commit id -731700663e
I am still seeing the knowledge tool having problems with being able to fetch data from MyFeb12.dpf file.
I see the following error

I have shared the files used for testing with @StrongMonkey .

@sangee2004 can you retest this? I think the latest round of fixes to knowledge may have fixed this

Tested with electron build from commit id -731700663e
When following the steps mentioned in the issue , I am still able to reproduce the issue with Knowledge tool not being able to work in the diet plan pdf even after asking it to use it by providing the name of the document. But i am not seeing the calls go into a continuous loop and trying and failing which resulted in context length exceeding.

Ok, the isue title and description are very much about the continuous loop. Can you either update the title and description to get rid of that part or close this and open a new issue?

Logged the following issue to track the current behavior seen - https://github.com/gptscript-ai/desktop/issues/320
Closing this issue.


Add a conditional compilation flag to disable preconditions

In some situations, like an IDE that runs SwiftSyntax in process, crashing is the worst possible outcome and it’s preferrable to continue running, possibly accepting a misparse. These use cases can disable preconditions in SwiftSyntax using a conditional compilation flag
rdar://108666839

@swift-ci Please test

@swift-ci Please test macOS

@swift-ci Please test Windows

@swift-ci Please test macOS


Error message localization

Feature request
I would like to request the option to localize error and info messages for e-mail auth.
Is your feature request related to a problem? Please describe.
I am using the german localization of the auth ui. However if invalid credentials are entered the error message will be displayed in english. Same goes for the info message that is displayed if a user resets their password.
Describe the solution you'd like
I would like to be able to provide localization strings for all the different messages that the ui might display.
Describe alternatives you've considered
Currently my workaround is to hide the messages and append a pseudo element to display a different error. This feels incredibly janky.

1 for me, it's really weird when all of the UI is in german but then an english error pops up.

@MildTomato  can you tell if there is any option?

@carlosstenzel please read issue #97 and see what I mentioned in point 2.

related to https://github.com/supabase/gotrue/issues/915

Sorry for late response.
Yep, i agree this is really related to https://github.com/supabase/gotrue/issues/915 as @konhi mentions, so we can assign translations easily to error codes.

I needed the translation urgently, so I wrote the following temporary code.
If someone needs translated error messages in a hurry, you might want to consider using the code below.
// * Supabase Auth Error Message Translation
useEffect(() => {
  const observer = new MutationObserver((mutations) => {
    mutations.forEach((mutation) => {
      if (mutation.type !== "childList" || mutation.addedNodes.length === 0)
        return;

      for (const node of mutation.addedNodes) {
        if (
          node instanceof HTMLElement &&
          node.classList.contains("supabase-auth-ui_ui-message")
        ) {
          const originErrorMessage = node.innerHTML.trim();

          let translatedErrorMessage = "<DEFAULT MESSAGE>";
          switch (originErrorMessage) {
            case "To signup, please provide your email":
              translatedErrorMessage = "";
              break;
            case "Signup requires a valid password":
              translatedErrorMessage = "";
              break;
            case "User already registered":
              translatedErrorMessage = "";
              break;
            case "Only an email address or phone number should be provided on signup.":
              translatedErrorMessage = "";
              break;
            case "Signups not allowed for this instance":
              translatedErrorMessage = "";
              break;
            case "Email signups are disabled":
              translatedErrorMessage = "";
              break;
            case "Email link is invalid or has expired":
              translatedErrorMessage = "";
              break;
            case "Token has expired or is invalid":
              translatedErrorMessage = "";
              break;
            case "The new email address provided is invalid":
              translatedErrorMessage = "";
              break;
            case "Password should be at least 6 characters":
              translatedErrorMessage = "";
              break;
          }

          if (!document.querySelector("#auth-forgot-password")) {
            node.innerHTML = translatedErrorMessage;
          }
        }
      }
    });
  });

  observer.observe(document.body, {
    childList: true,
    subtree: true,
  });
}, []);

Thanks for sharing 🙏
Le ven. 28 avr. 2023 à 05:49, hmmhmmhm @.***> a écrit :

I needed the translation urgently, so I wrote the following temporary code.
If someone needs translated error messages in a hurry, you might want to
consider using the code below.
// * Supabase Auth Error Message TranslationuseEffect(() => {
const observer = new MutationObserver((mutations) => {
mutations.forEach((mutation) => {
if (mutation.type !== "childList" || mutation.addedNodes.length === 0)
return;
  for (const node of mutation.addedNodes) {
    if (
      node instanceof HTMLElement &&
      node.classList.contains("supabase-auth-ui_ui-message")
    ) {
      const originErrorMessage = node.innerHTML.trim();

      let translatedErrorMessage = "<DEFAULT MESSAGE>";
      switch (originErrorMessage) {
        case "To signup, please provide your email":
          translatedErrorMessage = "";
          break;
        case "Signup requires a valid password":
          translatedErrorMessage = "";
          break;
        case "User already registered":
          translatedErrorMessage = "";
          break;
        case "Only an email address or phone number should be provided on signup.":
          translatedErrorMessage = "";
          break;
        case "Signups not allowed for this instance":
          translatedErrorMessage = "";
          break;
        case "Email signups are disabled":
          translatedErrorMessage = "";
          break;
        case "Email link is invalid or has expired":
          translatedErrorMessage = "";
          break;
        case "Token has expired or is invalid":
          translatedErrorMessage = "";
          break;
        case "The new email address provided is invalid":
          translatedErrorMessage = "";
          break;
        case "Password should be at least 6 characters":
          translatedErrorMessage = "";
          break;
      }

      if (!document.querySelector("#auth-forgot-password")) {
        node.innerHTML = translatedErrorMessage;
      }
    }
  }
});

});
observer.observe(document.body, {
childList: true,
subtree: true,
});}, []);
—
Reply to this email directly, view it on GitHub
https://github.com/supabase/auth-ui/issues/86#issuecomment-1526945755,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABA5QRJSLZC4NRI2NB2DX3XDM45ZANCNFSM6AAAAAAS5XWJSY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

While working on this, I noticed something very strange: out of all the messages I get from gotrue, only one is translated into multiple languages. (The message appears to be related to sending a password reset email.) Is this by design, and why is only this message translated?

@hmmhmmhm that's interesting, I didn't know this was even translated. We will be working on Auth codes over the coming months to allow for better i18n support.

I ran into the issue too and maybe a good fix would be to add a code field on the error and to document all codes so each of us can handle them as he wants.

Same here, could be an important feature to add. (thanks for the temporary code until the feature.)

also need this!

+1, on this.

+1, on this.

+1 on This

+1 !!!

+!

+1


Investigate Deadlocks from holdingpen/Exceptions dashboard

https://github.com/inspirehep/inspirehep/blob/1311f1e5f14569a242586456c5e2e8cf8a4fdfd4/backend/inspirehep/migrator/tasks.py#L467-L472
Happened only once, if will happen more often then we will have to change this part of migration.


RDocs

Having an issue generating rdocs... is there a fix/workaround?
questmbp:asset-manager quest$ rake doc:plugins
rdoc -o doc/plugins/jrails --title 'Jrails Plugin Documentation' --line-numbers --inline-source --charset utf-8 -T html vendor/plugins/jrails/lib/jrails.rb vendor/plugins/jrails/CHANGELOG
--inline-source will be removed from RDoc on or after August 2009
Parsing sources with 2 thread(s)...
100% [ 2/ 2]  vendor/plugins/jrails/CHANGELOG
Generating Darkfish...
uh-oh! RDoc had a problem:
could not find template "html"
run with --debug for full backtrace
rake aborted!
Command failed with status (1): [rdoc -o doc/plugins/jrails --title 'Jrails...]
(See full trace by running task with --trace)

I know rdoc.gem v2.1.0 has the 'html' template in lib/rdoc/generator/template.
Try rolling back?


kicad: mark broken

kicad: mark broken

logs: https://termbin.com/xeru

that error is fixed by #191887

Sorry. I messed up things. Will review/test.

Fixed by #191887


unclear implementation details with validUntil configuration

I have a client that would like to configure the validUntil setting in the EntityDescriptor of the generated SP metadata.xml. I have been evaluating the use of your library for the project but found some unclear implementation details regarding the setting of validUntil and cacheDuration. I have reviewed your implementation and found that the builder method in the Metadata class does allow you to pass a $validUntil and $cacheDuration value and default to null if they aren't provided.
https://github.com/onelogin/php-saml/blob/master/lib/Saml2/Metadata.php#L26
However, in the Settings class, you call the builder method and explicitly pass null for both values so the defaults are used.
https://github.com/onelogin/php-saml/blob/master/lib/Saml2/Settings.php#L781
Further, I have reviewed the SAML 2.0 specification document and it says that the validUntil and cacheDuration values are optional but they recommend that they are set on the EntityDescriptor element as you have done.
https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf (lines 316, 319, and 333)
Could you provide some insight on your decision to only use the constant values of 2 days and 1 week for the validUntil and cacheDuration values respectively?
https://github.com/onelogin/php-saml/blob/master/lib/Saml2/Metadata.php#L10-L11
Also, would you be open to a pull request integrating these configuration options into your advanced_settings.php? I have been working with the code and manually testing the integration and it works well with only minimal changes to your current implementation. Most of the changes are in php-saml/lib/Saml2/Settings.php and adhere to your implementation and documentation details.
Please advise.

Hi @aeilers,
I don't want to add 2 new parameters to the settings (there are already a lot).
As you can see, the Metadata builder accepts validUntil and cacheDuration so you can use directly that builder in your code instead the call to the Settings::getSPMetadata method.
P.S If you really want to use the getSPMetadata method, I accept a PR where that method will accept the  validUntil and cacheDuration (by default set to null) and pass then to the builder. Please provide also unit tests.

Is there available any value to set validUntil and cacheDuration for an unlimited period of time, in advanced_settings.json?

no, that is controlled directly on the Metadata builder... and you could consider unlimited as a date of year 4000.


Support ~spin in decorations

It would be nice for task decorations in terminal tabs to be able to animation the loading icon when working, right now it's not possible so we need to use the play icon instead.
https://github.com/microsoft/vscode/issues/121659
When I looked at this it didn't seem like such an easy task since decorations are done using pseudo-elements.

Not sure if this off-center issue should be fixed in all decorations:

Terminal specific fix: https://github.com/microsoft/vscode/pull/124823/files

Oh, interesting...

@Tyriar or @meganrogge please verify

I see it working for running tasks now and looks good 👍


Add precedence to function lookup in @reduce

Problem:
There may be several function candidates available for @reduce to consider. Only function candidates can be overloaded, so other variables never have this problem.
Solution:
Apply the most general function candidate in @reduce. i.e. use Integer -> Integer instead of Even -> Even. If one does not imply the other then fail.
Describe alternatives you've considered:
Developers could manually add precedence labels, but that feels dumb.

#146


Feature/docs endpoint generalization

All the changes from both PR, documentation creation and endpoint generalization and general cornflow tidy up

All I could test, as I do not have an airflow web server seems to work but more extensive testing should be done once we upgrade to airflow 2.0.
I will merge this PR and continue working on the documentation and unit test coverage that right now sits at 78%.

All I could test, as I do not have an airflow web server seems to work but more extensive testing should be done once we upgrade to airflow 2.0.
I will merge this PR and continue working on the documentation and unit test coverage that right now sits at 78%.


Context in Layouts

Qwik Version
0.10.0
Operating System (or Browser)
W10 / Firefox
Node Version (if applicable)
No response
Which component is affected?
Qwik City
Expected Behaviour
I expected the consumption of a context to work fine within a route given a layout wrapped in a provider.
Actual Behaviour
I get the following error:

Code(13): Actual value for useContext() can not be found, make sure some ancestor component has set a value using useContextProvider()

Additional Information
I've pushed a fresh Qwik City install in an example repo, then applied the simplest version of my context changes, which reproduces the error I'm seeing.
Also worth mentioning, that using that same context from the Header component does work.

This was implemented previously. Appears to be a regression.
https://github.com/BuilderIO/qwik/issues/599

I get the same error when I try to use useContent() inside the default src/root.tsx layout component.

I would help a lot of simple piece of code that reproduces it, maybe in the playground https://qwik.builder.io/playground/

Won't be able to reproduce in the playground because it needs a layout.tsx to trigger the bug.
@mastastealth has the minimal repro here https://github.com/mastastealth/qwik-context/commit/83d16aab40a88365e34e2ca7e030e77938b3c537
The important parts are src/routes/layout.tsx and src/components/provider.tsx

@manucorporat Here's the same repo example code on Stackblitz, if that is quicker.

FYI I tested with 0.11.1 and 0.0.112 and the issue is still present

Do we now in which version is/will be released this fix?

The problem still exist in 0.13.3

@wmertens Yes, I confirm like @mingfang that the error is still present in 0.13.3

@wmertens Yes, I confirm like @mingfang that the error is still present in 0.13.3

@mingfang @NachoVazquez Can one of you make a Stackblitz reproduction?

In a second!

This was created by a coworker of mine. I just updated the versions.
https://stackblitz.com/edit/qwik-starter-vyaj1q?file=src/routes/flower/index.tsx

@manucorporat confirmed.
routes/layout.tsx has the contextprovider, and flower/index.tsx uses the context but has no access to it.

Still in latest and it only happens when using the Link and doing client-side navigation if that helps.

After bringing this bug up twice in the Discord server (I'm Data in Discord), I thought I would try to find a workaround for using Link in SPAs.
Steps when using the Stackblitz link:
Context works in Named Layouts always.

Start the app and click the Will context work in Named Layouts? button over and over.

Context won't work in normal Layouts the first attempt almost ever.

Restart the app and click the Will context work for a normal Layout? button immediately.

Context will work in normal Layouts AFTER running a Named Layout first.

Restart the app and click the Will context work for a Named Layouts? and then the Will context work for a normal Layout? button.

https://stackblitz.com/edit/qwik-starter-5xnz1q?file=src/routes/index.tsx
The workaround appears to be to use Named Layouts for now.  Hope this helps!

Is this bug still present? Because I am having it right now on version 0.16.2

I found a temporal fix:
Write a component with the following:
import {
  component$,
  Slot,
  useClientEffect$,
  useContext,
} from<EMAIL_ADDRESS>import { AuthContext } from './authProvider'

export const ContextSetter = component$(() => {
  const auth = useContext(AuthContext)
  useClientEffect$(({ track }) => {
    track(auth)
  })

  return <Slot></Slot>
})

In root.tsx put the component inside the body tags
<body lang="en">
  <ContextSetter>
    <RouterOutlet />
    <ServiceWorkerRegister />
  </ContextSetter>
</body>

It works like a charm. Waiting for an official fix :)

I know this issue is closed but if someone comes across it. The issue seems to be able to be resolved my using the 'useContextProvider' in Layout instead of having a component that wraps around.
Like if you had 'MyContextProvider' and used it in your layout.tsx

layout.tsx

Okay, I think I might have a good solution!
Instead of wrapping your component in a provider, simply create provider hook. Here is an example from my project
EnvironmentContext.tsx
export function useEnvironmentProvider() {
    const environment = useStore<EnvironmentContext>({
        state: "Loading",
        registrants: {}
    });

    // eslint-disable-next-line qwik/no-use-visible-task
    useVisibleTask$(() => {
        async function getRegistrants() {
        try {
            const snapshot = await getDocs(collection(db, "registrants"));

            for (const doc of snapshot.docs) {
            environment.registrants[doc.id] = doc.data() as Registrant;
            }

            environment.state = "Valid"
        } catch (e) {
            environment.state = "Invalid";
        }
        }

        getRegistrants();
    });

    useContextProvider(EnvironmentContext, environment)
}

Layout.tsx
export default component$(() => {
  useEnvironmentProvider()

  return (...);
})


[memory leak] in optoe_probe

The following code should be goto exit_kfree;
https://github.com/opencomputeproject/oom/blob/3ab0e53a6a553ea1f62e1a345182aaac05f22c30/optoe/optoe.c#L1039

Fixed in commit b7cc8c13.


Add ENSTA-Paris

Proof of domain use: https://www.ensta-paris.fr/en/addresses-and-contacts
The

@Brunosanches1 Pull request merged. Thank you!


Remove standard lib imports from LS unit tests

Description:
There are unit test cases in language-server-core that has import statements of standard libs. These can result in  inconsistencies and test intermittent test failures. Therefore, such usage should be refactored.

This Affects the Semantic API as well. https://scans.gradle.com/s/mrieiaek53ij2/tests/:ballerina-compiler-api-test:test/io.ballerina.semantic.api.test.TypedescriptorTest/testSymbolModuleInfo?top-execution=1 is failing due to this


Shfit sha checker out of depdendency.check tool

The sha check test can be flakey as it downloads tarballs from github
While it is useful for updating the shas it is duplicating the sha checking that bazel does (and can fail for that reason)
Im thinking this tool would be more useful standalone and not run as a check

cc @kfaseela

Agree, GH download may be flakey.


Slightly improve how the props table is generated.

@oliviertassinari This makes the enums even prettier. and also one more thing. Before this, each new line in the jsdoc (for code formatting) would result in a new line in the generated props, that made it ugly sometimes. With this, you can freely split jsdoc into any number of lines and still be able to make paragraphs by two consecutive new lines:
Before:
/**
 * This is
 * a new line
 */

=>
This is
a new line
Now:
/**
 * This is
 * not a new line
 *
 * This is a new paragraph.
 */

=>
This is not a new line
This is a new paragraph.
And with enums:
oneOf('foo','bar','baz');
// turns into:
enum:
 'foo'
 'bar'
 'baz'

What do you think?

@subjectix Well, I like it :+1:

thanks :+1: :tada:


Using convert to merge only two compartments causes either data loss or data mismatching

Problem
I have tried many different variations of convert to avoid this issue. I will provide one example in this issue.
To explain, I have a SQLite file acquired directly from CellProfiler but the data within the file is different from the traditional image-based analysis pipeline where there are three object compartments (nuclei, cells, and cytoplasm).
In the case of the project I am working on, I only have one object compartment which is nuclei along with whole image features. I tried using the convert function to merge the nuclei features and image features + metadata using the below code:
# Only select from the two compartments that we have and merge them
preset_join = """
SELECT
    *
FROM
    read_parquet('per_image.parquet') as per_image
INNER JOIN read_parquet('per_nuclei.parquet') AS per_nuclei ON
    per_nuclei.Metadata_ImageNumber = per_image.Metadata_ImageNumber
"""

# merge single cells and output as parquet file
    convert(
        source_path=str(plate_folder),
        dest_path=str(output_path),
        dest_datatype=dest_datatype,
        metadata=["image"],
        compartments=["nuclei"],
        identifying_columns=["ImageNumber"],
        joins=preset_join,
        parsl_config=local_htex,
        chunk_size=10000
    )

The data is a 384 well plate with 4 FOVs per well, meaning there are a total of 1536 image sets. But everytime I have tried running the convert function with different parameter, I will get the correct number of rows of nuclei based on the SQLite database compartment "per_nuclei", but I will have missing Wells and ImageNumbers.
For example, I have a converted parquet plate loaded in a dataframe that shows 256,074 rows which matches the SQLite file:

This makes sense, but for a sanity check, I went to see if I had all of the wells and image numbers since when I skimmed the SQLite file I did not see any missing wells when looking at all of the nuclei. I see that I am missing a ton of rows and their corresponding images:

Using the wells was the easiest to use to go back into the SQLite file and check to see if there are any nuclei from that well. Using well O06, I went into the SQLite file and checked for what image numbers are associated with this well and use the image number to find if there were any nuclei found in that well. This is what I discovered when only looking at one of the 4 image numbers (4 FOVs) for that well:

There are a ton of nuclei from that well, which means that somehow through my parameters that the convert function is either not including the data or because we see the correct amount of rows/nuclei that cells are getting labelled wrong.
Solution
It would help to go through this in person to see what is going on since this is dataset specific. It could be because of the parameters for the query, but it is just not clear to me why this is happening.

Thank you for raising this @jenna-tomkinson ! I believe this may relate to the JOIN type being used (INNER) and the dataset specifics (where Image and Nuclei tables do not contain all the same join key values). See responses under https://github.com/cytomining/CytoTable/issues/85#issuecomment-1679120769 . I hope to uncover more information from discussing this with you further.

I wanted to update this issue as I have found this bug to happen when using CytoTable with the standard compartments. Please see my PR in the NF1 repo where I am making a fix for this bug: https://github.com/WayScience/nf1_cellpainting_data/pull/35.
It seems like there is still an issue where extra rows with all NAs for each column are showing up in the final parquet file.

Hi @jenna-tomkinson thanks for raising this issue and for adding to it recently! I took a moment to try and validate what you mentioned earlier in the issue description using the most recent version of the CytoTable code you referenced in https://github.com/WayScience/nf1_cellpainting_data/pull/35 .
Mostly, I focused on your statements as the basis of troubleshooting what you mentioned:

But everytime I have tried running the convert function with different parameter, I will get the correct number of rows of nuclei based on the SQLite database compartment "per_nuclei", but I will have missing Wells and ImageNumbers.

I found I was not able to get the same number of rows in the CytoTable result as the SQLite Per_Nuclei table. I also found that there were no missing ImageNumbers, Image Well Numbers, or Nuclei ObjectNumbers. This seems to go against what you mentioned earlier in this issue. Within the below example, I focused only on unmodified CytoTable output to help isolate where the issue may be occurring.
Please see this Google Colab notebook or related Gist I created as a backup.

It seems like there is still an issue where extra rows with all NAs for each column are showing up in the final parquet file.

CytoTable provides a parameter, convert(..., drop_null=False) which will by default leave intact any null columns which are provided from data sources or created as a result of join operations. As an aside, join operations can sometimes lead to NA/Null column values and it might be necessary to adjust to avoid this. As a double check, is this a new element as part of this issue, or should we create a different issue to cover this aspect?

After discussing this further with @jenna-tomkinson (thanks Jenna!) it seems there is likely an issue with the preset SQL for joins which allows image table data with no matching compartment data be added to CytoTable output. This would only manifest when the image table has metadata which does not show up in the compartment tables. We believe this would only occur when CellProfiler processed an image but did not find compartment-level data.
This is an example of current SQL used for joins in CytoTable (modified based on this issue):
WITH Per_Image_Filtered AS (
    SELECT
        Metadata_ImageNumber,
        Image_Metadata_Well,
        Image_Metadata_Plate
    FROM
        read_parquet('per_image.parquet')
    )
SELECT
    *
FROM
    Per_Image_Filtered AS per_image
LEFT JOIN read_parquet('per_cytoplasm.parquet') AS per_cytoplasm ON
    per_cytoplasm.Metadata_ImageNumber = per_image.Metadata_ImageNumber
LEFT JOIN read_parquet('per_cells.parquet') AS per_cells ON
    per_cells.Metadata_ImageNumber = per_cytoplasm.Metadata_ImageNumber
    AND per_cells.Metadata_Cells_Number_Object_Number = per_cytoplasm.Metadata_Cytoplasm_Parent_Cells
LEFT JOIN read_parquet('per_nuclei.parquet') AS per_nuclei ON
    per_nuclei.Metadata_ImageNumber = per_cytoplasm.Metadata_ImageNumber
    AND per_nuclei.Metadata_Nuclei_Number_Object_Number = per_cytoplasm.Metadata_Cytoplasm_Parent_Nuclei

The following would likely avoid the rows with NA's (by using the cytoplasm compartment table as the basis for all joined data).
WITH Per_Image_Filtered AS (
    SELECT
        Metadata_ImageNumber,
        Image_Metadata_Well,
        Image_Metadata_Plate
    FROM
        read_parquet('per_image.parquet')
    )
SELECT
    *
FROM
    read_parquet('per_cytoplasm.parquet') AS per_cytoplasm
LEFT JOIN Per_Image_Filtered AS per_image ON
     per_image.Metadata_ImageNumber = per_cytoplasm.Metadata_ImageNumber
LEFT JOIN read_parquet('per_cells.parquet') AS per_cells ON
    per_cells.Metadata_ImageNumber = per_cytoplasm.Metadata_ImageNumber
    AND per_cells.Metadata_Cells_Number_Object_Number = per_cytoplasm.Metadata_Cytoplasm_Parent_Cells
LEFT JOIN read_parquet('per_nuclei.parquet') AS per_nuclei ON
    per_nuclei.Metadata_ImageNumber = per_cytoplasm.Metadata_ImageNumber
    AND per_nuclei.Metadata_Nuclei_Number_Object_Number = per_cytoplasm.Metadata_Cytoplasm_Parent_Nuclei

To fix this I think we need to:

[ ] Add test data to match this scenario
[ ] Add a test which checks for this type of output
[ ] Change the presets so that the cytoplasm compartment table is used as the basis for all joins


Add the ability to set default reviewers per project for new pull requests

Gitea version (or commit ref):
Git version:
Operating system:
Database (use [x]):

[x] PostgreSQL
[x] MySQL
[x] MSSQL
[x] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Log gist:

Description
The same functionality as bitbucket has:
https://confluence.atlassian.com/bitbucketserver/add-default-reviewers-to-pull-requests-834221295.html

How to re-open it?

This would indeed be very handy

Has there been any progress on this in the last year?  We're trying to migrate off of BitBucket Cloud, and this is the only feature that's a blocker for my team.

Can this be implemented via hooks? I feel a mechanism for webhooks should be expanded allowing synchronous responses for UI integration. I.e. Gitea could call webhook and get back a list of reviewers (team/users) which are instantly displayed in Gitea UI and look like a native Gitea feature. This would allow a more advanced use cases like load-balancing the reviewers, OWNERS files parsing, or "Smart AI" reviewers selection.

+1 vote, it would be a very nice feature!

+1

+1 vote

+1

Doesn't this already exist now that CODEOWNERS have been added?

Doesn't this already exist now that CODEOWNERS have been added?

Yes, I think this could be closed.  https://docs.gitea.com/usage/code-owners

Is there any documentation on how CODEOWNERS file affects pull requests?

Once the pull request's changed files matched the code owners' regex rules, the users will be set as reviewers when creating the pull request. A documentation is preferred.

@lunny could you give, please, an example of .CODEOWNERS file with the rule "check any code changes"?

https://gitea.com/lunny/codeowner-example/src/branch/main/.gitea/CODEOWNERS and you can also send a PR as a test.

I guess it just follows whatever Github's CODEOWNERS file is doing:
https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
For format we can look into ParseCodeOwnersLine function at the moment

https://gitea.com/lunny/codeowner-example/src/branch/main/.gitea/CODEOWNERS and you can also send a PR as a test.

I tried with *.* @user as in your example and with .* @user as in the documentation (regexp), neither of them worked (gitea version 1.20.3).
In your lunny/codeowner-example repo, I can't create a PR or create a branch.


docs(netlify) remove docs form source, build on netlify

Codecov Report

Merging #108 into master will decrease coverage by 1.25%.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           master   #108      +/-   ##
========================================
- Coverage   86.25%    85%   -1.25%
========================================
  Files           1      1
  Lines         160    160
  Branches       44     44
========================================
- Hits          138    136       -2
- Misses          4      5       +1
- Partials       18     19       +1

Impacted Files
Coverage Δ

src/Autosuggest.vue
85% <0%> (-1.25%)
:arrow_down:

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 458f3e2...2500976. Read the comment docs.