Poll failed following MiCloud request

I have been trying to integrate my Chunmi Juicer and Airer to homebridge and I am constantly receiving poll failed errors, which once in a while render my homekit commands unresponsive.
After checking the log, I reckon that the error always appear along with MiCloud requests.
[2021/12/17 下午8:58:47] [miot] [My airer] Trying to reconnect...
  miio:network Grabbing reference to network +29s
  thing:miio:437149551 Using manual token: a1fc38315dd9e6e8c6bd6263e5357826 +29s
[2021/12/17 下午8:58:47] [miot] [My airer] Device diconnected!
  miio:network Releasing reference to network +4ms
  thing:miio:437149551 -> (5) {"method":"miIO.info","params":[],"id":5} +4ms
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 1a 0e 5f 6f 00 01 69 6a eb e4 fa bf d3 52 29 20 90 0f b3 43 0c 0c 14 99> +29s
  miio:packet <- <Buffer 21 31 01 d0 00 00 00 00 1a 0e 5f 6f 00 01 69 6b 0c 38 1d 2d 2f 31 db 5c 7b 85 0f 22 2b f7 ae 0b> +175ms
  miio:packet <- <Buffer 21 31 01 d0 00 00 00 00 1a 0e 5f 6f 00 01 69 6b 0c 38 1d 2d 2f 31 db 5c 7b 85 0f 22 2b f7 ae 0b> +3ms
  thing:miio:437149551 <- Message: `{"id":5,"result":{"life":92523,"uid":2557209719,"model":"hyd.airer.znlyj4","token":"a1fc38315dbd6263e5357826","ipflag":1,"fw_ver":"2.2.1","mcu_fw_ver":"0002","miio_ver":"0.0.9","hw_ver":"esp32","mmfree":72808,"mac":"B4:60:ED:2C:F2:C4","wifi_fw_ver":"","ap":{"ssid":"K2P_Eagle","bssid":"58:41:20:22:49:74","rssi":-88,"primary":11},"netif":{"localIp":"<IP_ADDRESS>","mask":"<IP_ADDRESS>","gw":"<IP_ADDRESS>"}},"exe_time":50}` +182ms
  miio:network Grabbing reference to network +184ms
  miio:network Releasing reference to network +2ms
[2021/12/17 下午8:58:47] [miot] [My airer] Connected to device: hyd.airer.znlyj4
[2021/12/17 下午8:58:47] [miot] [My airer] Setting up device!
[2021/12/17 下午8:58:47] [miot] [My airer] Doing device specific setup
[2021/12/17 下午8:58:47] [miot] [My airer] Device requires MiCloud! Trying to connect!
[2021/12/17 下午8:58:47] [miot] [My airer] Log in to MiCloud cn server with username<PHONE_NUMBER>3. Request timeout: 5000 milliseconds.
[2021/12/17 下午8:58:47] [miot] [My airer] MiCloud - Login step 1
[2021/12/17 下午8:58:47] [miot] [My airer] MiCloud - Login step 1 result: OK - &&&START&&&{"serviceParam":"{\"checkSafePhone\":false,\"checkSafeAddress\":false,\"lsrp_score\":0.0}","qs":"%3Fsid%3Dxiaomiio%26_json%3Dtrue","code":70016,"description":"登录验证失败","securityStatus":0,"_sign":"0psXfr43eNI0IX6q9Suk3qWbRqU=","sid":"xiaomiio","result":"error","captchaUrl":null,"callback":"https://sts.api.io.mi.com/sts","location":"https://account.xiaomi.com/fe/service/login?_json=true&sid=xiaomiio&qs=%253Fsid%253Dxiaomiio%2526_json%253Dtrue&callback=https%3A%2F%2Fsts.api.io.mi.com%2Fsts&_sign=0psXfr43eNI0IX6q9Suk3qWbRqU%3D&serviceParam=%7B%22checkSafePhone%22%3Afalse%2C%22checkSafeAddress%22%3Afalse%2C%22lsrp_score%22%3A0.0%7D&showActiveX=false&theme=&needTheme=false&bizDeviceType=","pwd":0,"desc":"登录验证失败"}
[2021/12/17 下午8:58:48] [miot] [My airer] MiCloud - Login step 2
[2021/12/17 下午8:58:48] [miot] [My airer] MiCloud - Login step 2 result: OK - &&&START&&&{"qs":"%3Fsid%3Dxiaomiio%26_json%3Dtrue","ssecurity":"1+mT9sF8rjBA==","code":0,"passToken":"V1dFYS86QCQStplp/U/fbx9Fqo+K2p+q+bKYIH4hczG1iBlGv/378D5YxL3zcfXqaN5JSOB3yHgkkfSB+MMvXlQmJrqJ4PS8FNel918fdPiDdNJwQsCS2YtQZOfrZ31i3T1iUM2nCKcJgSN3JluSJBE7wj8Ts7QR6qAdTdqfYNToO+G85vnZ4/rrqg8Z2fMpuXnj7NMzAeODcdVpvPgraOjRq/JXQBhiWd9NEGHoF7JyzJ851yWv2/RKHb/6WRo=","description":"成功","securityStatus":0,"nonce":1627873524373425152,"userId":2557209719,"cUserId":"e6hc2XfWAoDHaEvMdWejoCXGbR0","result":"ok","psecurity":"2CyNKTrH+0+JlnMU0LIC/w==","captchaUrl":null,"location":"https://sts.api.io.mi.com/sts?d=FHKSNL&ticket=0&pwd=1&p_ts=1639745905000&fid=0&p_lm=1&auth=KeKTHiG2wt5h4o3mGd4bkMuLS63pT8hHMIz0bcKaakw%2F3IF7jwOGLzu11WHu0P5Kghu03myoZd%2BI%3D&m=1&tsl=0&nonce=4VGW0h0X19wBoQJK&_ssign=i11u8Fi7S8Q8A0A%2BjZQQjS1DmF8%3D","pwd":1,"desc":"成功"}
[2021/12/17 下午8:58:48] [miot] [My airer] MiCloud - Login step 3
[2021/12/17 下午8:58:48] [miot] [My airer] MiCloud - Login step 3 result: OK - ok
[2021/12/17 下午8:58:48] [miot] [My airer] MiCloud - Login successful!
[2021/12/17 下午8:58:48] [miot] [My airer] Successfully connected to MiCloud!
[2021/12/17 下午8:58:48] [miot] [My airer] Doing initial property fetch
[2021/12/17 下午8:58:48] [miot] [My airer] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[2021/12/17 下午8:58:48] [miot] [My airer] Chunks:  [
 [
  "light_power",
  "device_fault",
  "status",
  "current_position"
 ]
]
[2021/12/17 下午8:58:48] [miot] [My airer] MiCloud request https://api.io.mi.com/app/miotspec/prop/get - {"_nonce":"PEQSDFZwzM0BoQJK","data":"{\"params\":[{\"did\":\"437149551\",\"siid\":3,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":4},{\"did\":\"437149551\",\"siid\":2,\"piid\":3}]}","signature":"T4jgfXkodQPYcUkPK5tLB3D0sHrMVlqN01aJtN9jjiE="}
[2021/12/17 下午8:58:48] [miot] [My airer] Device setup finished! Device ready, you can now control your device!
[2021/12/17 下午8:58:48] [miot] [My airer] Device connected!
[2021/12/17 下午8:58:48] [miot] [My airer] Successfully saved device info!
[2021/12/17 下午8:58:48] [miot] [My airer] Error on initial property request! Error: No response or response empty!
  ciao:Responder Sending response via unicast to {"address":"<IP_ADDRESS>","port":5353,"interface":"ens1"} (took 9 ms): [PTR] answers and [TXT,SRV,A,AAAA,AAAA,NSEC,NSEC] additionals with size 361B (UPS: 1440) +20s
[2021/12/17 下午8:58:55] [miot] [My airer] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[2021/12/17 下午8:58:55] [miot] [My airer] Chunks:  [
 [
  "light_power",
  "device_fault",
  "status",
  "current_position"
 ]
]
[2021/12/17 下午8:58:55] [miot] [My airer] MiCloud request https://api.io.mi.com/app/miotspec/prop/get - {"_nonce":"cwqx3ZihojUBoQJK","data":"{\"params\":[{\"did\":\"437149551\",\"siid\":3,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":4},{\"did\":\"437149551\",\"siid\":2,\"piid\":3}]}","signature":"fSSY1IVFl++0dwrBI42ju9CfvXVvhm5FEfbh/rfesV0="}
[2021/12/17 下午8:58:55] [miot] [My airer] Poll failed! No response from device! Error: No response or response empty!
  ciao:Responder Sending response via unicast to {"address":"<IP_ADDRESS>","port":5353,"interface":"ens1"} (took 7 ms): [PTR] answers and [TXT,SRV,A,AAAA,AAAA,NSEC,NSEC] additionals with size 361B (UPS: 1440) +6s
[2021/12/17 下午8:59:02] [miot] [My airer] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[2021/12/17 下午8:59:02] [miot] [My airer] Chunks:  [
 [
  "light_power",
  "device_fault",
  "status",
  "current_position"
 ]
]
[2021/12/17 下午8:59:02] [miot] [My airer] MiCloud request https://api.io.mi.com/app/miotspec/prop/get - {"_nonce":"XR/CerxUt3cBoQJL","data":"{\"params\":[{\"did\":\"437149551\",\"siid\":3,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":4},{\"did\":\"437149551\",\"siid\":2,\"piid\":3}]}","signature":"BePYfy9I+SF28raaMvcV5fiLonq7GgJpZ/DKH/2xSJo="}
[2021/12/17 下午8:59:02] [miot] [My airer] Poll failed! No response from device! Error: No response or response empty!
  haier-ac:error Connection closed>>> +17s
[2021/12/17 下午8:59:09] [miot] [My airer] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[2021/12/17 下午8:59:09] [miot] [My airer] Chunks:  [
 [
  "light_power",
  "device_fault",
  "status",
  "current_position"
 ]
]
[2021/12/17 下午8:59:09] [miot] [My airer] MiCloud request https://api.io.mi.com/app/miotspec/prop/get - {"_nonce":"9g1USRZDbWwBoQJL","data":"{\"params\":[{\"did\":\"437149551\",\"siid\":3,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":4},{\"did\":\"437149551\",\"siid\":2,\"piid\":3}]}","signature":"lx7g6Aue5wQBmZx6eWUQiw7ZfW8NuQeWQrrqOkxTZS8="}
[2021/12/17 下午8:59:09] [miot] [My airer] Poll failed! No response from device! Error: No response or response empty!
  ciao:Responder Sending response via unicast to {"address":"<IP_ADDRESS>","port":5353,"interface":"ens1"} (took 7 ms): [PTR] answers and [TXT,SRV,A,AAAA,AAAA,NSEC,NSEC] additionals with size 361B (UPS: 1440) +9s
[2021/12/17 下午8:59:16] [miot] [My airer] Splitting properties into chunks. Number of chunks: 1. Chunk size: 14
[2021/12/17 下午8:59:16] [miot] [My airer] Chunks:  [
 [
  "light_power",
  "device_fault",
  "status",
  "current_position"
 ]
]
[2021/12/17 下午8:59:16] [miot] [My airer] MiCloud request https://api.io.mi.com/app/miotspec/prop/get - {"_nonce":"XO4gMGPkidEBoQJL","data":"{\"params\":[{\"did\":\"437149551\",\"siid\":3,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":1},{\"did\":\"437149551\",\"siid\":2,\"piid\":4},{\"did\":\"437149551\",\"siid\":2,\"piid\":3}]}","signature":"PQiEjViE61mBZ8Xd/dcnIxQsP4WUBq9lIUmWMC2ARcE="}
[2021/12/17 下午8:59:16] [miot] [My airer] Poll failed 4 times in a row! Stopping polling and trying to reconnect! Reason: Error: No response or response empty!
[2021/12/17 下午8:59:16] [miot] [My airer] Logout from MiCloud for username<PHONE_NUMBER>3
[2021/12/17 下午8:59:16] [miot] [My airer] Trying to reconnect...

It might be that you have the wrong country specified. I see that mi cloud does not get any response for the airer device, do I suppose either it is not registered in the mi cloud or you specified the wrong country.

Looks like a network issue. The banner in the mijia app indicated that the airer connection to my router is unstable, though I do not know the reasons as they are just meters away.
I think this can be closed as it doesn't seem to be anyway related to this gorgeous plugin.


[fix] Upgrade disappeared sources

I have tested installation only

Well I dunno what to do ... we can yolomerge this but we'll have the same issue in one month :/
We should really consider hosting those in some place (I'm not a big fan of the "throw the archive in git" solution) so that the application keeps working on the mid-term and we would be able to test upgrades...


Hosting a Webserver Using a Raspberry Pi

Article checklist
ATTENTION: In your PR - add the ISSUE (topic form) # that this PR corresponds to. You can do this by also adding a comment that states "This fixes #(enter your Idea Content Form #)" to link and close your Idea Content (issue) when the PR is merged.
This solves #3008.
NOTE: (Please ensure that you have only one open issue + linked pull request at a time. This will ensure that we complete the article in a timely manner from inception to publishing.)
If you have not already please go over our Resources Page for more tips and tricks on how to improve our overall technical writing.
Preliminary Checks - Formatting and Structure

[x] Is the article you are submitting an in-depth and unique article? Does it go beyond what is in the official docs and what is covered in other blog sites. See these articles as examples.
[x] Does your article follow any of the suggested structure formats? - see example formats
[x] Is your article properly formatted in Markdown? - see Github Markdown guide
[x] Have you used the correct folder and file structure? - see Contribution Guidelines
[x] Is your article over 750 words? - Tool: Wordcounter.net
[x] Have you used our preferred heading structure? - H3 (###) and up
[x] Does your article provide enough value and detail about your topic? - Articles should be clear, accurate, and fully explained.
[x] Can your article be understood by beginners? - Assume the audience is smart but has no prior exposure to the common terminology in your article.
[x] Have you included a hero image that is 600x400 pixels and have the copyright to use it? - Tools: Pixlr Image Editor for resizing and Unsplash for Creative Commons images
[x] In your PR - add a comment that states "This fixes #(enter your Idea Content Form #)" to link and close your Idea Content (issue) when the PR is merged.

Grammar & plagiarism checks

[x] Have you spellchecked and grammar checked your article? - Tools: Write&Improve - ProWritingAid -  Grammarly
[x] Please place your article through a 3rd party plagiarism checker? We suggest using Quetext, this tool is free and has a daily limit. We typically accept articles with 10% or less.
[x] Have you checked your article for readability? - Tool: Hemmingway
[x] Have you added sources for quotes and images that aren't yours?

Technical checks

[x] Are your code snippets properly formatted for syntax highlighting - see Syntax guide

Contribution guidelines
For first-time contributors and for more details, see Contributing Guidelines

@eunice-wanjiku
Good afternoon and thank you for submitting your article for publishing.
Your article has been entered into our queue and should be reviewed (and published pending any changes) as soon as a peer reviewer is finished with the ones in the queue before it. 🚀
Thank you.

Hello @eunice-wanjiku - Welcome to Section's engineering education program. I'll be reviewing your article. Before we begin the review, i need you to make the following changes:

Use subheadings format for listing the steps. Use ### for headings and #### or lower for subheadings.  The steps heading should give a brief description of what is happening in each step. Take a look at this tutorial to understand this better.
I also noticed some of your images are in the correct file format but are in capital.
As soon as you make the changes we'll begin the review. Also revisit your article one more time to make the review process faster.

@Dawe-7 Done

plagiarism check done

Hello @eunice-wanjiku - Welcome to Section's engineering education program. I'll be reviewing your article. Before we begin the review, i need you to make the following changes:

Use subheadings format for listing the steps. Use ### for headings and #### or lower for subheadings.  The steps heading should give a brief description of what is happening in each step. Take a look at this tutorial to understand this better.
I also noticed some of your images are in the correct file format but are in capital.
As soon as you make the changes we'll begin the review. Also revisit your article one more time to make the review process faster.

@Dawe-7 Done

@eunice-wanjiku, Kindly revisit the suggestions once more because i can see some of the changes requested have not been implemented. Also, revisiting your article and making changes where necessary will make the review process faster. Consider using the hemimgway editor and grammarly to polish up your article.

@Dawe-7 Kindly check the updated files. I have uploaded the revision as requested

@Dawe-7 Adjusted the article as requested. Kindly verify

Congrats on your first article and welcome to Section EngEd 🎉 @eunice-wanjiku
Please go through the changes I made @eunice-wanjiku @Dawe-7
Thank you for the review @Dawe-7


Cardano Indonesia Meeting #8: 28 February 2022 until 06 March 2022

Cardano Indonesia Meeting: 28 February 2022 until 06 March 2022

Last Meeting - #24
Next Meeting - #28

Attendees
Andreas Sosilo (@andreassosilo)
Andre Cahyadi (@andrecahyadi)
Caliburn (@CryptoCaliburn)
Dani Ihza Farrosi (@danivideda)
Dion Setyotomo (@dionsetyotomo)
Jordy Vincent (@jordyvincent)
Xavier (@syarbel )
Yan Tirta (@YanTirta)
Reviewing Tasks

Polling for new team meeting schedule #11 by @danivideda
Request sub-category "Catalyst" in Cardano Forum #26 by @andreassosilo

Meeting Topics
Eastern Town Hall Indonesia

Video from last meetup: https://www.youtube.com/watch?v=2pRctjRtzPo
Next meetup: "How to become CA in Fund 8" by Eastern Catalyst School
Preparation by @syarbel @danivideda @zicozibu
Invite new people who wants to be CA to our Telegram Group & Discord @danivideda @syarbel

Eastern Catalyst School

Please do ask the latest material for "How to become CA" in Fund 8
Any changes in rewards/compensation? Or requirement to be a CA?
Proposal draft for Fund8 already submitted, into refine phase - @YanTirta as PIC

Cardano Hub Indonesia - Workshops

Will get the 1st batch of fund on Tuesday, 01 March 2022
Fund received 3 Mar 2022 - +/- 1,000 ADA
Pay the previous contributors by @andreassosilo
Next workshop "Introduction to Blockchain & Cardano" - https://www.meetup.com/Cardano-Blockchain-Jakarta/events/284030206/
"Cardano Ecosystem" workshop on w3 March
"SSI/DID/ATALA" workshop on w1 April
"Cardano Ecosystem" workshop on W3 April
Next workshop after "Cardano Ecosystem" Idul Fitri holiday on W3 May (22th)
Flyer needs to be shared in all social media @YanTirta
@andreassosilo needs to create the recap
YouTube intro & end screen will be finished by this week. It will be taken care by @andreassosilo
@dionsetyotomo : please do edit the video + upload to Cardano Indonesia YouTube channel afterwards - YT channel will be registered under @dionsetyotomo
Door prize for next workshop 2x 10 ADA + 2 best questions (receive each 1 NFT + 2 ADA) @andrecahyadi
@andreassosilo will send the NFT + door prize to Cardano Indonesia treasury wallet

DID for Cardano Indonesia Community

Doing research + preparation for first Atala PRISM & DID workshop in April 2022
Meeting with Daniel from Latam DID
1st ATALA PRISM workshop in W1 April

Community Web Portal in Bahasa

[x] Fund received in 3 Mar 2022
[x] On going web development, buying hosting etc on W1 Mar

Collaboration

Collaboration with PINTU -> @jordyvincent @dionsetyotomo with Ilham -- not received the proposal yet - will follow up

1 hour event -> Q&A or AMA about Cardano -> will create pitch deck -> March/April

Need to create policy for Cardano Indonesia Core Team -> neutral -> check Cardano Ambassador Guideline / Ethics / Code of Conduct @andreassosilo

Collaboration with EMURGO FoB -> create special class for community -> Dodi EMURGO -> min. 15 person + special offer (disc 25%) @dionsetyotomo

Catalyst Fund 8 Proposals

@jordyvincent submitted one proposal under "Grow East Asia, Grow Cardano -> Topic: "Leveling Up Cardano Indonesia Instagram"
@YanTirta submitted one proposal under "Grow East Asia, Grow Cardano -> Topic: Delegators Community CNFT Project"
Video Series resubmit? Will be submitted by @dionsetyotomo under category "Scale Community Hub"
Proposal @dionsetyotomo phase 2 for website -> for fund 9
Proposal "Operational Cardano Indonesia" under "Grow East Asia, Grow Cardano" -> Budget: USD 12500 -> needs to be calculate -> for Fund 9 -> need to be prepared first

Please do add/edit if you think we need to discuss or update something @YanTirta @andrecahyadi @zicozibu and all other team members. Thank you.

Done. Closed


InternetExplorer 11: screenshot-mark positioned partly outside of the viewport

What is your Test Scenario?
Sample hello world page (literally only a H1)
What is the Current behavior?
The take a screenshot method t.takeScreenshot(); will generate a warning when running against InternetExplorer 11 (via BrowserStack using testcafe-browser-provider-browserstack)

Unable to locate the page area in the browser window screenshot at <IMAGE_PATH>, because the page area mark with ID <PAGE_MARK_ID> is not found in the screenshot.

When running against another browser (Chrome for example) this warning is not produced.
What is the Expected behavior?
There should be no warning I guess...
What is your web application and your TestCafe test code?
The application code & test code are the bare minimum:
"Application":
<!DOCTYPE html>

  <meta charset="UTF-8">
  <meta name="viewport"
        content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible"
        content="ie=edge">
  <title>TestCafe test</title>

Hello TestCafe!

Test code:
import {t, ClientFunction} from 'testcafe';
import * as uaParser from 'ua-parser-js';

fixture('test').page('http://localhost/index.html');

test('Should display', async t => {
  await t.maximizeWindow();

  const getUA = ClientFunction(() => navigator.userAgent);
  const ua = await getUA();
  const browserName = uaParser(ua).browser.name;

  await t.takeScreenshot({
    path: `${browserName}_test.png`,
    fullPage: true
  });
});

Outputs (notice I added a red outline to the mark to make it visible):
Chrome:

InternetExplorer 11:

As you can see the mark is partly rendered outside the viewport in IE, causing the warning.
Steps to Reproduce:
Run the code above against BrowserStack.
Steps to fix
I was able to fix the issue by placing the mark in the top left corner of the browser.~, I will add a PR for review.~ But this will make the mark not suitable for the cropping process.

Thank you for submitting this issue. We were informed about a similar issue in the past and will look into it in the context of this thread: #4600


tsx and highlightjs

I couldn't figure out how to get tsx code to highlight properly. What am I missing? Highlighjs seems to support tsx out of the box. 🤷🏻♂

It works for me out of the box in VSCode.

I have an example of generated docs here: https://bytesoftio.github.io/use-value/
I didn‘t give enough details it seems - the tsx does not work inside readme.md
Mit freundlichen Grüssen
Maxim Kott
On 1 May 2020, 12:29 +0200, Krisztián Balla<EMAIL_ADDRESS>wrote:

It works for me out of the box in VSCode.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Oh, sorry. I completely misunderstood the problem. 😟

Thanks for the reproduction!
I'm not seeing why this is with a quick look at the code that parses + renders it. The readme is rendered with the {{#markdown}} block, which should call this function: https://github.com/TypeStrong/typedoc/blob/4067f2c838255c4d8cba13bb743172b9f4c2a978/src/lib/output/plugins/MarkedPlugin.ts#L89
I likely won't have time to look at this for at least a month, feel free to take a look and submit a PR if you fix it.

Thanks for the effort! I will take a look. Maybe hljs is outdated. If you have any other hints on where to look at - let me know please.
On 1 May 2020, 23:05 +0200, Gerrit Birkeland<EMAIL_ADDRESS>wrote:

Thanks for the reproduction!
I'm not seeing why this is with a quick look at the code that parses + renders it. The readme is rendered with the {{#markdown}} block, which should call this function: https://github.com/TypeStrong/typedoc/blob/4067f2c838255c4d8cba13bb743172b9f4c2a978/src/lib/output/plugins/MarkedPlugin.ts#L89
I likely won't have time to look at this for at least a month, feel free to take a look and submit a PR if you fix it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

tsx has been added to hljs in 9.14 https://github.com/highlightjs/highlight.js/pull/1663/files#diff-8b1c3fd0d4a6765c16dfd18509182f9d, so thats not the problem.

tsx has been added to hljs in 9.14 https://github.com/highlightjs/highlight.js/pull/1663/files#diff-8b1c3fd0d4a6765c16dfd18509182f9d, so thats not the problem.

They have an open ticket for this: https://github.com/highlightjs/highlight.js/issues/1155
Also here they confirm that tsx is not ready yet (25 days ago at the time of this comment) https://github.com/highlightjs/highlight.js/issues/2484#issuecomment-609966018

I have a quick fix by using prism.js instead of highlight.js, here is a demo: https://maximkott.github.io/typedoc-default-themes/
This is not a 100% serious PR, more like discovering the alternatives, but if you're interested, I'm glad to help.

Coming in late-ish, but I'd recommend https://shiki.matsu.io which we use on the TypeScript website
It uses the same highlighting engine as VS Code and the TS team are the ones maintaining that - so it'll always be up to date and can handle weird cases like generics in JSX etc

@orta looks very promising, will try that.

@orta Ive replaced prismjs with shiki. It is a bit hacky because shiki is async and typedoc is full sync. Maybe you guys have a better idea  on where to put the workraund.
Shiki demo: https://maximkott.github.io/typedoc-default-themes/

I'd definitely like to change to the same highlighter that's pretty standard across TS products.
Unfortunately this change will break basically every consumer of the API, so it needs to come with a minor version bump & I can't merge it yet... I'll pull it into the library mode branch though.
Thanks for the PR!

That‘s what I thought. If you need any further help let me know. In the meantime I‘ve built myself a small wrapper around typedoc with library mode, custom theme and shiki included by default, since I don‘t have to keep it compatible 😅. Hopefully to change back to typedoc as soon as things get merged.
Thank you for the hard work!

Hey @orta, using maximkott's work as a starting point, I'm looking for a way to use shiki to generate HTML with classes instead of inline styles.
Inline styles work if the page is fully static, but break as soon as you want to do anything slightly more complicated like letting users switch between light and dark mode. The new handbook suffers from this.  I spent some time looking through the provided API and it doesn't seem to support this. Am I missing something? You mentioned that Shiki uses the same engine as VSCode, and looking at the generated HTML in VSCode, classes are used...

This is the technique I'll eventually move to in the TS site: https://fatihkalifa.com/typescript-twoslash#dark/lightmode support - lots of discussion here: https://github.com/octref/shiki/issues/33
I believe Shiki does give you the identifier for tokenization like these below, so they could be used as CSS classes instead:


pysam build fails on python3.8

this is a known issue: https://github.com/jbloomlab/alignparse/issues/58
one way to get around it is perhaps a conda installation of pysam?

or possibly remove it entirely? its not clear that its being used...could just be vestigal at this point

I don't know if pysam was ever an actual requirement. It was added in 1e7ea1e along with Biopython, but I don't think it's needed.

beautiful, thank you

reopening this, ref #83.
pysam has been removed from requirements.txt and this seems to be working for now, on python 3.6, 3.7, 3.8.
we still very much depend on pysam however.
anticipating this being an issue again in the future, will keep open.


[$500] Web – Task – Edited task marks unread for a second in the LHN

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.17-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal team
Slack conversation:
Action Performed:

Go to https://staging.new.expensify.com/
Log in with any account.
Navigate to a task report that is assigned to your user (create one if needed)
Click on the Title
Change the title to anything and save

Expected Result:
The title is updated in the task report info and header and edited task not marks unread in the LHN
Actual Result:
The title is updated in the task report info and header, but edited task marks unread for a second in the LHN
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/93399543/31d20829-db1f-4727-b575-4ab2543e65d6
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~016f6f310d1270bdb5
Upwork Job ID:<PHONE_NUMBER>546228736
Last Price Increase: 2023-12-26

Proposal
Please re-state the problem that we are trying to solve in this issue.
Edited task marks unread for a second in the LHN
What is the root cause of that problem?
When the editTask endpoint is called, the backend doesn't return the value of report.lastReadTime but only returns the value report.lastVisibleActionCreated. report.lastVisibleActionCreated will be set a couple ms ahead of report.lastReadTime. Therefore, the isUnread will return true. The LHN row will appear unread. However, the ReadNewestActions endpoint is called immediately. Thus, the report.lastReadTime will be bigger than report.lastVisibleActionCreated making isUnread return false. The AddComment endpoint responds with report.lastReadTime and isn't affected.
Onyx

What changes do you think we should make in order to solve the problem?

The best option is to change the backend to return report.lastReadTime and equate it to the report.lastVisibleActionCreated. Just like the AddComment endpoint.
What alternative solutions did you explore? (Optional)
From the front end, we can create a condition to check whether the task report is unread. The condition will only apply to this situation, an edited task. For example, with the boolean value lastVisibleActionLastModified, we can use the report actions stored in the onyx to check if report.lastVisibleActionCreated will be an accurate value to compare with report.lastReadTime.

Yeah, I agree this better get handled in BackEnd.
@JmillsExpensify Can you add internal label here, please thanks!

Yeah, I agree this better get handled in BackEnd.
@JmillsExpensify Can you add internal label here, please thanks!

bump @JmillsExpensify

Added the internal label, thanks for the DM btw!

Ah yes, I forgot about this. Honestly, I don't think tasks are a priority at the moment, and thus, I'm inclined to close it. Tasks are still largely a beta feature, and they will remain that way probably until next year.

In fact, thinking on this a bit more, I'm just going to close this issue. We can re-open when task become a more strategic priority, or this ends up happening for other cases.


fromAmino discard message type

Problem
The call to fromAmino removes the nested message type indicator in a group proposal, causing an issue when multiple message types contain the same fields.
Context
Telescope configuration
The POA module contains MsgRemovePending and MsgRemoveValidator differing only by message name, i.e., the message fields are the same in both messages.
The remove pending validator test creates a Group Proposal containing a Remove Pending Validator message, submits the proposal, vote on it and execute the proposal.
Encoding and signing the message using AMINO works fine
{
  "chain_id": "manifest-ledger-beta",
  "account_number": "2",
  "sequence": "8",
  "fee": {
    "amount": [
      {
        "denom": "umfx",
        "amount": "100000"
      }
    ],
    "gas": "550000"
  },
  "msgs": [
    {
      "type": "cosmos-sdk/group/MsgSubmitProposal",
      "value": {
        "group_policy_address": "manifest1afk9zr2hn2jsac63h4hm60vl9z3e5u69gndzf7c99cqge3vzwjzsfmy9qj",
        "proposers": [
          "manifest1pss7nxeh3f9md2vuxku8q99femnwdjtcwhpj7f"
        ],
        "messages": [
          {
            "type": "poa/MsgRemovePending",
            "value": {
              "sender": "manifest1afk9zr2hn2jsac63h4hm60vl9z3e5u69gndzf7c99cqge3vzwjzsfmy9qj",
              "validator_address": "manifestvaloper1pss7nxeh3f9md2vuxku8q99femnwdjtcjhuxjm"
            }
          }
        ],
        "title": "remove pending",
        "summary": "some remove pending"
      }
    }
  ],
  "memo": ""
}

The nested message is of the right type. However, the signedTxBodyEncodedObject created in the signAmino method and broadcasted to the server is
{
  "typeUrl": "/cosmos.tx.v1beta1.TxBody",
  "value": {
    "messages": [
      {
        "typeUrl": "/cosmos.group.v1.MsgSubmitProposal",
        "value": {
          "groupPolicyAddress": "manifest1afk9zr2hn2jsac63h4hm60vl9z3e5u69gndzf7c99cqge3vzwjzsfmy9qj",
          "proposers": [
            "manifest1pss7nxeh3f9md2vuxku8q99femnwdjtcwhpj7f"
          ],
          "metadata": "",
          "messages": [
            {
              "sender": "manifest1afk9zr2hn2jsac63h4hm60vl9z3e5u69gndzf7c99cqge3vzwjzsfmy9qj",
              "validatorAddress": "manifestvaloper1pss7nxeh3f9md2vuxku8q99femnwdjtcjhuxjm"
            }
          ],
          "exec": 0,
          "title": "remove pending",
          "summary": "some remove pending"
        }
      }
    ],
    "memo": ""
  }
}

Notice that the nested message field has no type indicator. This field is created by the call to fromAmino
const signedTxBody = {
    messages: signed.msgs.map((msg) => this.aminoTypes.fromAmino(msg)),
    memo: signed.memo,
    timeoutHeight: timeoutHeight,
};

The message decoded by the server is of type poa/RemoveValidator instead of poa/RemovePending causing the signature check to fail. I suspect the lack of type indication in the nested message causes the issue. One is unable to match the type only from the instance.
Everything works fine when using the DIRECT signer. Everything also works fine using the AMINO signer from the manifestd CLI.
Running the test
yarn starship start
yarn starship:test starship/__tests__/poa.group.test.ts

I also tried using the MsgSubmitProposalEncoded as
...
  const submitMsg: MsgSubmitProposalEncoded = {
    groupPolicyAddress: POA_GROUP_ADDRESS,
    title,
    summary,
    proposers,
    exec: Exec.EXEC_UNSPECIFIED,
    messages: messages.map((msg) => Any.toProtoMsg(msg)),
    metadata: "",
  }

  const msg = GroupMessageComposer.fromPartial.submitProposal(submitMsg);
  const result = await client.signAndBroadcast(signer, [msg], fee);
  ...

where messages[0] is, e.g.,
ManifestMessageComposer.encoded.payout({
  authority: POA_GROUP_ADDRESS,
  payoutPairs: [
    {
      address: test2Address,
      coin: { denom, amount: "1000" },
    },
  ],
});

without luck. I'm getting the following error
TypeError: decoder.toAminoMsg is not a function

      196 |     }
      197 |
    > 198 |     return decoder.toAminoMsg!(data);
          |                    ^
      199 |   }
      200 | }
      201 |

      at Function.toAminoMsg (src/codegen/registry.ts:198:20)
      at src/codegen/cosmos/group/v1/tx.ts:2870:74
          at Array.map (<anonymous>)
      at Object.toAmino (src/codegen/cosmos/group/v1/tx.ts:2870:39)
      at AminoTypes.toAmino (node_modules/@cosmjs/stargate/src/aminotypes.ts:40:24)
      at node_modules/@cosmjs/stargate/src/signingstargateclient.ts:404:56
          at Array.map (<anonymous>)
      at SigningStargateClient.signAmino (node_modules/@cosmjs/stargate/src/signingstargateclient.ts:404:27)
      at SigningStargateClient.signAndBroadcast (node_modules/@cosmjs/stargate/src/signingstargateclient.ts:319:19)
      at submitGroupProposal (starship/src/test_helper.ts:105:18)
      at submitVoteExecGroupProposal (starship/src/test_helper.ts:162:22)
      at Object.<anonymous> (starship/__tests__/manifest.group.test.ts:123:5)

The Telescope generated code for the toAminoMsg in registry.ts is suspicious.
  static toAminoMsg<T = unknown, Amino = unknown>(object: T): AnyAmino {
    let data: any;
    let decoder: TelescopeGeneratedCodec<any, any, any>;
    if (Any.is(object)) {
      data = GlobalDecoderRegistry.unwrapAny(object);

      decoder = GlobalDecoderRegistry.getDecoder(object.typeUrl);

      if (!decoder) {
        decoder = Any;
      }
    } else {
      data = object;
      decoder = getDecoderByInstance<T, unknown, Amino>(object);
    }

    return decoder.toAminoMsg!(data);
  }
}

The line
decoder = GlobalDecoderRegistry.getDecoder(object.typeUrl);

should be
decoder = GlobalDecoderRegistry.getDecoder(data.typeUrl);

The issue is a Telescope issue but stems from how CosmJS does things in .signAmino.
// signAmino()
...
const msgs =  messages.map((msg) => this.aminoTypes.toAmino(msg));
...
const signedTxBody = {
        messages: signed.msgs.map((msg) => this.aminoTypes.fromAmino(msg)),
        memo: signed.memo,
        timeoutHeight: timeoutHeight,
    };
...

The toAmino and fromAmino are NOT symmetrical in the case of nested Any, meaning that converting the Any from Proto to Amino and back doesn't result in the original Any.
In MsgSubmitPropoal, the fromAmino function performs the following
message.messages = object.messages?.map(e => GlobalDecoderRegistry.fromAminoMsg(e)) || [];

where messages.messages is an Any[]. The e variable is of type AnyAmino. The call to fromAminoMsg call the generic fromAminoMsg method from the registry where the proper decoder is fetched and decoder.fromAminoMsg is called, effectively calling the proper fromAminoMsg function from the object concrete type.
At this point, the concrete type of the message is lost because fromAminoMsg returns a generic object type which is what gets embedded in the message.messages field.
This is wrong.
Workaround
I modified CosmJS so as not to call fromAmino, i.e.,
const signedTxBody = {
        messages,
        memo: signed.memo,
        timeoutHeight: timeoutHeight,
    };

and things started working properly.

I was debugging some FE code last Friday and discovered that toSDK/fromSDK are also impacted by this. The fromSDK function is not able to properly decode the nested Any because it is represented as its JSON mapping, e.g.,
messages": [
        {
          "@type": "/cosmos.bank.v1beta1.MsgSend",
          "from_address": "manifest1c799jddmlz7segvg6jrw6w2k6svwafganjdznard3tc74n7td7rqdqe6ks",
          "to_address": "manifest1hj5fveer5cjtn4wd6wstzugjfdxzl0xp8ws9ct",
          "amount": [
            {
              "denom": "umfx",
              "amount": "12000000"
            }
          ]
        }
      ],

According to the ProtoJSON Format,

If the Any contains a value that has a special JSON mapping, it will be converted as follows: {"@type": xxx, "value": yyy}. Otherwise, the value will be converted into a JSON object, and the "@type" field will be inserted to indicate the actual data type.

I believe the code generated by Telescope only covers the 1st case.


optimize: add jib-maven-plugin

Signed-off-by: slievrly<EMAIL_ADDRESS>
Ⅰ. Describe what this PR did
optimize: add jib-maven-plugin
Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Codecov Report

Merging #3898 (7fcdf68) into develop (fcc60db) will decrease coverage by 0.07%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop    #3898      +/-   ##
=============================================
- Coverage      40.78%   40.70%   -0.08%
  Complexity      3060     3060
=============================================
  Files            682      682
  Lines          22896    22870      -26
  Branches        2844     2795      -49
=============================================
- Hits            9337     9309      -28
+ Misses         12687    12664      -23
- Partials         872      897      +25

Impacted Files
Coverage Δ

...obuf/convertor/BranchRegisterRequestConvertor.java
90.47% <0.00%> (-9.53%)
:arrow_down:

...otobuf/convertor/BranchReportRequestConvertor.java
90.90% <0.00%> (-9.10%)
:arrow_down:

...obuf/convertor/BranchRollbackRequestConvertor.java
92.00% <0.00%> (-8.00%)
:arrow_down:

...otobuf/convertor/GlobalBeginResponseConvertor.java
92.59% <0.00%> (-7.41%)
:arrow_down:

...otobuf/convertor/GlobalCommitRequestConvertor.java
93.75% <0.00%> (-6.25%)
:arrow_down:

...otobuf/convertor/GlobalStatusRequestConvertor.java
93.75% <0.00%> (-6.25%)
:arrow_down:

...obuf/convertor/GlobalRollbackRequestConvertor.java
93.75% <0.00%> (-6.25%)
:arrow_down:

...protobuf/convertor/RegisterTMRequestConvertor.java
94.73% <0.00%> (-5.27%)
:arrow_down:

...protobuf/convertor/RegisterRMRequestConvertor.java
90.47% <0.00%> (-4.77%)
:arrow_down:

...tobuf/convertor/BranchReportResponseConvertor.java
95.45% <0.00%> (-4.55%)
:arrow_down:

... and 26 more


Support interfaces for TelemetryConfiguration & TelemetryClient - primarily for testing & mocking needs

Problem:
I was attempting to write a unit test today where I have code that is needing to resolve & reference the two types (TelemetryConfiguration and TelemetryClient) and found I was unable to mock them due to them being [sealed] classes and that there is no associated Interface for each.
Proposed Solution:
Provide interfaces for these 2 types so that we can leverage mocking approaches in testing. Alternately, can they not be made [sealed] so that mocking tools (i.e. Moq is what I'm using) can
Alternatives Considered:
None - we need to be able to mock which includes the having the ability to verify calls were made or not.
Context:
In my particular case, I have code that is focused around the proper flushing & disposal of AppInsights resources; This stems from other well-known challenges with AppInsights and those areas of behavior.  We wouldn't need the component in question and its test coverage if not for those behaviors needing to be applied.  Addressing those root-cause issues (challenges) somewhat mitigates my needs here.
In my case we have a 2-stage lifecycle to account for (bootstrapping and the building/configuring the main host itself) as we use an initial bootstrap logger (Serilog) and configure it to write to the AppInsights sink. This bootstrapping process then includes an initial service provider instance for registering & resolving the AppInsights dependency for the bootstrap logger's AppInsight sink which requires either TelemetryConfiguration or TelemetryClient to be provided. It otherwise would use TelemetryConfiguration.Active which is being deprecated -or- it accepts an InstrumentationTkey (being deprecated) and does not support ConnectionStrings yet.
In our 'OnApplicationStopped' handler that I'm trying to write tests for, we ensure that we've flushed the TelemetryClient using the newer FlushAsync method and then we ensure that the TelemetryConfiguration is disposed of (for both sets of the objects.
The original author of this handler code was under the impression that all we needed to do was dispose of the TelemetryConfiguration but recent research was leading me to the impression that disposing of the configuration does not actually perform a flush (which has been requested by the community in another issue). My recent changes ensure both of these happen since we're not certain of what is really the "right way to handle flushing & disposing things" and want to ensure we're getting our full logging & telemetry contents sent to the server.

Instead of mocking TelemetryClient/TelemetryConfiguration, for unit tests, write yourself a custom telemetry channel, implementing ITelemetryChannel.
For example:
using System;
using Microsoft.ApplicationInsights.Channel;

namespace YourCompnay.YourName.Tests
{
    internal class MockTelemetryChannel : ITelemetryChannel
    {
        private readonly Action<ITelemetry> _sendAction;
        public readonly Action _flushAction;
        private readonly object _syncObject = new object();

        public MockTelemetryChannel(Action<ITelemetry> sendAction, Action flushAction = null)
        {
            _sendAction = sendAction ?? throw new ArgumentNullException(nameof(sendAction));
            _flushAction = flushAction;
        }

        public bool? DeveloperMode { get; set; }

        public string EndpointAddress { get; set; }

        public void Dispose()
        {
        }

        public void Flush()
        {
            if (_flushAction != null)
            {
                lock (_syncObject)
                {
                    _flushAction();
                }
            }
        }

        public void Send(ITelemetry item)
        {
            lock (_syncObject)
            {
                _sendAction(item);
            }
        }
    }
}

and set it as the channel on the TelemetryConfiguration's TelemetryChannel instance.
e.g.
var telemetryItems = new List<ITelemetryItem>();
bool flushCalled = false;
var telemetryConfiguration = new TelemetryConfiguration
{
    TelemetryChannel = new MockTelemetryChannel(telemetryItems.Add, () => flushCalled = true);
};

var telemetryClient = new TelemetryClient(telemetryConfiguration);

Now, you can record all items and calls to Flush during your unit test and Assert the expected values.
Does that help?

I appreciate the thought, but the code I need to test works against the TelemetryConfiguration & TelemetryClient and has no awareness or use of the TelemetryChannel.  Its focus is on those 2 specific objects - and it needs to resolve them from the container where I'm managing them.
i.e.
    // Arrange
    var(bootstrapServiceProviderMock, bootstrapTelemetryConfigurationMock, bootstrapTelemetryClientMock) = CreateMocksForAppInsights();
    var bootstrapContextMock = new Mock<IBootstrapContext>();
    bootstrapContextMock.Setup(x => x.ServiceProvider).Returns(bootstrapServiceProviderMock.Object);

    var(hostServiceProviderMock, hostTelemetryConfigurationMock, hostTelemetryClientMock) = CreateMocksForAppInsights();

    // Act
    var exception = Record.ExceptionAsync(
        async () => await new OnApplicationStoppedHandlersForAzure().ExecuteHandlerForAppInsights(
            bootstrapContextMock.Object,
            hostServiceProviderMock.Object,
            CancellationToken.None
        ).ConfigureAwait(false)
    );

    // Assert
    bootstrapTelemetryClientMock.Verify(client => client.FlushAsync(It.IsAny<CancellationToken>()), Times.Once());
        bootstrapTelemetryConfigurationMock.Verify(config => config.Dispose(), Times.Once());

        hostTelemetryClientMock.Verify(client => client.FlushAsync(It.IsAny<CancellationToken>()), Times.Once());
        hostTelemetryConfigurationMock.Verify(config => config.Dispose(), Times.Once());

`

Also to clarify, I'm very specifically targeting use of the newer FlushAsync() method as from what I've read the old call to flush was not a blocking call and people were having to bake in arbitrary Sleep(..) calls which still didn't guarantee everything was flushed correctly. So TelemetryClient and the FlushAsync() are must haves for me.
That and in general I'm aiming for async end-to-end so I'm looking for the flush behavior to leverage a natively async method.

I'm not familiar with your code base, but presumably the necessary change will be in the CreateMocksForAppInsights method.
Note that TelemetryConfiguration.TelemetryChannel is writable. So, if you don't have direct control over the TelemetryConfiguration constructor, you can overwrite the TelemetryChannel after the fact.
To handle FlushAsync, your mock channel needs to implement [IAsyncFlushable](https://docs.microsoft.com/dotnet/api/microsoft.applicationinsights.channel.iasyncflushable?view=azure-dotnet)

Yes, that's the case - I'm accessing them from the service provider and with the 2-stage approach I have my original 'bootstrap context' which carries around the 1 instance of the services and then the host provides the 'real' set of services.
So the 'on stopped' handler is basically doing the resolves & then the flush/dispose on them - not the channel. The original author implemented the dispose handling on the TelemetryConfiguration and in my recent research I stumbled across the topics re: flushing via the TelemetryClient and Flush vs FlushAsync so I've tweaked the handler to now account for both. Is this just fundamentally wrong or any of it unnecessary?
The whole handling of flushing & disposing definitely seems to be a pain point with AI and compounded by anyone using a 2-stage initialization approach. Account for your logger/sinks and their flushing in a 2-stage approach to add more to the fun.
        // Handle the 'bootstrap context' version of dependencies (if registered)
        var bootstrapTelemetryClient = bootstrapContext.ServiceProvider.GetService<TelemetryClient>();
        if (bootstrapTelemetryClient != null)
        {
            await bootstrapTelemetryClient.FlushAsync(cancellationToken).ConfigureAwait(false);
        }

        var bootstrapTelemetryConfiguration = bootstrapContext.ServiceProvider.GetService<TelemetryConfiguration>();
        bootstrapTelemetryConfiguration?.Dispose();

        // Handle the 'host' version of dependencies (if registered)
        var hostTelemetryClient = services.GetService<TelemetryClient>();
        if (hostTelemetryClient != null)
        {
            await hostTelemetryClient.FlushAsync(cancellationToken).ConfigureAwait(false);
        }

        var hostTelemetryConfiguration = services.GetService<TelemetryConfiguration>();
        hostTelemetryConfiguration?.Dispose();


Add test set for population data

In the tests for getCommuterData.py and getVaccinationData.py the population data is downloaded but the functionalities should be tested with test sets.

I already experienced this problem when working on Issue #281 with the out_folder default value.
Since we are using a fake file system for testing, it is a bit complicated to input data with the current structure.
I addressed a similar problem in Issue #293.
To facilitate this procedure, i started to restructure the function input, so the data path is always defined in the
main functions.
Therefore, it should be way easier to fix this issue when i'm done with the changes.


Wear app should read the active conference using data layer

The wear app should defer selection of the conference to the mobile app via the data layer.
Possibly allowing to change when not in range, but generally just defaulting to whatever the mobile has stored.

https://github.com/joreilly/Confetti/pull/370


angular dendrogram branch overlap

Original report by GavinH (Bitbucket: 557058:e40c23e1-e273-4527-a2f8-5de5876e870d, ).

The attached script, data produced the image.
The issue is the parent node needs to be shifted such that its children do not overlap.
I would think placing itself between child[0].min_y and child[1].max_y should solve this.

This is a fundamental problem with the Angular dendrogram geometry, documented in Felsenstein's 2004 book.


blog post for KEP-3857: Recursive Read-only (RRO) mounts

For:

https://github.com/kubernetes/enhancements/issues/3857

Related:

https://github.com/kubernetes/website/pull/45159

howdy @AkihiroSuda , I am your assigned 1.30 Release comms shadow and was hoping to help you along with deadlines for this blog. It looks like it is currently a work in progress.
The Ready for Review deadline is March 22, 2024. As we have few blog reviewers, we want to make sure you have ample time to get your content together. Please let me know how we can help!

Moved out of draft.
cc @thockin @mrunalp @haircommander PTAL

/sig storage
/hold
pending assignment of publication date

/sig node

@AkihiroSuda can you make the changes requested by @mrunalp ?

@AkihiroSuda can you make the changes requested by @mrunalp ?

Done

/sig storage
/hold pending assignment of publication date

@AkihiroSuda please use date 2024-04-23

/sig storage
/hold pending assignment of publication date

@AkihiroSuda please use date 2024-04-23

done

/sig storage
/hold pending assignment of publication date

@AkihiroSuda please use date 2024-04-23

done

Thank you @AkihiroSuda

@matthyx  all recommended changes have been implemented.:
Please let us know once you have a chance to review and approve. :)

/lgtm

Given https://github.com/kubernetes/website/pull/45238#discussion_r1538958570
/lgtm cancel
(tech LGTM noted)

@sftim  please can you review and approve when you get a chance.

/lgtm
/approve
/hold
:stop_sign: Do not merge until Kubernetes v1.30 is released


Update to 1.52.0 and compile with OpenSSL 3

Update to 1.52.0 and compile with OpenSSL 3.
Upstream diff: https://github.com/nghttp2/nghttp2/compare/v1.46.0..v1.52.0
Conda-forge diff: https://github.com/conda-forge/nghttp2-feedstock/compare/b388aefdee750fd3765076c291873d9bd106c021..85d30eac0acddee4f62c6b5e11945e4a7525275a

Linter check found the following problems:
The following problems have been found:
INFO: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:0: output_missing_script: output "libnghttp2": Output is missing script.
ERROR: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:26: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:27: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:52: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:53: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:82: host_section_needs_exact_pinnings: output "libnghttp2-static": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_8dkojnwd8h/clone/recipe/meta.yaml:89: missing_tests: output "libnghttp2-static": No tests were found.
Errors were found

Linter check found the following problems:
The following problems have been found:
INFO: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:0: output_missing_script: output "libnghttp2": Output is missing script.
ERROR: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:26: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:27: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:52: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:53: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:82: host_section_needs_exact_pinnings: output "libnghttp2-static": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_e2oex19n3z/clone/recipe/meta.yaml:89: missing_tests: output "libnghttp2-static": No tests were found.
Errors were found

Linter check found the following problems:
The following problems have been found:
INFO: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:0: output_missing_script: output "libnghttp2": Output is missing script.
ERROR: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:26: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:27: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:52: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:53: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:82: host_section_needs_exact_pinnings: output "libnghttp2-static": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_cctt8yvbkk/clone/recipe/meta.yaml:89: missing_tests: output "libnghttp2-static": No tests were found.
Errors were found

Linter check found the following problems:
The following problems have been found:
INFO: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:0: output_missing_script: output "libnghttp2": Output is missing script.
ERROR: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:26: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:27: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:52: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:53: host_section_needs_exact_pinnings: output "libnghttp2": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:82: host_section_needs_exact_pinnings: output "libnghttp2-static": Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_c1hw294x68/clone/recipe/meta.yaml:89: missing_tests: output "libnghttp2-static": No tests were found.
Errors were found


libdeltachat: 1.151.4 -> 1.151.6

Diff: https://github.com/deltachat/deltachat-core-rust/compare/v1.151.4...v1.151.6
Changelog: https://github.com/deltachat/deltachat-core-rust/blob/v1.151.6/CHANGELOG.md

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/)
25.05 Release Notes (or backporting 24.11 and 25.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

[x] Fits CONTRIBUTING.md.

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

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 364301

x86_64-linux

:white_check_mark: 19 packages built:

deltachat-cursed
deltachat-cursed.dist
deltachat-repl
deltachat-rpc-server
deltatouch
kdeltachat
libdeltachat
python311Packages.deltachat
python311Packages.deltachat-rpc-client
python311Packages.deltachat-rpc-client.dist
python311Packages.deltachat.dist
python311Packages.deltachat2
python311Packages.deltachat2.dist
python312Packages.deltachat
python312Packages.deltachat-rpc-client
python312Packages.deltachat-rpc-client.dist
python312Packages.deltachat.dist
python312Packages.deltachat2
python312Packages.deltachat2.dist


Update quickstart

I got an error while trying to setup fabric the environment, just to update the clone URL that for me seems to be broken, for me using windows the correct command was "git clone https://github.com/danielmiessler/fabric.git"

Yes that's the right command.


Support for large scale basic blocks

use trampoline methods to allow deep recursions for bytecode.cfg_compute_stack_size
add a testcase test_huge_code_with_numerous_blocks which cannot get handled previously
add notes to ChangeLog.rst

Shall fix https://github.com/vstinner/bytecode/issues/57

Codecov Report

Merging #58 into master will increase coverage by 0.02%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #58      +/-   ##
==========================================
+ Coverage   98.16%   98.19%   +0.02%
==========================================
  Files           7        7
  Lines        1420     1437      +17
==========================================
+ Hits         1394     1411      +17
  Misses         26       26

Impacted Files
Coverage Δ

bytecode/cfg.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Thanks. I have had less time than I hoped to look at this. I will do my best to merge this week-end.

@MatthieuDartiailh Hi Matthieu, are you available for this PR?

As I mentioned in my previous message I will do my best to have a look this week end. Do you need a quick release once this is merged ?

Sorry I just missed your previous message.
No need for a quick release, things are not urgent, please take your time.

I took the liberty to reformat a bit the code and added more comments since this piece of code starts to be quite convoluted and I am unlikely to remember how it works otherwise. Hopefully I did not mess anything and I will merge soon.


NativePageTransitions problem

In IonicNative there is a NativePageTransition plugin, but use case is completely empty. I only found a way to use it with Ionic 1, but absolutly 0 information about Ionic 2 usage. C'mon guys, you could do better. Can anybody paste a simple code about usage of this thing? Thank you in advance.

Close move to ionic-native see note ISSUE_TEMPLATE

Note: for Ionic-Native related issues you can open up an issues on the Ionic-Native repo https://github.com/driftyco/ionic-native

Thanks

This issue was moved to driftyco/ionic-native#669

Hello, thanks for opening an issue with us! Since this is an Ionic Native issue I have moved this issue to the Ionic Native repo.


Require confirmation for adding a calendar event that is in the past

Implement Confirmation Dialog for calendar event if the added event date/time is in the past
Make the dialog client side? (can be an option since it is not security related)

not worth the effort, most people won't use a date in the past


feat: Add sequence diagram

Fixes #623

Add option to configure sequence diagram as the default AppMap view

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

v0.68.0
GitHub release

Your semantic-release bot :package::rocket:


Non-marine hydroelectric energy transformation

Description of the issue
We currently have hydroelectric energy transformation [^1] and marine-specific subclasses. However, we currently do not have a subclass for the "conventional" hydroelectric energy transformation, i.e. hydroelectric energy transformation on a river or using reservoirs.
[^1]: Hydroelectric energy transformation is a hydro energy transformation that converts hydro energy to electrical energy.
Ideas of solution
If you already have ideas for the solution describe them here
Workflow checklist

[ ] I discussed the issue with someone else than me before working on a solution
[ ] I already read the latest version of the workflow for this repository
[ ] The goal of this ontology is clear to me

I am aware that

[ ] every entry in the ontology should have a definition
[ ] classes should arise from concepts rather than from words

EnArgus distinguishes between:

run-of-the-river power station (German: Laufwasserkraftwerk)
run-of-river power plant, run-of-river hydropower plant (German: Flusskraftwerk)
diversion power plant: (German: Ausleitungskraftwerk

We have run of river power plant[^1] http://openenergy-platform.org/ontology/oeo/OEO_00010087 though.
[^1]: A run of river power plant is a hydro power plant that uses the momentarily available hydro energy of a river. It has either no reservoir or just has a small one with a maximum of 24 hours of storage.

Yes, that is right. We have the subclasses for the power plants:

But neither for the power units nor the transformation processes:

My feeling is, that the recently redefinition of technology will help here sorting out the hydro-classes. However, it needs a bit time, thus I move the milestone.

I wonder whether we need the different processes at all? Isn't the process always the same: movement of water is converted to electrical energy. So why not shift the difference between these to the technologies?


When I used code split, I found that the chunk file was loaded earlier than the corresponding CSS file

Is this a bug report?
No

Did you try recovering your dependencies?

No.
Which terms did you search for in User Guide?

Code split.
Environment

Environment:
OS:  Windows 7
Node:  8.9.3
Yarn:  1.9.4
npm:  5.1.0
Watchman:  Not Found
Xcode:  N/A
Android Studio:  Not Found
Packages: (wanted => installed)
react: ^16.4.2 => 16.4.2
react-dom: ^16.4.2 => 16.4.2
Steps to Reproduce

1.I used code split in tutorials.
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import { Router, Route, browserHistory, IndexRoute  } from 'react-router'
import createStore from './store/createStore'
import registerServiceWorker from './registerServiceWorker';
import sagas from './sagas'
import './styles/main.less'
import RouterWrapper from './components/Layouts/RouterWrapper'
import asyncComponent from './components/AsyncComponent'
import { isTokenExpire } from './utils/authority'
import { push } from 'react-router-redux'
import * as userTypes from './actions/user'

const { store, history } = createStore(window.__INITIAL_STATE__ || {}, browserHistory);
store.runSaga(sagas);

const Page404 = asyncComponent(() => import('./pages/Page404'))
const Login = asyncComponent(() => import('./pages/User/Login'))

function onEnterRoute(route, replace) {
  if (location.pathname !== '/login' && isTokenExpire()) {
    store.dispatch({ type: userTypes.USER_LOGOUT })
  }
}

ReactDOM.render((
  <Provider store={store}>
      <Router history={history}>
        <Route path="/" onEnter={onEnterRoute}>
          <IndexRoute component={Login} />
          <Route path="login" component={Login} />
          <Route path="*" component={Page404} />
        </Route>
      </Router>
  </Provider>
), document.getElementById('root'));
registerServiceWorker();

Then i executed npm run build
When the login page is loaded, the corresponding JS is loaded earlier than CSS, causing page jitter.

Expected Behavior

I want that the chunk file was loaded later than the corresponding CSS file.
Actual Behavior
The chunk file was loaded earlier than the corresponding CSS file.Cause page shake when loading.

What's your CSS config?

@sokra
webpack.config.prod.js
        {
            test: /\.css$/,
            loader: ExtractTextPlugin.extract(
              Object.assign(
                {
                  fallback: {
                    loader: require.resolve('style-loader'),
                    options: {
                      hmr: false,
                    },
                  },
                  use: [
                    {
                      loader: require.resolve('css-loader'),
                      options: {
                        importLoaders: 1,
                        minimize: true,
                        sourceMap: shouldUseSourceMap,
                      },
                    },
                    {
                      loader: require.resolve('postcss-loader'),
                      options: {
                        // Necessary for external CSS imports to work
                        // https://github.com/facebookincubator/create-react-app/issues/2677
                        ident: 'postcss',
                        plugins: () => [
                          require('postcss-flexbugs-fixes'),
                          autoprefixer({
                            browsers: [
                              '>1%',
                              'last 4 versions',
                              'Firefox ESR',
                              'not ie < 9', // React doesn't support IE8 anyway
                            ],
                            flexbox: 'no-2009',
                          }),
                        ],
                      },
                    }
                  ],
                },
                extractTextPluginOptions
              )
            ),
            // Note: this won't work without `new ExtractTextPlugin()` in `plugins`.
          }

I think it's not Webpack bug because I don't have such issues with latest Webpack

@xuchenchenBoy Please provide the webpack version you are currently using (disclaimer webpack >= v4.0.0 doesn't work (correctly) with the ExtractTextPlugin, use the mini-css-extract-plugin instead). Otherwise with the current information provided we can't help you, please provide your CommonChunksPlugin (webpack =< v3.0.0) or SplitChunkPlugin (optimization.splitChunks) for webpack >= v4.0.0 and feel free to reopen

I think it's not Webpack bug because I don't have such issues with latest Webpack

Thanks.

@xuchenchenBoy Please provide the webpack version you are currently using (disclaimer webpack >= v4.0.0 doesn't work (correctly) with the ExtractTextPlugin, use the mini-css-extract-plugin instead). Otherwise with the current information provided we can't help you, please provide your CommonChunksPlugin (webpack =< v3.0.0) or SplitChunkPlugin (optimization.splitChunks) for webpack >= v4.0.0 and feel free to reopen

Thanks.


Could you please provide the code of two baseline attacks?

Dear author，
I am so sorry to disturb you. As you can see, I am a novice at adversarial examples. I did not find the code of FGSM and BIM attacks in your code. If you can upload the code of two baseline attacks： FGSM and BIM，it will help me a lot. Look forward to your reply.
Thank you!

Yes, but it might take a few days. I'll do it as soon as I find the time!

Thank you very much for your reply. Looking forward to your very helpful code！

Can you provide the code of training speaker identification model? Maybe I can try to generate adversarial examples by myself.

Hello, it's been a week. When will you be able to upload the code? Is this okay this week? Thank you.

Hello, thanks for your code! Would you like to tell me what the loss function you use for training the Audionet, it will be great helpful for me~

Hello, it's been a week. When will you be able to upload the code? Is this okay this week? Thank you.

Hi.
I've not had the time to properly clean up the code yet, but you can find the necessary functions in utils/nn_fgsm.py, which I've just uploaded.
You will need to install this toolbox:
https://adversarial-robustness-toolbox.readthedocs.io/en/latest/
To call the functions simply add an option in the main.py file. When I have the time I will update the main function in this repository to have this option.
In the meantime let me know if you have any issues with the code.

Hello, thanks for your code! Would you like to tell me what the loss function you use for training the Audionet, it will be great helpful for me~

Hi!
Can I ask you what you mean by the Audionet?

Thanks for your reply. I will try to use it.


Double precision type numbers are read as floats

Describe the bug
Double precision type numbers are read as floats.
According to SQLite documentation, REAL values are stored as an 8-byte IEEE floating point number.
To Reproduce
Steps to reproduce the behavior:

Create a table containing REAL column
Save a value which can be represented as a double precision value but not a float precision (e.g.<PHONE_NUMBER>.0 )
Value is saved successfully as 8-byte IEEE floating point number
Select the row containing the value. Seems to return a float representation. In our example the returned value is<PHONE_NUMBER>.

Expected behavior
Expected to return the double point precision value
Desktop (please complete the following information):

OS: Tested on Android

Additional context
Found one potential place in the code where the error may occur (in android).
SQLite/Database.java row 456:
row.put(colName, c.getFloat(c.getColumnIndex(colName)));
change to
row.put(colName, c.getDouble(c.getColumnIndex(colName)));

@filpet95 Thanks for using the plugin, it seems that you are right, so i will fix it in the next release

@filpet95 this is fixed in 3.0.0-rc.2 so I close the issue


Add Link

Codecov Report

Merging #525 (968e737) into master (a2bf1a8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #525   +/-   ##
=======================================
  Coverage   88.41%   88.41%
=======================================
  Files          36       36
  Lines        3538     3538
=======================================
  Hits         3128     3128
  Misses        410      410

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 a2bf1a8...968e737. Read the comment docs.

Thanks!


Outstation Database Configuration

Just leaving this here as an issue as this new fork (of pydnp3) does not solve the inherent issue of Pybind11
https://github.com/ChargePoint/pydnp3/issues/11

@Xelus22, thanks for the feedback, we are planning to implement the outstation database configuration capability API. (Please see  https://github.com/VOLTTRON/dnp3-python/issues/19).
In addition, Could you provide insights on what specific parameters your would like to configure?
THank you.

Hello, yep that issue you just made seems exactly it. Just need to  allow the configuration of the database types since currently pybind11 just takes the default and doesn't allow you to change it

Hello, yep that issue you just made seems exactly it. Just need to allow the configuration of the database types since currently pybind11 just takes the default and doesn't allow you to change it

@Xelus22 , Thanks for following up the issue. Please follow PR https://github.com/VOLTTRON/dnp3-python/pull/38. And check the example examples/stack_config_examples.py

addressed with https://github.com/VOLTTRON/dnp3-python/pull/39

I solved the problem modifying src/asiodnp3/DatabaseConfig.h adding a method with a lamba function ("setBinaryConfig") . The pybind11 library has some limitations when it comes to binding templated classes or structs like EventConfig.
Below the changes :
.def_property_readonly(
"binary",
[](const asiodnp3::DatabaseConfig &self) { return &self.binary;},
py::return_value_policy::reference
)
.def("setBinaryConfig",
[](asiodnp3::DatabaseConfig &self, uint16_t index, opendnp3::EventBinaryVariation _evariation,opendnp3::PointClass _clazz ,opendnp3::StaticBinaryVariation _svariation) {
self.binary[index].evariation=_evariation;
self.binary[index].clazz=_clazz;
self.binary[index].svariation=_svariation;
},
py::arg("index"), py::arg("_evariation"), py::arg("_clazz") ,py::arg("_svariation"))


Demo with live-stream does not work.

I cant make the QuaggaJS example "Demo with live-stream"  work in chrome or IE. The browsers do support getUserMedia API call.

Hello
Same for me too, live demo not working in chorme tried with workers 4 and 1 for EAN

What exactly does not work for you? Do you see errors in the console? Did you try on your mobile device, or desktop computer? Which operating system?
I just tried it in Chrome, and it works perfectly fine. IE is not yet supported, because I do not have Windows 10 installed.

for me it detects the barcode but does not show the number,
OSX sierra,
Google Chrome


🐛 [Jellyfin NAS] Addon fails to start

Which addon?

Addon name : Jellyfin NAS
Addon version : 10.8.9-1-ls198 and also 10.8.9-1-ls199

Describe the bug
When trying to start the freshly downloaded Jellyfin Addon, it fails to start. No extra configs were made.
Also tried to start with PGID + PUID on "1000" without any success.

To Reproduce

Go to Addons
Click on Jellyfin and Start
Check Logs

Full addon log
/package/admin/s6-overlay/libexec/preinit: info: read-only root
/package/admin/s6-overlay/libexec/preinit: info: writable /run. Checking for executability.
/package/admin/s6-overlay/libexec/preinit: warning: unable to find /run in /proc/mounts, check that your container manager pre-mounts /proc, and that /run is a tmpfs. The container is likely to crash soon, if /run is (incorrectly) mounted noexec.
Segmentation fault (core dumped)

Full addon config
PGID: 0
PUID: 0
data_location: /config/addons_config/jellyfin

System

Supervisor version: 2023.2.3
Host system version: HA OS 9.5 in a VM

Strange, i have the same start if log except for segmentation fault
/package/admin/s6-overlay/libexec/preinit: info: read-only root
/package/admin/s6-overlay/libexec/preinit: info: writable /run. Checking for executability.
/package/admin/s6-overlay/libexec/preinit: warning: unable to find /run in /proc/mounts, check that your container manager pre-mounts /proc, and that /run is a tmpfs. The container is likely to crash soon, if /run is (incorrectly) mounted noexec.
[migrations] started
[migrations] no migrations found
cont-init: info: running /etc/cont-init.d/00-banner.sh
-----------------------------------------------------------

That means everything is okay except the "Segmentation fault (core dumped)"-Error?
Do you know any ways to check some deeper logs?

I'll do some deeper investigation a bit later ; on which arch are you ? amd64 I suppose ?

Yes exactly.
Thanks a lot!

Update:
I uninstalled and installed the Addon around 6 times, now it works!!!
Very strange but im fine with that for the moment.


How to change auth route?

What is the best way to change the path to the auth functions one the CLIENT?  My routes are hosted on NodeJS and ALL paths are behind the /api prefix.  For example:
/api/profile/me
/api/auth/login
/api/auth/facebook

Currently /api and /auth are parallel.  I do not want this.  I would like to simply do this...
$authProvider.facebook.url = '/api/auth/facebook';

Is this possible?

So what's the issue with setting your Facebok auth url to '/api/auth/facebook'?

If you simply want to change that URL, the entire object can be overridden:
$authProvider.facebook({
  url: '/auth/facebook',
  authorizationEndpoint: 'https://www.facebook.com/v2.3/dialog/oauth',
  redirectUri: (window.location.origin || window.location.protocol + '//' + window.location.host) + '/',
  requiredUrlParams: ['display', 'scope'],
  scope: ['email'],
  scopeDelimiter: ',',
  display: 'popup',
  type: '2.0',
  popupOptions: { width: 580, height: 400 }
});

@sahat : So basically just copy & paste the sections from the satellizer.js file and override the variables I need to change?  Is this correct?


update organization and product descriptions of Huawei

Pre-submission checklist:
Please check each of these after submitting your pull request:

[ ] Are you only including a repo_url if your project is 100% open source? If so, you need to pick the single best GitHub repository for your project, not a GitHub organization.
[ ] Is your project closed source or, if it is open source, does your project have at least 250 GitHub stars?
[ ] Have you picked the single best (existing) category for your project?
[ ] Does it follow the other guidelines from the new entries section?
[ ] Have you included a URL for your SVG or added it to hosted_logos and referenced it there?
[ ] Does your logo clearly state the name of the project/product and follow the other logo guidelines?
[ ] Does your project/product name match the text on the logo?
[ ] Have you verified that the Crunchbase data for your organization is correct (including headquarters and LinkedIn)?
[ ] ~5 minutes after opening the pull request, the CNCF-Bot will post the URL for your staging server. Have you confirmed that it looks good to you and then added a comment to the PR saying "LGTM"?

Deploy preview for landscape failed.
Built with commit c64a16e40a4c17a58222defcb3453be4f5c4208d
https://app.netlify.com/sites/landscape/deploys/5d673307e3b42d0008f2ddf5

This failed because https://twitter.com/HuaweiCloud has no tweets.

Oh, that was a wrong twitter handle, fixed now.

LGTM


[SPARK-35690][SS] Stream-stream join keys should be reordered properly

What changes were proposed in this pull request?

For query with multiple stream-stream joins, unnecessary shuffle can be happened as we don't reorder join keys for stream-stream join. We already reorder join keys for shuffled hash join and sort merge join, so we can also have it for stream-stream join - https://github.com/apache/spark/blob/master/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala#L232 .
Why are the changes needed?

Avoid unnecessary shuffle for query.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Added test in StreamingJoinSuite.scala.

cc @cloud-fan if you have time to take a look, thanks.

Test build #139542 has started for PR 32834 at commit 60efa47.

Test build #139542 has finished for PR 32834 at commit 60efa47.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

cc @viirya

cc @HeartSaVioR

looks reasonable

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/139542/

Please be aware of "existing state" when dealing with stateful operation. Existing state will be stored as not-reordered one, hence once we change the key to be reordered one, it will end up with different partitioning, and also unable to find from state store. These are correctness issues.
Even we put aside the existing state a bit, we never ever be able to change the logic on reordering. The different output of reorder breaks compatibility again.

@HeartSaVioR - yeah, thanks for pointing it out. It seems that state store compatibility is the deal breaker here.

The different output of reorder breaks compatibility again.

Are you referring to the output for join, or something else? Output for join should not be affected.

The different output of reorder breaks compatibility again.
Are you referring to the output for join, or something else? Output for join should not be affected.

I meant the final key.

I meant the final key.

Sorry I still don't get it. Are you referring the key in state store?

My point is all about state store compatibility. If there's any chance for the output of reorder to be changed due to various ways like different Spark versions, table metadata (if that can affect the reordering), etc, state store compatibility will be broken.

@HeartSaVioR - got it. State store compatibility is valid concern, thanks for explanation.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44067/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44067/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/44067/


Hello, as a newcomer, I do not understand some of the sentences in the paper, could you please answer it for me?

1."For each sampled pixel we sample a set of points xi along the ray and extract the geometric and color features (P g(xi) and P c(xi) resp.)"
Are the geometric and color features here initially randomized?
2."at xi, using feature interpolation within the spherical search radius r"
Why do we need feature interpolation? My understanding is that the original sampling is sparse point cloud, which is not enough to restore the scene, so feature interpolation is used to construct dense point cloud to restore the scene. Is my understanding correct?

“If no neighbors are found, we add three neural points along the ray, centered at the depth reading D and then offset by (1−ρ)D and (1+ρ)D with ρ ∈ (0, 1) being a hyperparameter accounting for the expected depth noise”
I'm sorry this may disturb you, what is the effect of adding three points to the ray if no point in the neighborhood can be found? I don't quite understand the expected depth noise mentioned here. And, with or without neighbors, isn't there already a sampling point at D? Why do we add sampling points at D? Look forward to your answer, thank you!

Correct. They are initially randomly sampled from a normal distribution.
I think your understanding is correct. Let me clarify. The point cloud we use is neither dense nor sparse, but dynamically adapting based on the need to store information. Where there is lots of texture details, we have a higher point density. We sample the points xi anywhere in space and even if we have a dense point cloud, we need to interpolate to get the feature value at exactly xi.
If no neighbors are found, we realize that we need to add points there to reconstruct that part of the scene - this is "the effect". The idea behind the depth dependency here is that pixels with a larger absolute depth are more likely to be noisy so we can not trust the depth reading to the same degree. Therefore we spread out the points more such that we have larger band in which the surface can be optimized (i.e. it correlates with the expected std of the sensor). Hope this helps. You ask "isn't there already a sampling point at D?" I am not exactly sure what you mean by this. To clarify: just because we sample at D does not mean that there is already a point in the neural point cloud there. Therefore, we need to check this - if there are already points there, we don't need to add new ones, and otherwise we add new points.

Let me know if things are still unclear.

Thank you for your answer! I have another question: “we sample X pixels uniformly across the image plane and Y pixels among the top 5Y pixels with the highest color gradient magnitude.”. Is the pixel here a neural point? However, below Figure 2 "For each sampled pixel we sample a set of points xi along the ray", it is explained that a set of nerve points is sampled for each pixel in the direction of light. These two explanations mystify me.

The pixel here is not a neural point, but a pixel in the image.
There are two stages of sampling points in 3D: 1. Sampling pixels in the image plane through which rays are shot i.e. "we sample X pixels uniformly across the image plane and Y pixels among the top 5Y pixels with the highest color gradient magnitude". 2. We sample 3D points along the rays going through the pixels (from the camera center) i.e. ""For each sampled pixel we sample a set of points xi along the ray".
Hope that helps!

Thank you very much!


Propose a UI design for the front-end and develop it.

The api can be called by other programs and can be used independently but the UX is not good.
Propose a UI design for the front-end in the comments and we will develop it. If any doubts, leave a comment mentioning me.

Hi @zamhaq . I will try to do the mock design of the UI for landing page.

Great @rahulkumar082


Allow overload for interpreting two digit years in Date.create

Handling two digit dates is ambiguous. There looks like some current heuristics around how to handle this, but it would be good to allow it to be configurable so applications can decide when they want to flip from being forward looking to be backward looking.
Right now it appears 50 is the inversion point.
50 -> 2050
51 -> 1951

So, any ambiguity in the interpretation of dates (including 2 year dates, units without a specific larger unit set, such as just "Wednesday", etc) are handled with the past and future options. You can find them here.

That is not particularly helpful because they only gives you the options of:
A) Always pick the future
B) Always pick the past
C) Write your own date parser to find the year and set the correct setting at which point you wouldn't bother using sugar-dates.
I would expect some overload similar to moment.parseTwoDigitYear that allows you to set the year based on the two digit date found. I assume this would go into the options similar to the way timezone support is exposed.

Maybe you could tell me what you're trying to do and how you would interpret a 2 digit year?

I'd like to configure sugar to follow Excel conventions where two digit dates 0-30 are in the 2000s and 31-99 are in the 1900s. This would be easily configurable with a twoDigitYear option:
const twoDigitYear = (year) => {
  if (year > 30) {
    return 1900 + year;
  }
  return 2000 + year;
}

OK this seems reasonable. First, since I managed to dig it up, please note that Sugar follows RFC 2882 here:
Where a two or three digit year occurs in a date, the year is to be
interpreted as follows: If a two digit year is encountered whose
value is between 00 and 49, the year is interpreted by adding 2000,
ending up with a value between 2000 and 2049.  If a two digit year is
encountered with a value between 50 and 99, or any three digit year
is encountered, the year is interpreted by adding 1900.

However, you've pointed out that other standards exist, so it seems reasonable to support them. It seems to me that this should support a function as you suggest, whose input is the 2 digit year token (as a string), and whose output is a number (string works too but will be coerced to a number in the end).


Organize proxy hosts with folders / groups / tags or search

Is your feature request related to a problem? Please describe.
When you add a lot of hosts to the Proxy Hosts page it becomes quite long to find the host you are looking for.
Describe the solution you'd like

A way to put similar or related hosts in folders.
A search field.

Describe alternatives you've considered
I could instead use different accounts but that is kinda a hassle.

Nice suggestions :) When the UI moves to a React framework the search field, filtering and sorting will definitely be there.

Folders would be real nice. And if you could add custom nginx directives to a folder that will be applied to all hosts that it contains.

Filters, sorting, folders, all would be nice and usefull 👍

@jc21 Any idea when the UI is going to be moved to React? Branch?

Went to add this same basic thing as a feature request, searched and saw this so figured id post this here!
Even just some way to sort them by alphabetical or domain name would be better than nothing lol.
Also yea is there a ETA on the move to React? I totally understand if not...don't want to beholden to a time frame! Totally get it.

The filter can be an UI improvement by adding a dorp-down in the titles of the grid, and hide whatever item doesn't apply the filter.
In the other Hand I think Tags could be really useful, for example to group by environment, use, Locations, etc ( Production, Staging, Monitoring, Infrastructure and so on).
To filther this could be useful to have a search box above the titles of the grid.

To Filter we need to start typing, this would bring a list of posible tags, and when we select one it's applied. Something as ConfigHub does

https://confighub.readthedocs.io/en/latest/pages/tabs/config/properties.html#editor-toolbar
I hope this grain of sand helps in any form. Regards.

Hello Bot


sync_ms doesn't appear to work

This will require some investigation, as there are tests for it, so maybe the tests are bad.
My experience with sync_ms is that it seems to have no effect. But that could be more related to how the shows do timing of their steps.
First, each step does everything it has to do, then it calculates how much time should pass until the next step starts and schedules the step. But if that step's actions time some time to run, it will still calculate the full duration for the next step. So this can cause drift over time (which is clear if you're running a bunch of shows at once that should be in sync.
Instead each step should be calculated from the beginning of the show (probably in delta time from beginning versus duration).

The code does exactly that. It calculates all times relative to the start of the show (I changed that a few month back):
            self.next_step_time += time_to_next_step
            self._delay_handler = self.machine.clock.schedule_once(self._run_next_step,
                                                                   self.next_step_time - self.machine.clock.get_time())

Turns out it's not an issue. Some LEDs with fades and some without made it look like they weren't in sync.


Can I map the left mouse button?

This is my keyd config:
[ids]

[main]
capslock = overload(capslock_layer,esc)
[capslock_layer]
enter = left mouse down
I want map capslock+enter = left mouse click. but not working.

You want leftmouse. You can list all valid keys with keyd -l. See the man page for more details.

You want leftmouse. You can list all valid keys with keyd -l. See the man page for more details.

Thank you


how do i deploy this on heroku?

i dont think heroku provides the free tier anymore. if you already have an account you can deploy it like any other fullstack app. the code is updated. the server in server folder and the client in client folder


getting  for all words

Hi,
I am training on English-Hindi pair of around 1.5 million parallel sent. The training was done without giving any error.
But while translating test sent, I am getting all   .
I have taken a very small vocabulary file for Hindi . i.e. size of 8k words.
Is this the reason?
Thanks,
Sriram

sorry,
the above sentence was not complete.
But while translating test sent, I am getting all ""

I have succesfully trained the Vietnamese-English system as given in the tutorial.

I have increased the vocabulary size (sort and uniq of all the words in train file).
The <unk> has disappeared to some extent. Still the bleu score is quite low for test set (0.1).
what may be the possible reason?

How are you building your vocabulary?
You should generate vocabulary from training data. You will get much larger vocabulary (without subword) for 1.5 million parallel sentences (I hope you are using IITB parallel corpus).


Remove unused customReportFiles property

This has internal visibility and is unused.

Actually this might be effectively in use because of the annotations on the getter... I have a more complete solution for that which I'll submit later.


support accounts with auth app and null checks

Here's a summary of the changes:

Added a setInterval function that clicks the 'signInAnotherWay' button every 50 ms when on the "/login.srf" or "/common/reprocess" paths. This ensures the script attempts to sign in another way before interacting with the 'PhoneAppOTP'.
Adjusted the timing of the interactions with the 'PhoneAppOTP' and 'idTxtBx_SAOTCC_OTC' to accommodate for the newly introduced 'signInAnotherWay' interaction.
Inserted null checks before interacting with page elements to prevent potential errors that might occur if the script tries to access an element before it exists on the page.

Thank you so much for making the pull request on this dead repo ^^. The changes have been merged.


Bugfix routing back home page

fixed logout as admin will direct u to home page
fixed leave club for captain will throw message transfer captaincy
new error where now yekai50 cannot create a club?

raised the issue, will fix it later, pls approve pr


Add Redsmin

Free tier: 1 redis server connected
Pros: Full Redis server administration and monitoring. Unlimited alerting.
Limitations: limited to 1 connected redis server
Exceeding the free tier: Credit card needed after first 30 days to charge exceeding usage. Free downgrade possible through support.

Thanks for the contribution, I slightly modified the description to stick with the repo style


Some new algorithm

Hey,
I added some new algorithms (see below). I think that it should be nice some of the code of Visualisation.py in the test and complete Visualisation.py with the new algorithm.
There is also some kinda of issue with the ratio for some methods.

Under-sampling:
4. NearMiss-(1 & 2 & 3)
5. Condensend Nearest Neighbour
6. One-Sided Selection
7. Neighboorhood Cleaning Rule

Over-sampling follow by under-sampling

SMOTE + Tomek links
SMOTE + ENN

Ensemble sampling

EasyEnsemble
BalanceCascade

Cheers,

Awesome.
I agree with expanding the Visualization. I was planning on putting together an ipython notebook with usage and vizualizations since now ipython integrates nicely with github.
I will take a look at the code tonight, and merge it as soon as I can.

I did a first draft of the notebook. Let me know from where you want to go from that point regarding that.
Cheers,

Ok, its merged.
For the notebook I was thinking about example usage of the API, plots similar to the ones I has in visualization, but with the added methods (at least the most interesting ones).
Other small change would be to make the code more pep8 compliant. Also, if you checkout the branch split_file, that was my idea for a big refactoring, that would make even more sense now that the number of algos grew substantially. I'll open an issue for these topics so we can iterate on them.
Great work, man, cheers.


Cannot get SGB borders. (1.0.8 cia version)

Whatever options I set, sgb border cannot appear at all.
Tried many roms, including mono and color games, all of which have sgb borders on PC emulators.

Sorry, I haven't noticed it's already in "TODO" section.

SGB borders are supported by the latest source.


run: introduce --namespace flag

It would be nice to add --namespace flag for run subcommand as in apply command. But noticed a (DEPRECATED) warning. So couldn't get the actual reason why --namespace is deprecated. We moved it to an env var or something different way?
Workaround is to switch namespace using kubectl $ kubectl config set-context foo then ko run .
ko: 0.11.2
cc @developer-guy

I don't think ko run is very widely used -- I don't think I've ever used it myself -- but it does seem like --namespace would be a useful addition, if we decide to keep the command around.
ko run ./cmd/app -n foo -- arg1 arg2 sgtm

As for why ko apply --namespace is (DEPRECATED), that's because we want to have users just pass flags directly through to kubectl instead of having them be flags on ko apply itself. See https://github.com/google/ko/issues/317 -- we log a deprecation warning for that, but should probably just go ahead and clean up the old flags by now.

We've decided to keep ko run around at least for now, so if you or anyone reading this is interested in adding it, that could be nice.
I'd probably want to support passing flags arbitrary to kubectl run similar to how we do it for ko apply today, by passing anything after -- to kubectl run directly. This would enable --namespace/-n, and also other nice things like --attach.

kindly ping @Dentrax, are you going to implement this?