WeChat crashed after send some url link message to many rooms.

12:16:37 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})
12:16:39 SILL Io start() setInterval() ws.ping()
12:16:49 SILL Io start() setInterval() ws.ping()
12:16:52 VERB PuppetServiceImpl ding()
12:16:52 SILL PuppetDonut ding(recover$() CPR)
12:16:52 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})
12:16:59 SILL Io start() setInterval() ws.ping()
12:17:03 VERB PuppetServiceImpl messageSendText()
12:17:03 VERB PuppetDonut messageSendText("18995691396@chatroom", https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620)
12:17:03 SILL request(SEND_TEXTMSG, [object Object])
12:17:03 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"content":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620","to_wxid":"18995691396@chatroom"},"type":11036})
12:17:03 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:04 VERB PuppetServiceImpl messageSendUrl()
12:17:04 VERB PuppetDonut messageSendUrl("18995691396@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:04 SILL request(SEND_LINKMSG, [object Object])
12:17:04 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"18995691396@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:04 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:07 VERB PuppetServiceImpl ding()
12:17:07 SILL PuppetDonut ding(recover$() CPR)
12:17:07 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})
12:17:08 VERB PuppetServiceImpl messageSendUrl()
12:17:08 VERB PuppetDonut messageSendUrl("17275396976@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:08 SILL request(SEND_LINKMSG, [object Object])
12:17:08 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"17275396976@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:08 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:09 SILL Io start() setInterval() ws.ping()
12:17:13 VERB PuppetServiceImpl messageSendUrl()
12:17:13 VERB PuppetDonut messageSendUrl("18171595067@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:13 SILL request(SEND_LINKMSG, [object Object])
12:17:13 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"18171595067@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:13 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:18 VERB PuppetServiceImpl messageSendUrl()
12:17:18 VERB PuppetDonut messageSendUrl("7582163093@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:18 SILL request(SEND_LINKMSG, [object Object])
12:17:18 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"7582163093@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:18 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:19 SILL Io start() setInterval() ws.ping()
12:17:22 VERB PuppetServiceImpl ding()
12:17:22 SILL PuppetDonut ding(recover$() CPR)
12:17:22 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})
12:17:23 VERB PuppetServiceImpl messageSendUrl()
12:17:23 VERB PuppetDonut messageSendUrl("5729603967@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:23 SILL request(SEND_LINKMSG, [object Object])
12:17:23 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"5729603967@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:23 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:28 VERB PuppetServiceImpl messageSendUrl()
12:17:28 VERB PuppetDonut messageSendUrl("4335801863@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:28 SILL request(SEND_LINKMSG, [object Object])
12:17:28 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"4335801863@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:28 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:29 SILL Io start() setInterval() ws.ping()
12:17:33 VERB PuppetServiceImpl messageSendUrl()
12:17:33 VERB PuppetDonut messageSendUrl("22396239792@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:33 SILL request(SEND_LINKMSG, [object Object])
12:17:33 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"22396239792@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:33 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:38 VERB PuppetServiceImpl ding()
12:17:38 SILL PuppetDonut ding(recover$() CPR)
12:17:38 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})
12:17:38 VERB PuppetServiceImpl messageSendUrl()
12:17:38 VERB PuppetDonut messageSendUrl("19112581505@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:38 SILL request(SEND_LINKMSG, [object Object])
12:17:38 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"19112581505@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:38 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:39 SILL Io start() setInterval() ws.ping()
12:17:43 VERB PuppetServiceImpl messageSendUrl()
12:17:43 VERB PuppetDonut messageSendUrl("24113855649@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:43 SILL request(SEND_LINKMSG, [object Object])
12:17:43 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"24113855649@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:43 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:48 VERB PuppetServiceImpl messageSendUrl()
12:17:48 VERB PuppetDonut messageSendUrl("17559195108@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:48 SILL request(SEND_LINKMSG, [object Object])
12:17:48 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"17559195108@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:48 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:49 SILL Io start() setInterval() ws.ping()
12:17:53 VERB PuppetServiceImpl ding()
12:17:53 SILL PuppetDonut ding(recover$() CPR)
12:17:53 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})
12:17:53 VERB PuppetServiceImpl messageSendUrl()
12:17:53 VERB PuppetDonut messageSendUrl("19487389780@chatroom", {"description":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","thumbnailUrl":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"})
12:17:53 SILL request(SEND_LINKMSG, [object Object])
12:17:53 VERB Donut(ffi-adapter) SendWeChatData(66,{"data":{"desc":"Donut will release cache in `stop()` method, and restart without login event from WeChat, so cacheManager will not init.\r\n\r\nAnd then it will cause this bug. `CacheManager getContact() has no cache. `","image_url":"https://avatars2.githubusercontent.com/u/9332609?v=4","title":"#25 Hostie will stop with some unknow reason. wechaty/wechaty-puppet-hostie","to_wxid":"19487389780@chatroom","url":"https://github.com/wechaty/wechaty-puppet-hostie/issues/25#issuecomment-611318620"},"type":11039})
12:17:53 VERB ffi-adapter Backend.lib(0<EMAIL_ADDRESS>12:17:59 SILL Io start() setInterval() ws.ping()
12:18:08 VERB PuppetServiceImpl ding()
12:18:08 SILL PuppetDonut ding(recover$() CPR)
12:18:08 VERB EventStreamManager grpcEmit(EVENT_TYPE_DONG[3], {"data":"recover$() CPR"})

This issue is not related to the hostie, please move it to the repo issue which corresponding to the puppet that you mentioned in your log messages.
We should only file hostie related issues (PuppetServer / PuppetHostie specific) to this repo, other issues like a specific puppet provider should be filed into its own repo.
Thank you very much.


Toyota: Add Lexus GSF 2016

Checklist

[ ] added entry to CarInfo in selfdrive/car/*/values.py and ran selfdrive/car/docs.py to generate new docs
[x] test route added to routes.py
[x] route with openpilot: ab9b64a5e5960cba|2023-10-17--18-59-12
[x] route with stock system: ab9b64a5e5960cba|2023-10-14--00-38-19

Stuck with a "CAN Error: Check Connections". Been messing around but not sure what else I can do.

It's working properly with the Lexus GSF now. Mine is a 2016, it will likely work with the 2017.
Most likely won't work with the 2018-2020's since they have a different ACC system.

I'm not sure if I did the first step correctly (running selfdrive/car/docs.py bugs out on my computer).
Can someone verify?

Thanks for the port! Can you provide a new route for the tests? That one seems to be missing all the logs.

Thanks for the port! It looks like that the route is too old or doesn't have full logs uploaded (rlogs). Can you get another route that will be public we can use for tests? Thanks!
Any issues you noticed with the car and openpilot so far?

Any update on the route? Any issues you noticed with the car and openpilot so far?

Hi Shane, sorry I have been out of town for a funeral but I get back tonight.

Any update on the route? Any issues you noticed with the car and openpilot so far?

ab9b64a5e5960cba|2023-10-17--18-59-12 I uploaded all the files within Connect and I made the route public in useradmin

If you end up getting a new test route, let me know. Looks like encoderd crashed there any didn't capture any qcams. Not a dealbreaker if you can't get a new one though, just a nice to have to view the videos while exploring the routes

Can I use https://connect.comma.ai/ab9b64a5e5960cba/1698186728072/1698187358620?

Can I use https://connect.comma.ai/ab9b64a5e5960cba/1698186728072/1698187358620 ?

Yes that's fine, I made it public in useradmin. I'll upload the Connect files tomorrow

i would like to try this on my 2016 GS F.  i have a comma 3.  what url should i use to load into my comma 3?  thanks!

i would like to try this on my 2016 GS F. i have a comma 3. what url should i use to load into my comma 3? thanks!

Try this
https://smiskol.com/fork/snyperifle
or
https://smiskol.com/fork/snyperifle/master
We may need to add your car's computer fingerprints but see if that works

Just came back from a quick drive.  Happy to report it works perfect!!


bug: Content with cards scrolls immediately to top

Type: bug
Ionic Version: 2.x
Platform: all
I have cards in my ion-content. Say, 20. Scrolling to bottom goes smooth as it should. But, being almost at the bottom of the content and then scrolling/swiping to go up, immediately jumps to top of the content. To test the issue in browser, click and hold content and try to swipe up.
This looks like a total mess in browser and on device (android) I've tested. Unsure if this is a performance issue or just a bug, but it looks horrible.
Affected platforms (couldn't test on iOS):

Android 5.1.1
Google Canary [latest]
Google Chrome 48.0.2564.116 m

I did noticed an console.info popping up in Chrome: Ignored attempt to cancel a touchmove event with cancelable=false, for example because scrolling is in progress and cannot be interrupted.(pull-to-refresh.js:335)
Thank you for looking into it.

Are you using pull to refresh? Can you provide some code that can replicate the issue?

@adamdbradley: Yes, I am using pull to refresh. Will create new repo and post it here in few minutes.

@adamdbradley I've just created new repo:
git clone https://github.com/lordgreg/ionic2-scrollWithLotsOfCards.git
It looks like this is the issue with card + pull to refresh

Going to work on fixing this as part of this issue: https://github.com/driftyco/ionic/issues/5207


test/new-e2e/tests/apm: enable tcp container tags

What does this PR do?
AIT-9392
Enable TestTracesHaveContainerTag in the TCP test suites. This relies on https://github.com/DataDog/test-infra-definitions/pull/597

Motivation

Additional Notes
Depends on https://github.com/DataDog/datadog-agent/pull/22636

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided. Except if the qa/skip-qa label, with required either qa/done or qa/no-code-change labels, are applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

/merge


Example mlp

replaces #687
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-765-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-765/1/index.html

Job PR-765-2 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-765/2/index.html

Job PR-765-3 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-765/3/index.html

Job PR-765-4 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-765/4/index.html

Job PR-765-7 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-765/7/index.html

@aaronkl What is the status of this PR?

from my side it is good to go, just waiting for final approval

Do you mean final approval by Matthias? It looks like he already approved the PR.


How to train without the pre-trained cornernet model

thank u for your code very much，i don not want to  fine-tun from the cornernet model and how to train the model from scratch

Hi,
Thanks for your interests. You can delete this line https://github.com/xingyizhou/ExtremeNet/blob/master/config/ExtremeNet.json#L26 to train from scratch. To fully reproduce our results, you will also need to increase the training iterations https://github.com/xingyizhou/ExtremeNet/blob/master/config/ExtremeNet.json#L18 . We have tried "max_iter": 500000, "stepsize": 450000, it works slightly better than fine-tuning CornerNet. Our model is given at https://drive.google.com/file/d/1omiOUjWCrFbTJREypuZaODu0bOlF_7Fg/view?usp=sharing .

Thanks very much，it help me a lot.


caddy: add support for compiling with external plugins

Description of changes
Solves: https://github.com/NixOS/nixpkgs/issues/14671
This PR continues the work of @jpds in #259275 toward adding support for building caddy with plugins. A few recommendations given in code reviews of the PR were used, along with its previous changes being rebased. The PR is split in two commits: one adding support for compiling caddy with plugins, and the other adding its documentation to the 24.11 release notes.
To support the compilation of caddy with plugins, a passthru function named withPlugins has been added that takes in a list of attribute sets as a parameter. The list of attribute sets represents a list of caddy plugins. The accepted attributes for a plugin are name, repo, and version. Adding plugins changes the vendorHash of caddy, so an attribute named newVendorHash that represents this changed vendorHash has been added. The value of this newVendorHash attribute defaults to that of lib.fakeHash, which allows for one to find the correct hash by attempting to build caddy.withPlugins [<attrset(s) of plugins>] without overriding the newVendorHash. Using caddy/withPlugins [<attrset(s) of plugins>] on the result of overriding caddy with the correct newVendorHash produces a caddy compiled with the inputted plugins.
Example:
services.caddy = {
  enable = true;
  package = (pkgs.caddy.override { newVendorHash = "<SHA256 hash>"; }).withPlugins
    [
        { name = "coraza"; repo = "github.com/corazawaf/coraza-caddy/v2"; version = "v2.0.0-rc.3"; }
        { name = "cache-handler"; repo = "github.com/caddyserver/cache-handler"; version = "v0.9.0"; }
        { name = "ratelimit"; repo = "github.com/mholt/caddy-ratelimit"; version = "2dc0d586f0b87e983757c403bc0929ddeb84a537"; }
    ];
};

Adapted from Brendan Taylor's CoreDNS change in commit 95e66809debf42dbe1e4935fd31c8c275914d2eb.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Blocking due to #259275 (comment).

Maybe I'm misunderstanding, but it seems that (to your point about lib.fakeHash), it is being used for vendorHash. When I try to compile caddy with plugin(s) with vendorHash = "", it specifies sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=, not the default vendorHash of caddy. Also, I thought passthru was for attributes that don't affect the build itself. Are you suggesting something like using passthru along with a wrapper for a package of caddy with external plugins? Something like this?

Sorry for taking so long to respond.
Will try to find time for this tomorrow.

Maybe I'm misunderstanding, but it seems that (to your point about lib.fakeHash), it is being used for vendorHash. When I try to compile caddy with plugin(s) with vendorHash = "", it specifies sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=, not the default vendorHash of caddy.

An empty FOD hash (e.g. vendorHash = "") and lib.fakeHash result in the same here.
The former is implemented right in nixcpp, while the latter is part of nixpkgs.
So when I wrote

This also comes with the added benefit, that the vendorHash can be left empty by default to use lib.fakeHash instead of the vanilla caddy-without-plugins one.

I was referring to the universal "dummy hash" that is sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= that both nixcpp and nixpkgs use, saving me from having to copy it from somewhere.
You can use "" if you want.
Furthermore, the important bit is

[...] vendorHash can be left empty by default [...] instead of the vanilla caddy-without-plugins one.

I foresee a lot of users using the suggested caddy.override { } pattern from #259275 (and this PR here), but forgetting to specify vendorHash, which would result in the default vanilla variant.
We don't have any checks whether the specified plugins are actually part of the build and resulting binary yet.
We should add something like that.
If we had a dedicated entrypoint in passthru that would default to vendorHash = "", accidentally building vanilla Caddy despite specifying plugins couldn't happen.
One foot gun less.

Also, I thought passthru was for attributes that don't affect the build itself.

Yep, that's intentional. Changing something in passthru won't trigger rebuilds of the package itself. We want that.

Are you suggesting something like using passthru along with a wrapper for a package of caddy with external plugins? Something like this?

Yes.
However, note that I suggested and requested Caddy with plugins to not replace the current vanilla Caddy in the linked comment:

I do, however, not like, that this replaces current caddy package.
[...]
How about the following:
We keep the current caddy drv as is, and add a with-external-plugins in passthru.
[...]

Which this PR doesn't. This PR, just like #259275, replaces the current Caddy derivation.
And lastly, some time passed since my initial linked comment in #259275 and I changed my mind about one detail in the meantime.
I now heavily prefer the xcaddy+XCADDY_SKIP_BUILD=1 approach over the custom modBuildPhase and preBuild phases.
This also has the added benefit of giving us xcaddy's --embed feature for free (that has been released as part of https://github.com/caddyserver/xcaddy/releases/tag/v0.4.0).
I hope this clears up some questions.

I hope this clears up some questions.

Ah, I think I understand. Thank you! I'll try to convert the PR to use xcaddy and add a  passthru when I have the time.

@emilylange I followed your suggestion and exposed the functionality of compiling caddy with plugins as a passthru function. These changes are documented in the latest edit of this PR's description. I did have issues with using xcaddy, though. Every method that I've seen which uses xcaddy seems to require bypassing the Nix sandbox to allow network connectivity during the build process, via the outputHash fixed-output derivation. Wouldn't it be more idiomatic to not use xcaddy? This section of xcaddy's GitHub page suggests not using it if it conflicts too much with one's build system.

@emilylange any final thoughts on this?

@emilylange any final thoughts on this?

Yes. I don't think this should get merged as is.
It uglifies this derivation and exposes footguns to an extent, that I am not willing to maintain.
I will try to mention a few points, but ultimately, I won't be able to delegate much time into this any time soon.

There are no checks in place. A check phase should be added to validate whether the specified modules are actually part of the resulting binary. This isn't as straight forward if one wants to take cross compilation into account. But still, some sort of check is absolutely necessary. There are many ways to approach such check.
The src FOD hash is now more than 50 lines apart from the last hash in the file, the vendorHash. We usually try to avoid this in nixpkgs where possible. There are multiple reasons, one of them being that it's easy to overlook one of the hashes. Totally avoidable here. vendorHash should get moved somewhere closer to the other hashes.
The derivation in general is a mess now. Things have been moved to a let in to then be inhered. Things could easily be inherited and deduplicated without the use of let in. It would even result less duplication.
The approach how things are deduplicated is simply inconsistent. E.g. pname exists in the let in scope, is then inherited in the "vanilla" buildGoModule, but then in passthru, caddy.pname is used instead of pname from the let in scope.
There are smaller imperfections, like { repo, version, ... } should be { repo, version }, because there are no unknown overflows.
This should leverage FOD store path invalidation, or whatever this concept may be called. Some representation of caddyModules should end up in goModules.pname. As it stands, it's currently /nix/store/<hash>-caddy-with-plugins-2.8.4-go-modules. If it encoded caddyModules in there instead, a change in caddyModules would result in a missing store path, a FOD hash lookup at cache.nixos.org, which is essentially guaranteed to fail, a forceful local build of goModules, which then gets validated against the provided FOD hash, which may or may not be accurate after the caddyModules modification.

And of course, it does not use xcaddy. I advocate for xcaddy and don't quite agree with the reasoning against it:

Every method that I've seen which uses xcaddy seems to require bypassing the Nix sandbox to allow network connectivity during the build process, via the outputHash fixed-output derivation.

The xcaddy approach I suggested uses a single FOD for src and then nulls vendorHash.
Meaning it requires a single FOD just like this variant requires a single FOD, additional to the vanilla derivation, that is.

Wouldn't it be more idiomatic to not use xcaddy? This section of xcaddy's GitHub page suggests not using it if it conflicts too much with one's build system.

I don't see how xcaddy conflicts with our build system. Can you elaborate?
And finally, as said before, xcaddy provides an FS --embed feature out of the box. While niche, it would be fairly trivial to add and expose it in our abstraction, if it's based on xcaddy.
So no, I strongly believe this should not get merged as is.
@flokli, if you want to take responsibility for it, dismiss my blocking review and merge it. I won't stop you.
However, I would like to be removed from caddy.meta.maintainers in that case. No hard feelings. I am just not willing to maintain this. You can either add another commit dropping me to this PR, or I'll open a follow-up PR when I find time.

Thanks for the thorough explanation ❤
I was not sure your comments were sufficiently addressed. But now you left some valid, valuable and actionable feedback on how this can be less of a footgun.
I agree with the reasoning, and don't want to leave this in a less maintainable state than before.
I'm happy to offer some help on getting this into shape, @Nanotwerp let me know if you need some help.

Thanks for the thorough explanation ❤
I was not sure your comments were sufficiently addressed. But now you left some valid, valuable and actionable feedback on how this can be less of a footgun.
I agree with the reasoning, and don't want to leave this in a less maintainable state than before.
I'm happy to offer some help on getting this into shape, @Nanotwerp let me know if you need some help.

Thank you so much for offering your help. I'll probably need all the help I can get!

Thank you so much for offering your help. I'll probably need all the help I can get!

Feel free to reach out on Matrix or any other communication medium :)

Here is an alternative using xcaddy: https://github.com/vincentbernat/caddy-nix. I can do a PR to integrate it if there is some interest.

Thanks for the great amount of work already done on this!
I wanted to note that certain plugins like FrankenPHP will require more setup to get working.
In case of FrankenPHP, it requires PHP (built with some extra flags) to be installed in order to compile.
See this gist for how I got it building using xcaddy (excuse the workarounds for go module downloading, I didn't find a solution for that before).
I'm definitely interested in this, I wanted to build caddy with plugins for my weak VPS, turned out to be alot of trouble.

Closing. Superseded by #358586!


Only storyboard formats listed for "free with ads" video

Checklist

[X] I'm asking a question and not reporting a bug/feature request
[X] I've looked through the README
[X] I've read the guidelines for opening an issue
[X] I've searched the bugtracker for similar questions including closed ones

Question
URL: https://www.youtube.com/watch?v=USZl1aq_wl4
yt-dlp: 2<IP_ADDRESS>
I have Youtube Video and Audio downloader addon for firefox which offers a bunch of "video only" and "audio only" formats for the above URL. I chose the 4.3 GB 1080p "video only" stream and a M4A 256K "audio only" stream but it was downloading at 10 kb/s.. unacceptable.
The problem is when I tried my yt-dlp script which simply tries to get the bestvideo, I kept getting "that format is not available". So I manually typed the following into a command prompt:
yt-dlp.exe --list-formats --simulate https://youtu.be/USZl1aq_wl4
And the result was only "storyboard" formats:
[info] Available formats for USZl1aq_wl4:
ID  EXT   RESOLUTION | PROTO | VCODEC MORE INFO
sb2 mhtml 48x27      | mhtml | images storyboard
sb1 mhtml 106x45     | mhtml | images storyboard
sb0 mhtml 212x90     | mhtml | images storyboard
ERROR: [youtube] USZl1aq_wl4: Requested format is not available
I tried one of the storyboard formats but all I got was 95 images, not the full movie. Is there something I'm missing? Why is the addon able to provide multiple MP4 formats from 1080p to 144p but yt-dlp can only find these storyboards?
Verbose log
No response

The video has DRM. If you update yt-dlp to the latest version, it will show an appropriate error message/warning

I have Youtube Video and Audio downloader addon for firefox which offers a bunch of "video only" and "audio only" formats for the above URL. I chose the 4.3 GB 1080p "video only" stream and a M4A 256K "audio only" stream but it was downloading at 10 kb/s.. unacceptable.

You can try, but I bet the resulting file will not be playable

You can try downloading it, but I bet the resulting files will not be playable

You're right, I downloaded the 144p and only the first few seconds of the logo plays then it becomes unwatchable.


Feature Request:  Include Enabled/Disabled status of Policies

For any searches that result in a list of policies being displayed could you please add the Enabled/Disabled status of the policies.  This would be very helpful in allowing us to quickly focus on Enabled policies when deciding which policies to worry about with packages or scripts that we need to cleanup and remove from our Jamf Pro server.

disabled policies will show [disabled] in frequency column - v2.0.0


Scan guidance march2020 update

Adding guidance on the /sites endpoint and clarifying a few other points in the docs.

Docs Build status updates of commit 3f499db:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/rest-api/concepts/scan-guidance.md
:white_check_mark:Succeeded
View (>= odsp-graph-online)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 324561a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/rest-api/concepts/scan-guidance.md
:white_check_mark:Succeeded
View (>= odsp-graph-online)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 79af69e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/rest-api/concepts/scan-guidance.md
:white_check_mark:Succeeded
View (>= odsp-graph-online)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit f1ab3d3:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/rest-api/concepts/scan-guidance.md
:white_check_mark:Succeeded
View (>= odsp-graph-online)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 803b47c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/rest-api/concepts/scan-guidance.md
:white_check_mark:Succeeded
View (>= odsp-graph-online)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit f106002:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/rest-api/concepts/scan-guidance.md
:white_check_mark:Succeeded
View (>= odsp-graph-online)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


fix: exclude ?commonjs-external when building in JSON plugin

Description
fix https://github.com/vitejs/vite/issues/4866
Cannot replicate independently, thus cannot create a test to fail on this. I have tested this locally in our repository and this fixes the problem.
What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[x] Ideally, include relevant tests that fail without this PR but pass with it.

Thanks for the PR @HexaField, PR welcome to improve the test suite if you manage to create an isolated case to test this at one point


Added "module" field in package.json for ESM

Added "module" field in package.json to support default import to be ESM for bundlers like webpack and rollup, which enables tree shaking out of the box.

Coverage remained the same at 85.487% when pulling 8ba44a0bceac8ee74c95c88466edca2491a79533 on kamleshchandnani:feature/esm-default-support into 92cdc04b70cc6cd14b6cc44d7f8e3324e90b76a5 on airbnb:master.


operations attribute of backend targets contain inconsistent types

Describe the bug
The lines
https://github.com/Qiskit/qiskit/blob/230e91cb810de8f3911fa1958815fe8ed25c9980/qiskit/transpiler/target.py#L299
and
https://github.com/Qiskit/qiskit/blob/230e91cb810de8f3911fa1958815fe8ed25c9980/qiskit/transpiler/target.py#L930
suggest that the operations attribute of a Target should contain instances of Instruction. In the case of the for loop, switch statement, and if else statement, this is not the case; instead, the Instruction class itself is used (e.g. qiskit.circuit.controlflow.ForLoopOp rather than an instance of it).
Steps to reproduce
from qiskit_ibm_runtime import QiskitRuntimeService
from qiskit_ibm_runtime.fake_provider import FakeBrisbane
from qiskit.circuit import Instruction

service = QiskitRuntimeService()
backend_name = "ibm_brisbane"
backend = service.get_backend(backend_name)

for op in backend.target.operations:
    print(op)
    print(isinstance(op, Instruction))
    print()

Instruction(name='id', num_qubits=1, num_clbits=0, params=[])
True

Instruction(name='rz', num_qubits=1, num_clbits=0, params=[Parameter(λ)])
True

Instruction(name='sx', num_qubits=1, num_clbits=0, params=[])
True

Instruction(name='x', num_qubits=1, num_clbits=0, params=[])
True

Instruction(name='ecr', num_qubits=2, num_clbits=0, params=[])
True

Instruction(name='reset', num_qubits=1, num_clbits=0, params=[])
True

Instruction(name='measure', num_qubits=1, num_clbits=1, params=[])
True

<class 'qiskit.circuit.controlflow.for_loop.ForLoopOp'>
False

<class 'qiskit.circuit.controlflow.switch_case.SwitchCaseOp'>
False

<class 'qiskit.circuit.controlflow.if_else.IfElseOp'>
False

Delay(duration=t[unit=dt])
True

Expected behavior
Suggested solutions
Additional Information

qiskit-ibm-runtime version: 0.21.1
Python version: N/A
Operating system: N/A

It's fine for it to be a class: https://github.com/Qiskit/qiskit/blob/230e91cb810de8f3911fa1958815fe8ed25c9980/qiskit/transpiler/target.py#L368C29-L370C51


Issue with ipad mini.

Hello, trying to connect stratux v1.0r1 on pi3 to FltPlan Go app using an ipad mini model A-1432 with IOS version 9.3.5. The stratux page is working fine but unable to connect stratux in FltPlan Go.. showing connecting... but nothing happennig. No ads-b and no gps connections
The stratux is working fine with ipad air and iphone 6..
Any suggestions?

Stratux version: v1.0r1

Stratux config:
SDR

[ ] single
[yes ] dual

GPS

[yes ] yes
[ ] no
type:

AHRS

[ ] yes
[no ] no

power source:power bank pb6000cb
usb cable:

EFB app and version: (e.g., WingX Pro7 8.6.2)
EFB platform: (e.g., iOS 9.2)
EFB hardware: (e.g., iPad Mini 2)

Description of your issue:

If possible, enable "Replay Logs", reproduce the problem, and provide a copy of the logs in http://<IP_ADDRESS>/logs/stratux/ and http://<IP_ADDRESS>/logs/stratux.log.

External menu -> Stratux. This is where you see "connecting"? Do you have any other EFBs open?

No, the only other app is garmin pilot and i did make sure it was closed.

The conncecting promt is in the fltplan go app under external tab.

Here is the stratux working fine and the fltplan go app not connecting.

Hi sebnad,
We have had no known issues and no other complaints with FltPlan Go connecting to Stratux.
We were able to connect Stratux to FltPlan Go on both an iPad Mini and iPad Air 2 without issue.
Please make sure of the following:

You do not have any other apps open and that Stratux is not in use with another app.
You have the most current version of FltPlan Go from the Apple App Store.

You can try a hard reset of the iPad Mini (hold the iPad home button and lock button at the same time).
Additionally, you can try disconnecting and reconnecting to the Stratux unit.

iPad Settings - Wi-Fi - tap on the little (i) icon next to Stratux - Forget This Network and then reconnect.
FltPlan Go - External - Stratux.

If you need additional assistance, please send an email to<EMAIL_ADDRESS>Thank you,
<EMAIL_ADDRESS>

I have the same issue with my new iPad Mini 4 from Verizon.  I have an older Mini that is working just fine.  I am thinking that port 4000 is possibly being used by the newer iPad Mini 4 already because I have tried everything I know to do.  I can see that the device is working when I go to the web page when connected to the Stratux WiFi from my iPad.  None of the EFBs work with the new iPad Mini 4 and my Stratux device.  I see quite a few comments about this on Google, but hoping I could get some help here.

I finally got this working by reimaging another SD card.  Not sure what happened to the other but I pull the most recent version (both appeared to the be same new release), but somehow maybe the SD was corrupted.   Good luck if you are having this issue as it was very frustrating.  Thanks to CYoung for this great software and my hat goes off to you CYoung!

Yes, same problem..except for me it is with a ipad mini.. i will try with a new sd card thank you!

https://github.com/cyoung/stratux/issues/500

I have installed stratux on a new sd card and now fltplan go connect to stratux with all my devices(ipad mini iphone 6 and ipad air) thank you!!!

One further note, make sure you check "Recent clients" first - if you're connect and it's at "0", that's a problem!

Yes, now everything is perfect,  just did a flight with 4 deviced connected to stratux and works A1! Thanks Cyoung😉


Scroll Preserve on route change

Describe the bug
When a user navigates from one route to the other the browser is preserving the scroll.
To Reproduce
Steps to reproduce the behaviour:

After landing into home page, scroll down a bit.
Click on My Courses or any other tab.
The scroll gets preserved.

Expected behaviour
On change of the route the user should be landed on the top of the page instead of the preserved scroll
Environment (please complete the following information):

OS:
Browser:

Please assign this to me
Thank you


SharedPreferences Platform Exception

Steps to reproduce

Install the latest version (2.3.1) of the plugin shared_preferences
Implement: await SharedPreferences.getInstance();

Expected results
To work normally
Actual results
Getting the following error:
Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel: "dev.flutter.pigeon.shared_preferences_android.SharedPreferencesApi.getAll"., null, null)
Code sample
Code sample
SharedPreferences prefs = await SharedPreferences.getInstance();

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.24.0, on macOS 12.6.9 21G726 darwin-x64, locale en-US)
    • Flutter version 3.24.0 on channel stable at /Users/Alvin/Developer/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 80c2e84975 (12 days ago), 2024-07-30 23:06:49 +0700
    • Engine revision b8800d88be
    • Dart version 3.5.0
    • DevTools version 2.37.2

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/Alvin/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    ! Flutter recommends a minimum Xcode version of 15.
      Download the latest version or update via the Mac App Store.
    ! CocoaPods 1.12.1 out of date (1.13.0 is recommended).
        CocoaPods is a package manager for iOS or macOS platform code.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/to/platform-plugins
      To update CocoaPods, see https://guides.cocoapods.org/using/getting-started.html#updating-cocoapods

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] IntelliJ IDEA Community Edition (version 2023.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.92.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.94.0

[✓] Connected device (3 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 14 (API 34) (emulator)
    • macOS (desktop)              • macos         • darwin-x64     • macOS 12.6.9 21G726 darwin-x64
    • Chrome (web)                 • chrome        • web-javascript • Google Chrome 127.0.6533.100

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Any fixes?

Closing as a duplicate of https://github.com/flutter/flutter/issues/153075

Nothing yet
On Mon, 12 Aug 2024 at 12:07, Najib @.***> wrote:

Any fixes?
—
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/153259#issuecomment-2283453934,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIAZZTW776CXELCLRIIWVM3ZRB3MTAVCNFSM6AAAAABMLIEELWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBTGQ2TGOJTGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


lsm-nice isn't working as expected

I have tried to change the lsm program code, with lsm-nice-ebpf/src/main.rs like this:
unsafe fn try_task_setnice(ctx: LsmContext) -> Result<i32, i32> {
    info!(&ctx, "Function task_setnice called");
    let p: *const task_struct = ctx.arg(0);
    let nice: c_int = ctx.arg(1);
    let ret: c_int = ctx.arg(2);
    info!(&ctx, "The PID has a nice value of {}", nice);
    info!(&ctx, "The PID that we care about is {}", (*p).pid);

    // If previous eBPF LSM program didn't allow the action, return the
    // previous error code.
    if ret != 0 {
        return Err(ret);
    }

    // Deny setting the nice value lower than 0 for the defined PID.
    if (*p).pid == core::ptr::read_volatile(&PID) && nice < 0 {
        return Err(-1);
    }

    // Otherwise allow it.
    Ok(0)
}

and to let aya-log-ebpf to compile, I changed Cargo.toml to this:
[dependencies]
aya-bpf = { git = "https://github.com/aya-rs/aya", branch = "main" }
lsm-nice-common = { path = "../lsm-nice-common" }
aya-log-ebpf = { git = "https://github.com/aya-rs/aya", branch = "main" }

I do get output from the program, but I'm able to use sudo renice -10 -p 12228 without any issues
    Finished release [optimized] target(s) in 2m 21s
[2023-07-15T04:40:21Z INFO  lsm_nice] PID: 12228
[2023-07-15T04:40:21Z INFO  lsm_nice] Waiting for Ctrl-C...
^C[2023-07-15T04:40:34Z INFO  lsm_nice] Exiting...

vagrant@test-ebpf:~$ sudo renice -20 -p 12228
12228 (process ID) old priority 0, new priority -20
vagrant@test-ebpf:~$ cat /sys/kernel/security/lsm
lockdown,capability,landlock,yama,apparmor,bpf

Am I doing something wrong here? The default lsm-nice example doesn't work either, so I tried to get some log information, but it looks like the ebpf program isn't working at all.

Gets fixed by https://github.com/aya-rs/book/pull/115


[Question] Is ++x a left value?

According to the document, ++x is not recognized as a left value by default requirement, which is contradictory to basic-package/basic-66.mx: line 35: (++(++a))++. So which is correct or otherwise?

Merged.

Merged.


Rotate Affine augment Keypoints

Hi,
I am using sequential augment with only rotate affine transform with -30, 30 range.
Then I wanted to augment keypoints. I did this with the point (100, 100). But, the augmented point is not in the correct position. I ran the key point augmentation for other sequential non-affine augmentations and they seemed to work fine.
I used the same visualization technique in the README.md with the "draw_on_image" method
Can you please help me with this.

I just checked that and everything seemed correct to me.
The below script creates a black test image of size 150x150 with white squares in the corners. It uses one keypoint at (100, 100). It runs 1000 augmentations of both image and keypoint with rotations in range (-15, 15) and averages the result images.
from __future__ import print_function, division
import imgaug as ia
from imgaug import augmenters as iaa
from scipy import misc
import numpy as np

s = 150 # size of the image
pd = 25 # positions of each corner pixel (e.g. at (25, 25), (-25, 25), ...)
ps = 4 # size of each square to draw
img = np.zeros((s, s, 3), dtype=np.uint8) # black example image

# add white squares in the corners
img[ pd-ps:pd,   pd-ps:pd,  :] = 255
img[-pd-ps:-pd,  pd-ps:pd,  :] = 255
img[ pd-ps:pd,  -pd-ps:-pd, :] = 255
img[-pd-ps:-pd, -pd-ps:-pd, :] = 255

# define one test keypoint at (100, 100)
kp_x = 100
kp_y = 100
kps = [ia.KeypointsOnImage([ia.Keypoint(kp_x, kp_y)], shape=img.shape)]
img_with_kp = np.copy(img)
img_with_kp[kp_y-ps:kp_y, kp_x-ps:kp_x, 1] = 255

nb_augs = 1000 # how often to augment here
aug = iaa.Affine(rotate=(-15, 15)) # rotate -15 to 15 deg

# augment the image N times
imgs_aug = aug.augment_images(
    np.tile(img[np.newaxis, ...], (nb_augs, 1, 1, 1))
)

# augment the keypoints N times
kps_aug = []
for i in xrange(nb_augs):
    kps_aug = aug.augment_keypoints(kps)
    x, y = kps_aug[0].keypoints[0].x, kps_aug[0].keypoints[0].y

    # code to test draw_on_image
    #img2 = kps_aug[0].draw_on_image(np.copy(img))
    #misc.imshow(img2)

    # draw each keypoint as a (ps x ps) square at its new (augmented) coords
    # only draw if the kp is still inside the image
    x1 = x - ps
    x2 = x
    y1 = y - ps
    y2 = y
    if 0 <= x1 < s and 0 <= x2 < s and 0 <= y1 < s and 0 <= y2 < s:
        imgs_aug[i, y1:y2, x1:x2, 1] = 255

# plot
imgs_aug_avg = np.average(imgs_aug, axis=0)
#misc.imshow(np.hstack([img_with_kp, imgs_aug_avg.astype(np.uint8)]))
misc.imsave("test_image.png", np.hstack([img_with_kp, imgs_aug_avg.astype(np.uint8)]))

Result image:

Left: Unaugmented image
Right: Average over 1000 augmented/rotated versions. White are the corner pixels (part of the image), green is the keypoint.

I just tried out your code. It looks great.
I changed it to match mine. I first used affine directly as you did and I think it worked but then added sequential affine to compare. This is the result I see:

Heres my code: (Hope I didn't commit some very basic mistake)
from __future__ import print_function, division
import imgaug as ia
from imgaug import augmenters as iaa
from scipy import misc, ndimage
import numpy as np

s = 150  # size of the image
pd = 25  # positions of each corner pixel (e.g. at (25, 25), (-25, 25), ...)
ps = 4  # size of each square to draw
img = np.zeros((s, s, 3), dtype=np.uint8)  # black example image
# add white squares in the corners
img[pd - ps:pd, pd - ps:pd, :] = 255
img[-pd - ps:-pd, pd - ps:pd, :] = 255
img[pd - ps:pd, -pd - ps:-pd, :] = 255
img[-pd - ps:-pd, -pd - ps:-pd, :] = 255

# define one test keypoint at (100, 100)
kp_x = 100
kp_y = 100
kps = [ia.KeypointsOnImage([ia.Keypoint(kp_x, kp_y)], shape=img.shape)]
img_with_kp = np.copy(img)
img_with_kp[kp_y - ps:kp_y, kp_x - ps:kp_x, 1] = 255

nb_augs = 1000  # how often to augment here
aug_seq = iaa.Sequential({
    iaa.Affine(rotate=(-40, 40))  # rotate -40 to 40 deg
})
aug_aff = iaa.Affine(rotate=(-40, 40))

imgs_seq_aug = aug_seq.augment_image(img)
imgs_aff_aug = aug_aff.augment_image(img)

# augment the keypoints N times
kps_seq_aug = []
kps_aff_aug = []
kps_seq_aug = aug_seq.augment_keypoints(kps)
kps_aff_aug = aug_aff.augment_keypoints(kps)
seq_x, seq_y = kps_seq_aug[0].keypoints[0].x, kps_seq_aug[0].keypoints[0].y
aff_x, aff_y = kps_aff_aug[0].keypoints[0].x, kps_aff_aug[0].keypoints[0].y

# code to test draw_on_image
img_org = kps[0].draw_on_image(np.copy(img_with_kp))
img_seq_aug = kps_seq_aug[0].draw_on_image(np.copy(imgs_seq_aug))
img_aff_aug = kps_aff_aug[0].draw_on_image(np.copy(imgs_aff_aug))
# misc.imshow(np.hstack([img_seq_aug, img_aff_aug, img_org.astype(np.uint8)]))

# plot
misc.imsave("test_image.png", np.hstack([img_seq_aug, img_aff_aug, img_org]))

Seems OK to me at first glance. What do you expect to see instead? The slight difference of the points in the third image is expected as the drawing routine of draw_on_image() is a bit different compared to the one in this script.
Btw, Sequential() usually expects to get a list instead of dictionary, i.e. aug_seq = iaa.Sequential([iaa.Affine(rotate=(-40, 40))]) instead of aug_seq = iaa.Sequential({iaa.Affine(rotate=(-40, 40))}). Shouldn't cause an issue here, but when there are multiple augmenters in Sequential it might lead to them being executed in an unexpected order as standard dictionaries to not have a clearly determined order.

Sorry, I should have mentioned the order. The third is the original image and the first two are the translated.
misc.imsave("test_image.png", np.hstack([img_seq_aug, img_aff_aug, img_org]))
In the third image when you consider the green point and the white points to its right as a triangle you will notice its scalar(none of the distances between the points seem equal).
But when you do the same with the first two images, it looks almost isosceles.
What I expect here is for the distances between the ints to remain the same even after the transformation.
It is kind of hard to spot the difference here, but when I am using face landmarks, the diff is noticeable. A point I marked above an eye was inside the eye after the translation.
(The image below I generated without Sequential().

P.S. Thanks a lot for the pointer with the param type dict that I got wrong

Are you using determinism in your facial landmark script? You have to call aug_det = aug.to_deterministic() before augmenting the image and landmarks. Otherwise, a different rotation might be applied to image and landmarks.
Below is (mostly) the script from above, but modified with determinism:
from __future__ import print_function, division
import imgaug as ia
from imgaug import augmenters as iaa
from scipy import misc, ndimage
import numpy as np

ia.seed(57)

# simple function to draw a keypoint on an image
def drawpoint(img, kp, size=4):
    h, w = img.shape[0:2]
    x = kp.x
    y = kp.y
    x1 = x - size
    x2 = x
    y1 = y - size
    y2 = y
    if 0 <= x1 < w and 0 <= x2 < w and 0 <= y1 < h and 0 <= y2 < h:
        img[y1:y2, x1:x2, 0] = 255
    return img

s = 150  # size of the image
pd = 25  # positions of each corner pixel (e.g. at (25, 25), (-25, 25), ...)
ps = 6  # size of each square to draw
img = np.zeros((s, s, 3), dtype=np.uint8)  # black example image
# add white squares in the corners
img[pd - ps:pd, pd - ps:pd, :] = 255
img[-pd - ps:-pd, pd - ps:pd, :] = 128
img[pd - ps:pd, -pd - ps:-pd, :] = 64
img[-pd - ps:-pd, -pd - ps:-pd, :] = 255

# define one test keypoint at (100, 100)
kp_x = 100
kp_y = 100
kps = [ia.KeypointsOnImage([ia.Keypoint(kp_x, kp_y)], shape=img.shape)]
img_with_kp = np.copy(img)
img_with_kp[kp_y - ps:kp_y, kp_x - ps:kp_x, 2] = 255
img_org2 = kps[0].draw_on_image(np.copy(img_with_kp))

nb_augs = 1000  # how often to augment here
aug_seq = iaa.Sequential({
    iaa.Affine(rotate=(-60, 60))  # rotate -40 to 40 deg
})
aug_aff = iaa.Affine(rotate=(-60, 60))

###############
# make deterministic
###############
aug_seq = aug_seq.to_deterministic()
aug_aff = aug_aff.to_deterministic()
###############

# augment images
imgs_seq_aug = aug_seq.augment_image(img_with_kp)
imgs_aff_aug = aug_aff.augment_image(img_with_kp)

# augment keypoints
kps_seq_aug = []
kps_aff_aug = []
kps_seq_aug = aug_seq.augment_keypoints(kps)
kps_aff_aug = aug_aff.augment_keypoints(kps)
seq_x, seq_y = kps_seq_aug[0].keypoints[0].x, kps_seq_aug[0].keypoints[0].y
aff_x, aff_y = kps_aff_aug[0].keypoints[0].x, kps_aff_aug[0].keypoints[0].y

# code to test draw_on_image
img_org = kps[0].draw_on_image(np.copy(img_with_kp))
img_seq_aug = kps_seq_aug[0].draw_on_image(np.copy(imgs_seq_aug))
img_aff_aug = kps_aff_aug[0].draw_on_image(np.copy(imgs_aff_aug))
img_seq_aug2 = drawpoint(np.copy(img_seq_aug), kps_seq_aug[0].keypoints[0])
img_aff_aug2 = drawpoint(np.copy(img_aff_aug), kps_aff_aug[0].keypoints[0])
# misc.imshow(np.hstack([img_seq_aug, img_aff_aug, img_org.astype(np.uint8)]))

# plot
misc.imsave("test_image2.png", np.hstack([img_seq_aug2, img_aff_aug2, img_org, img_org2]))

Images are the same as before.
Blue = keypoint, but drawn on the image before augmentation. So it is modified by augment_image() instead of augment_keypoints()
Green = keypoint after augmentation, drawn by draw_on_image()
Red = keypoint after augmentation, drawn by drawkeypoint(), which uses a similar drawing technique as the blue keypoint.

I tried with to_deterministic too. Here is the result

Shear works well. with deterministic but the rotate is still off.

I just tried the above script with similar image sizes and keypoints as in your example. Still seems to generate reasonable outputs (see below). Do you maybe happen to resize the images before or after the augmentation? It is possible that you are working with the wrong image shape in your keypoints, leading to them being rotated on a larger image than the one that you augment. In the below script, you can uncomment #kps = [ia.KeypointsOnImage(kps, shape=(img.shape[0]+50, img.shape[1]+50))] (and comment the other kps=... line) to see the effect.
from __future__ import print_function, division
import imgaug as ia
from imgaug import augmenters as iaa
from scipy import misc, ndimage
import numpy as np

ia.seed(57)

def drawpoint(img, kp, size=4):
    h, w = img.shape[0:2]
    x = kp.x
    y = kp.y
    x1 = x - size
    x2 = x
    y1 = y - size
    y2 = y
    if 0 <= x1 < w and 0 <= x2 < w and 0 <= y1 < h and 0 <= y2 < h:
        img[y1:y2, x1:x2, 0] = 255
    return img

def drawpoints(img, kps, size=4):
    for kp in kps:
        drawpoint(img, kp, size=size)
    return img

sw = 256  # size of the image
sh = 305  # size of the image
pd = 25  # positions of each corner pixel (e.g. at (25, 25), (-25, 25), ...)
ps = 6  # size of each square to draw
img = np.zeros((sh, sw, 3), dtype=np.uint8)  # black example image
# add white squares in the corners
img[pd - ps:pd, pd - ps:pd, :] = 255
img[-pd - ps:-pd, pd - ps:pd, :] = 128
img[pd - ps:pd, -pd - ps:-pd, :] = 64
img[-pd - ps:-pd, -pd - ps:-pd, :] = 255
img[0, :, :] = 20
img[-1, :, :] = 20
img[:, 0, :] = 20
img[:, -1, :] = 20

# define one test keypoint at (100, 100)
kps_coords = [(50, 75), (150, 75), (100, 120), (60, 160), (120, 160)]
kps = []
img_with_kp = np.copy(img)
for kp_x, kp_y in kps_coords:
    img_with_kp[kp_y - ps:kp_y, kp_x - ps:kp_x, 2] = 255
    kps.append(ia.Keypoint(kp_x, kp_y))
kps = [ia.KeypointsOnImage(kps, shape=img.shape)]
#kps = [ia.KeypointsOnImage(kps, shape=(img.shape[0]+50, img.shape[1]+50))]
img_org2 = kps[0].draw_on_image(np.copy(img_with_kp))

nb_augs = 1000  # how often to augment here
aug_seq = iaa.Sequential({
    iaa.Affine(rotate=(-60, 60), shear=(-20, 20))  # rotate -40 to 40 deg
})
aug_aff = iaa.Affine(rotate=(-60, 60), shear=(-20, 20))

###############
# make deterministic
###############
aug_seq = aug_seq.to_deterministic()
aug_aff = aug_aff.to_deterministic()
###############

# augment images
imgs_seq_aug = aug_seq.augment_image(img_with_kp)
imgs_aff_aug = aug_aff.augment_image(img_with_kp)

# augment keypoints
kps_seq_aug = []
kps_aff_aug = []
kps_seq_aug = aug_seq.augment_keypoints(kps)
kps_aff_aug = aug_aff.augment_keypoints(kps)
#seq_x, seq_y = kps_seq_aug[0].keypoints[0].x, kps_seq_aug[0].keypoints[0].y
#aff_x, aff_y = kps_aff_aug[0].keypoints[0].x, kps_aff_aug[0].keypoints[0].y

# code to test draw_on_image
img_org = kps[0].draw_on_image(np.copy(img_with_kp))
img_seq_aug = kps_seq_aug[0].draw_on_image(np.copy(imgs_seq_aug))
img_aff_aug = kps_aff_aug[0].draw_on_image(np.copy(imgs_aff_aug))
img_seq_aug2 = drawpoints(np.copy(img_seq_aug), kps_seq_aug[0].keypoints)
img_aff_aug2 = drawpoints(np.copy(img_aff_aug), kps_aff_aug[0].keypoints)
# misc.imshow(np.hstack([img_seq_aug, img_aff_aug, img_org.astype(np.uint8)]))

# plot
misc.imsave("test_image2.png", np.hstack([img_seq_aug2, img_aff_aug2, img_org]))

With correct image shape:

With incorrect image shape:

You were right man. The issue had something to do with the shape.
And it was occurring in the test code because of the deterministic function that I missed.
Sorry for wasting your time by raising an issue here.
Thanks a lot for all your help and such prompt responses.

I alse meet the error.  And, when I use "deterministic", the error is fixed.


buildRelativePath for package name

if a package name passed to buildRelativePath() instead of a fs path, it should return the package name as it.
buildRelativePath("app.module.ts", "./file.ts")
//returns  ../../file.ts

buildRelativePath("app.module.ts", "@scope/package-name")
//returns @scope/package-name

buildRelativePath("app.module.ts", "package-name")
//returns package-name
//should be treated as a package name and not an absolute or relative path unless it starts with `/` or './`

this issue is related to angular schematics and located in @schematics/angular/utility/find-module

Those utils are part of the private API.
I don’t see any of our schematics to be effected, if indeed this effects one of our schematics please follow the issue template and provide a reproduction.


Use code from existing Collection?

I just figured I'd point out that someone has already written a decent enough (on the surface anyway) collection for Icinga.  https://github.com/fiaasco/icinga2 .  Perhaps you could contact the dev and ask to import some of their code instead of (re)writing from scratch?

Hello @schmitmd, thanks for pointing the collection out, I'll have look.
In general it would be a good thing to reuse some code. But we try to get everything rewritten to achieve a certain goal. The main goal is to generate configuration mainly from the new parser. This set, any Icinga instance can then configured with this mechanism and therefore we can't reuse the existing code.
I'll close this issue.

Sorry for closing the issue so fast! Hope this does answer your question.

It's all good.  My only outstanding question is if y'all are planning on adding postgres support to the collection.  As far as I can tell, no existing collections are set up to work w/ pgsql-ido.


ByBit USDT Perpetual

While trying out crex I noticed I couldn't subscribe to positions on my bybit USDT account. It seems that the endpoint for USDT is different than the inverse one, see: https://github.com/ccxt/ccxt/issues/6827
I get the following error:
2020/07/31 20:25:55 SignedRequest: {"ret_code":10001,"ret_msg":"Param validation for 'symbol' failed on the 'symbol' tag","ext_code":"","ext_info":"","result":null,"time_now":"1596219955.502511","rate_limit_status":119,"rate_limit_reset_ms":1596219955501,"rate_limit":120}
I see in the debug log it doesn't include the /private/linear/position/list as discussed above:
https://api.bybit.com/v2/private/position/list?xxxxx
I tried using the following symbol/market combinations:
 market := crx.Market{ 		Symbol: "BTCUSDT", 	} ws.SubscribePositions(market, func(positions []*crx.Position) { 		//log.Printf("%#v", positions) 		for _, v := range positions { 			fmt.Println("profit:", v.Profit) 			fmt.Println("avg price:", v.AvgPrice) 			fmt.Println("size", v.Size) 		} 	})
position, _ := ws.GetPositions("USDT") 		for _, v := range position { 			fmt.Println(v) 		}
I looked around but couldnt find a place to fix this. Can you maybe help me out? Thanks!

By contrast, this library currently does not support usdt currency pairs.

Updated


error message printed to stderr, exit with error code on failure

Features:

error messages are now printed to stderr
when program failed it return an error code

error code use case:
stackit -e "python broken_app.py" && vim broken_app.py

if no error question is return by stackit vim is not launched
if questions are return I can found a solution on StackOverflow and fix my broken_app.py using vim

@WnP I like this, and it should hopefully be an easy pull request to evaluate.
Unfortunately, I'm super swamped right now, hence the delay––I'll try to review this by EOD, but it might take until tomorrow.

Works beautifully––merging!


App States + streamlined cleanup

Set up bevy states.
I also added a generic cleanup system that despawns all entities with a given marker component. I think this is a convenient helper for streamlining cleanup, particularly when exiting states. Let me know if this is controversial.

I think using despawn_recursive is justified, because:

this is a one-off system that doesn't run every frame, so any additional perf cost of recursive shouldn't matter
this makes it easier to manage entities, you don't have the hassle of ensuring every child is also tagged.

this is important if using plugins in the future; some plugins like to spawn their own entities as children of yours, and there is no easy way to tag their entities

I'm fine with the use of despawn_recursive, doesn't seem to be a problem and we can always change it later. I'm merging it.


CoreGraphics outputs different colors due to color management

The Cairo, Skia and SVG backends do no color management at all, so RGBA fill colors fed to the backend end up in the output unchanged.
CoreGraphics does color management, and I haven't found a way to turn it off. My random fiddlings with the color space (for CGColor construction and context construction) didn't work.
I know virtually nothing about color management (let alone how it works in CoreGraphics), so if anyone has wisdom or tips, I'd be very grateful.
To be able to (optionally?) turn off color management would be very helpful, as currently we can't automatically compare the output of  CoreGraphics images with the other backends.

Fixed by #74.


LSP hover no longer appearing after updating to v0.5.2 from v0.5.1 when Cargo.toml contains only conditional dependencies

Description
This is a niche issue because it seems to only impact Cargo.toml files without a plain [dependencies] section, such as when the dependencies are all conditional. I'm just reporting it for your awareness more than anything. I plan on restructuring my affected project in a way that won't trigger this bug anymore for unrelated reasons. The change occurred between v0.5.1 and v0.5.2. Now require("crates").popup_available() returns false and require("crates").show_popup() doesn't produce any output. A possible related commit is https://github.com/saecki/crates.nvim/commit/dc14cc2cb49f10dbeaedfd4c23c21842cc054d14
Neovim version
NVIM v0.10.1 Build type: Release LuaJIT 2.1.1723675123 Run "nvim -V1 -v" for more info
Health check
============================================================================== crates: require("crates.health").check()  Checking plugins ~ - OK null-ls.nvim installed  Checking external dependencies ~ - OK curl installed - OK xdg-open installed
Operating system and version
EndeavourOS rolling release
Expected behavior
Version numbers should appear and the hover popup should as well.
Actual behavior
Neither appears.
Minimal config
for name, repo in pairs({
	crates = {
		url = "https://github.com/saecki/crates.nvim",
--		branch = "v0.5.1", -- Uncomment for a version that works
	},
	cmp = { url = "https://github.com/hrsh7th/nvim-cmp" },
}) do
	local install_path = vim.fn.fnamemodify("crates_issue/" .. name, ":p")
	if vim.fn.isdirectory(install_path) == 0 then
		vim.notify("cloning " .. repo.url .. " into " .. install_path)
    if repo.branch == nil then
      vim.fn.system({ "git", "clone", "--depth=1", repo.url, install_path })
    else
      vim.fn.system({ "git", "clone", "--depth=1", "--branch", repo.branch, repo.url, install_path })
    end
	end
	vim.opt.runtimepath:append(install_path)
end

require("crates").setup({
	completion = {
		cmp = { enabled = true },
	},
})

require("cmp").setup({
	sources = { { name = "crates" } },
})

Cargo.toml
[target.'cfg(not(target_family = "wasm"))'.dependencies]
anyhow = "1"
Steps to reproduce

nvim --clean -u minimal.lua
Open a Cargo.toml file that has only conditional dependencies.
Observe the lack of current version information after the anyhow = "1" line.
Move the cursor on top of a package name and type in :lua require("crates").show_popup().
Observe the lack of a popup.

The problem was that sections containing whitespace weren't recognized. Should work fine now.


Adding categories and cover before Save or Publish

Right now, In the Editor, When we want to create a post/page, we have to publish or save it first,
Then the categories and cover is available to add, which is not good.
Users should be able to add categories, cover or any other things before saving or publishing.

Completed.


[Feature]: Build in support for Google Tables API

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
Add Google Tables API as a supported datasource.
Why should this be worked on?
Have you seen google tables?? It's awesome. Great concept, like NocoDB, Airtable, BaseRow, etc. It would make a ton of sense to have it as a datasource.
https://tables.area120.google.com/about

@bamfdev thanks for the feature request! We'll probably wait for the datasource to gain a little more popularity before adding this to our roadmap

@Nikhil-Nandagopal You know what? I didn't do enough research before posting this. Supabase markets itself as an alternative, but instead of a Firestore, it just uses an internal PostgresDB. So, if you build in Postgres support, Supabase will likely automatically be supported as well. We can just ignore this request for now.


Excluding tables from the database clean

Howdy,
I've been digging through the code and found the except / only options but I don't quite understand how to use them.
I've tried Database.clean(:except => [:bar, :foo]) with no luck - my ruby-fu wasn't quite strong enough to understand what was going on in the code.
Cheers!
Thomas

I have this issue too however I am not totally clear on the fix suggested here.  Basically I have added an except to my code however that table still gets wiped when i run my tests.
begin
   DatabaseCleaner.strategy = :truncation, { :except => %w[countries] }
rescue NameError
  raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
end

Could you post your [test|spec]_helper.rb?

For other people searching and reading this, I was having the same problem but I believe it to be a documentation bug.
Originally I had this:
RSpec.configure do |config|
  config.mock_with :rspec

  config.before(:suite) do
    DatabaseCleaner.strategy = :transaction, {except: %w[country_type zone_type]}
    DatabaseCleaner.clean_with(:truncation)
  end

  config.before(:each) do
    DatabaseCleaner.start
  end

  config.after(:each) do
    DatabaseCleaner.clean
  end
end

And it was nuking everything.  I understood the .clean_with to obey the except: [...] constraints setup by .strategy.  I took to reading the code and found out that this is incorrect: .clean_with and .strategy don't use each others except lists.  The simple fix is:
RSpec.configure do |config|
  config.mock_with :rspec

  keep_tables = %w[country_type zone_type]
  config.before(:suite) do
    DatabaseCleaner.strategy = :transaction, {except: keep_tables}
    DatabaseCleaner.clean_with(:truncation, {except: keep_tables})
  end

  config.before(:each) do
    DatabaseCleaner.start
  end

  config.after(:each) do
    DatabaseCleaner.clean
  end
end

Hopefully this helps others with the same misunderstanding.  :-)

@robacarp Thanks! Saved my day.
@bmabey Should not the fact that clean_with doesn't share the excluded tables passed in except in strategy= be included in the README? It would be more obvious.


Imported taxonomies loose their owner and weight

Last Dev version.

I didn't look at the Owner but the weight worked for me. Exported terms, deleted them, imported them, they kept the weight and order after import.

I did it 2 weeks ago, importing in a recipe. I just discovered there are no weight and owners for terms.
Envoyé à partir de mon sanyo phc 25

De : Sébastien<EMAIL_ADDRESS>Envoyé : 13/04/2016 19:35
À<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Objet : Re: [OrchardCMS/Orchard] Imported taxonomies loose their owner and weight (#6760)
I didn't look at the Owner but the weight worked for me. Exported terms, deleted them, imported them, they kept the weight and order after import.

You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/OrchardCMS/Orchard/issues/6760#issuecomment-209557752

Now I understand how to try to repro, it's actually importing a Term which doesn't these properties in the recipe, they could get removed. Will try that.