Display oracle status

Display oracle status in the left side where we display blockchain information

@mradkov have you already questioned designers about design for this?

@mradkov have you already questioned designers about design for this?

I did. Waiting for their response.


Optimisation section - lazy API

The optimisation section needs an overhaul. I propose to start with a review of the current lazy API section before adding anything new.
We can add more on:

combining multiple predicates
slice pushdown
CSE
caching

Anything other thoughts @ritchie46 @r-brink?

Indeed. I think we can remove the examples shown (don't add much benefit IMO).
But what we do need is a table with all the optimizations and how often they run and what they do.

YES! 🙌  We could create a new more coherent structure and rewrite + add some new content


Error when the workbook has multiple sheets

A colleague came to me because this script was giving errors. He deployed the solution, but he ended up with multiple sheets - I have no idea how he managed that. Funny enough, menu function "Only check weather" works as advertised. But running "Check weather and sync DV360" gives this error in the log:
TypeError: Cannot read property '0' of undefined
    at forceFormulasEval(Code:505:59)
    at main(Code:1712:41)
    at monitorWeatherAndSyncWithDV360(Code:1762:12)

The problem: function forceFormulasEval assumes the default sheet to be the Triggers sheet. Applying the following change will fix the problem:
  forceFormulasEval(row, col) {
    //return this.get(`R${row}C${col}`, 'UNFORMATTED_VALUE')[0][0];
    return this.get(`${configSpreadsheetName}!R${row}C${col}`, 'UNFORMATTED_VALUE')[0][0];
  }

Thanks a lot! Solved the problem for me!


fix(miranum): complex object mapping

Closes #360

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 45.03%. Comparing base (6c988cb) to head (5d866e4).

Additional details and impacted files
@@             Coverage Diff              @@
##               main     #362      +/-   ##
============================================
+ Coverage     44.98%   45.03%   +0.04%
  Complexity      384      384
============================================
  Files           184      184
  Lines          2025     2023       -2
  Branches        107      106       -1
============================================
  Hits            911      911
+ Misses         1083     1081       -2
  Partials         31       31

Flag
Coverage Δ

unittests
45.03% <100.00%> (+0.04%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


The API add Unexpected "S" in sequence

Hello, I'm using the local API to optimize protein sequence.
While I was optimizing seqence "RSVGSVY", the output is "CGCTCCGTCGGCTCCAGCGTCTACTGA", which amino acid is "RSVGSSVY*". It seems the local server change the "GSV" to "GSSV".
Can you fix it?
The code I use:
import optipyzer
api = optipyzer.API(local=1)
dna = api.optimize(
        seq = 'RSVGSVY',
        seq_type='protein',
        weights={"human": 2, "mouse": 1})
seq = dna['optimized_sd']
print(f"{seq},len={len(seq)}")

Hello! This might be a similar issue to #57 I'll need to look into this for a sec...

这是来自QQ邮箱的自动回复

您好，已收到邮件。Mail received


Combine 2 paragraphs of the deferral guidance on the dashboard

Context
There is no need to break this into two separate  tags.
Changes proposed in this pull request

Combine the two paras

before

after

Link to Trello card
https://trello.com/c/UJQHdsvh/2139-dev-conditional-deferral-guidance-on-dashboard
Things to check

[x] This code does not rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

thanks @davidgisbey !


memberlist: Was able to connect to b3e0c29eb2bf but other probes failed, network may be misconfigured

OS:centos 7.7
kernel: Linux 3.10.0-1062.1.2.el7.x86_64
Docker version 19.03.3,
Dec 11 06:54:47 docker03 dockerd: time="2019-12-11T06:54:47.767355452+08:00" level=info msg="NetworkDB stats docker03.crm.konka.com(e96a082330cd) - netID:qr7lotpn87qukfehp4wlh3ucj leaving:false netPeers:3 entries:56 Queue qLen:0 netMsg/s:0" Dec 11 06:54:47 docker03 dockerd: time="2019-12-11T06:54:47.767441804+08:00" level=info msg="NetworkDB stats docker03.crm.konka.com(e96a082330cd) - netID:fmiw7636h6cy9lwjxvs4h23gu leaving:false netPeers:3 entries:19 Queue qLen:0 netMsg/s:0" Dec 11 06:54:47 docker03 dockerd: time="2019-12-11T06:54:47.767465173+08:00" level=info msg="NetworkDB stats docker03.crm.konka.com(e96a082330cd) - netID:m1hztj3cbsagbbothra71mm6r leaving:false netPeers:3 entries:21 Queue qLen:0 netMsg/s:0" Dec 11 06:54:47 docker03 dockerd: time="2019-12-11T06:54:47.767495834+08:00" level=info msg="NetworkDB stats docker03.crm.konka.com(e96a082330cd) - netID:y9tfc6e6fvyjxmigpg22yj9jc leaving:false netPeers:3 entries:89 Queue qLen:0 netMsg/s:0" Dec 11 06:54:47 docker03 dockerd: time="2019-12-11T06:54:47.767516866+08:00" level=info msg="NetworkDB stats docker03.crm.konka.com(e96a082330cd) - netID:m35l6quygjsktlphbmzuanygj leaving:false netPeers:3 entries:9 Queue qLen:0 netMsg/s:0" Dec 11 06:55:01 docker03 systemd: Started Session 49475 of user root. Dec 11 06:55:11 docker03 metricbeat: 2019-12-11T06:55:11.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65610020,"time":{"ms":784}},"total":{"ticks":146119030,"time":{"ms":1643},"value":146119030},"user":{"ticks":80509010,"time":{"ms":859}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":20},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282650061}},"memstats":{"gc_next":57884400,"memory_alloc":32533496,"memory_total":19643426197216},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":478,"batches":15,"total":478},"read":{"bytes":8283},"write":{"bytes":918062}},"pipeline":{"clients":4,"events":{"active":0,"published":478,"total":478},"queue":{"acked":478}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"filesystem":{"events":3,"success":3},"fsstat":{"events":1,"success":1},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":27,"success":27},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":2.08,"15":1.03,"5":1.43,"norm":{"1":0.13,"15":0.0644,"5":0.0894}}}}}} Dec 11 06:55:41 docker03 metricbeat: 2019-12-11T06:55:41.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65610860,"time":{"ms":841}},"total":{"ticks":146120640,"time":{"ms":1615},"value":146120640},"user":{"ticks":80509780,"time":{"ms":774}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":21},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282680061}},"memstats":{"gc_next":64538816,"memory_alloc":51207520,"memory_total":19643613692208},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":475,"batches":15,"total":475},"read":{"bytes":8208},"write":{"bytes":918901}},"pipeline":{"clients":4,"events":{"active":0,"published":475,"total":475},"queue":{"acked":475}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":28,"success":28},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":2.34,"15":1.08,"5":1.55,"norm":{"1":0.1463,"15":0.0675,"5":0.0969}}}}}} Dec 11 06:56:01 docker03 systemd: Started Session 49476 of user root. Dec 11 06:56:11 docker03 metricbeat: 2019-12-11T06:56:11.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65611610,"time":{"ms":748}},"total":{"ticks":146122250,"time":{"ms":1612},"value":146122250},"user":{"ticks":80510640,"time":{"ms":864}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":21},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282710062}},"memstats":{"gc_next":63873488,"memory_alloc":43712128,"memory_total":19643802483096},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":479,"batches":15,"total":479},"read":{"bytes":8214},"write":{"bytes":923080}},"pipeline":{"clients":4,"events":{"active":0,"published":479,"total":479},"queue":{"acked":479}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"filesystem":{"events":3,"success":3},"fsstat":{"events":1,"success":1},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":28,"success":28},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":2.06,"15":1.1,"5":1.56,"norm":{"1":0.1288,"15":0.0688,"5":0.0975}}}}}} Dec 11 06:56:41 docker03 metricbeat: 2019-12-11T06:56:41.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65612420,"time":{"ms":809}},"total":{"ticks":146123860,"time":{"ms":1604},"value":146123860},"user":{"ticks":80511440,"time":{"ms":795}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":20},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282740062}},"memstats":{"gc_next":57783152,"memory_alloc":31949392,"memory_total":19643991343176},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":474,"batches":15,"total":474},"read":{"bytes":8196},"write":{"bytes":913974}},"pipeline":{"clients":4,"events":{"active":0,"published":474,"total":474},"queue":{"acked":474}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":27,"success":27},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":1.98,"15":1.12,"5":1.59,"norm":{"1":0.1238,"15":0.07,"5":0.0994}}}}}} Dec 11 06:57:01 docker03 systemd: Started Session 49477 of user root. Dec 11 06:57:11 docker03 metricbeat: 2019-12-11T06:57:11.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65613160,"time":{"ms":741}},"total":{"ticks":146125450,"time":{"ms":1595},"value":146125450},"user":{"ticks":80512290,"time":{"ms":854}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":21},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282770061}},"memstats":{"gc_next":64162608,"memory_alloc":51580992,"memory_total":19644179534184},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":478,"batches":15,"total":478},"read":{"bytes":8259},"write":{"bytes":918475}},"pipeline":{"clients":4,"events":{"active":0,"published":478,"total":478},"queue":{"acked":478}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"filesystem":{"events":3,"success":3},"fsstat":{"events":1,"success":1},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":27,"success":27},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":2.1,"15":1.16,"5":1.66,"norm":{"1":0.1313,"15":0.0725,"5":0.1038}}}}}} Dec 11 06:57:41 docker03 metricbeat: 2019-12-11T06:57:41.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65613970,"time":{"ms":813}},"total":{"ticks":146127080,"time":{"ms":1627},"value":146127080},"user":{"ticks":80513110,"time":{"ms":814}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":21},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282800062}},"memstats":{"gc_next":63662912,"memory_alloc":42633224,"memory_total":19644368014240},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":475,"batches":15,"total":475},"read":{"bytes":8209},"write":{"bytes":919205}},"pipeline":{"clients":4,"events":{"active":0,"published":475,"total":475},"queue":{"acked":475}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":28,"success":28},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":1.84,"15":1.17,"5":1.64,"norm":{"1":0.115,"15":0.0731,"5":0.1025}}}}}} Dec 11 06:58:01 docker03 systemd: Started Session 49478 of user root. Dec 11 06:58:11 docker03 metricbeat: 2019-12-11T06:58:11.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65614740,"time":{"ms":770}},"total":{"ticks":146128680,"time":{"ms":1601},"value":146128680},"user":{"ticks":80513940,"time":{"ms":831}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":21},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282830061}},"memstats":{"gc_next":63562304,"memory_alloc":52200656,"memory_total":19644556451408,"rss":-196608},"runtime":{"goroutines":80}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":480,"batches":15,"total":480},"read":{"bytes":8288},"write":{"bytes":926284}},"pipeline":{"clients":4,"events":{"active":0,"published":480,"total":480},"queue":{"acked":480}}},"metricbeat":{"docker":{"container":{"events":57,"success":57},"cpu":{"events":57,"success":57},"diskio":{"events":57,"success":57},"info":{"events":3,"success":3},"memory":{"events":57,"success":57},"network":{"events":123,"success":123}},"system":{"cpu":{"events":3,"success":3},"filesystem":{"events":3,"success":3},"fsstat":{"events":1,"success":1},"load":{"events":3,"success":3},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":29,"success":29},"process_summary":{"events":3,"success":3},"socket_summary":{"events":3,"success":3}}},"system":{"load":{"1":1.94,"15":1.2,"5":1.68,"norm":{"1":0.1213,"15":0.075,"5":0.105}}}}}} Dec 11 06:58:38 docker03 dockerd: time="2019-12-11T06:58:32.293341390+08:00" level=warning msg="memberlist: Refuting a suspect message (from: 846ab1c1006d)" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:33.412823513+08:00" level=info msg="memberlist: Suspect 846ab1c1006d has failed, no acks received" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:36.669235241+08:00" level=warning msg="memberlist: Was able to connect to b3e0c29eb2bf but other probes failed, network may be misconfigured" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:38.099609883+08:00" level=info msg="memberlist: Marking 846ab1c1006d as failed, suspect timeout reached (0 peer confirmations)" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:38.571293768+08:00" level=info msg="Node 846ab1c1006d/<IP_ADDRESS>, left gossip cluster" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:38.915029204+08:00" level=info msg="Node 846ab1c1006d change state NodeActive --> NodeFailed" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:39.094133966+08:00" level=warning msg="memberlist: Failed fallback ping: write tcp <IP_ADDRESS>:58432-><IP_ADDRESS>:7946: i/o timeout" Dec 11 06:58:39 docker03 dockerd: time="2019-12-11T06:58:39.094191102+08:00" level=info msg="memberlist: Suspect 846ab1c1006d has failed, no acks received" Dec 11 06:58:39 docker03 metricbeat: 2019-12-11T06:58:36.653+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.cpu: failed to get docker stats: context deadline exceeded Dec 11 06:58:39 docker03 metricbeat: 2019-12-11T06:58:36.582+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.network: failed to get docker stats: context deadline exceeded Dec 11 06:58:39 docker03 metricbeat: 2019-12-11T06:58:36.750+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.memory: failed to get docker stats: context deadline exceeded Dec 11 06:58:39 docker03 metricbeat: 2019-12-11T06:58:36.750+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.diskio: failed to get docker stats: context deadline exceeded Dec 11 06:58:41 docker03 kernel: IPVS: __ip_vs_del_service: enter Dec 11 06:58:42 docker03 metricbeat: 2019-12-11T06:58:42.042+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65615940,"time":{"ms":1201}},"total":{"ticks":146130670,"time":{"ms":1989},"value":146130670},"user":{"ticks":80514730,"time":{"ms":788}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":18},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282860061}},"memstats":{"gc_next":60316064,"memory_alloc":35767424,"memory_total":19644629980784,"rss":-22454272},"runtime":{"goroutines":72}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":200,"batches":11,"total":200},"read":{"bytes":5040},"write":{"bytes":345697}},"pipeline":{"clients":4,"events":{"active":21,"published":221,"total":221},"queue":{"acked":200}}},"metricbeat":{"docker":{"container":{"events":19,"success":19},"cpu":{"events":20,"failures":1,"success":19},"diskio":{"events":20,"failures":1,"success":19},"info":{"events":1,"success":1},"memory":{"events":20,"failures":1,"success":19},"network":{"events":42,"failures":1,"success":41}},"system":{"cpu":{"events":3,"success":3},"load":{"events":4,"success":4},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":10,"success":10},"process_summary":{"events":1,"success":1},"socket_summary":{"events":1,"success":1}}},"system":{"load":{"1":40,"15":4.11,"5":10.47,"norm":{"1":2.5,"15":0.2569,"5":0.6544}}}}}} Dec 11 06:58:46 docker03 journal: not GsPlugin error from plugin packagekit-refine pk-control-error-quark:0: failed to get updates for urgency: Timeout was reached Dec 11 06:58:46 docker03 journal: failed to call gs_plugin_refine on packagekit-refine: failed to get updates for urgency: Timeout was reached Dec 11 06:58:46 docker03 metricbeat: 2019-12-11T06:58:46.678+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.network: failed to get docker stats: context deadline exceeded Dec 11 06:58:46 docker03 metricbeat: 2019-12-11T06:58:46.757+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.cpu: failed to get docker stats: context deadline exceeded Dec 11 06:58:46 docker03 metricbeat: 2019-12-11T06:58:46.778+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.memory: failed to get docker stats: context deadline exceeded Dec 11 06:58:47 docker03 metricbeat: 2019-12-11T06:58:47.112+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.diskio: failed to get docker stats: context deadline exceeded Dec 11 06:58:56 docker03 metricbeat: 2019-12-11T06:58:56.678+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.network: failed to get docker stats: context deadline exceeded Dec 11 06:58:56 docker03 metricbeat: 2019-12-11T06:58:56.757+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.cpu: failed to get docker stats: context deadline exceeded Dec 11 06:58:56 docker03 metricbeat: 2019-12-11T06:58:56.779+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.memory: failed to get docker stats: context deadline exceeded Dec 11 06:58:57 docker03 metricbeat: 2019-12-11T06:58:57.112+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.diskio: failed to get docker stats: context deadline exceeded Dec 11 06:59:03 docker03 dockerd: time="2019-12-11T06:59:03.313119038+08:00" level=error msg="heartbeat to manager {chr59ufheiq7ryc9992rk7v1m <IP_ADDRESS>:2377} failed" error="rpc error: code = DeadlineExceeded desc = context deadline exceeded" method="(*session).heartbeat" module=node/agent node.id=5x22o7ol1eaa9x4ldatd9mo47 session.id=vd5fer855hs2b3qx53ivwdnzx sessionID=vd5fer855hs2b3qx53ivwdnzx Dec 11 06:59:06 docker03 metricbeat: 2019-12-11T06:59:06.678+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.network: failed to get docker stats: context deadline exceeded Dec 11 06:59:06 docker03 metricbeat: 2019-12-11T06:59:06.758+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.cpu: failed to get docker stats: context deadline exceeded Dec 11 06:59:06 docker03 metricbeat: 2019-12-11T06:59:06.779+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.memory: failed to get docker stats: context deadline exceeded Dec 11 06:59:07 docker03 metricbeat: 2019-12-11T06:59:07.113+0800#011INFO#011module/wrapper.go:252#011Error fetching data for metricset docker.diskio: failed to get docker stats: context deadline exceeded Dec 11 06:59:11 docker03 dockerd: time="2019-12-11T06:59:11.378477435+08:00" level=info msg="Node 846ab1c1006d/<IP_ADDRESS>, added to failed nodes list" Dec 11 06:59:11 docker03 dockerd: time="2019-12-11T06:59:11.378571999+08:00" level=warning msg="NetworkDB stats docker03.crm.konka.com(e96a082330cd) - healthscore:1 (connectivity issues)" Dec 11 06:59:11 docker03 kernel: IPVS: __ip_vs_del_service: enter Dec 11 06:59:11 docker03 metricbeat: 2019-12-11T06:59:11.934+0800#011INFO#011[monitoring]#011log/log.go:145#011Non-zero metrics in the last 30s#011{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":65617180,"time":{"ms":1231}},"total":{"ticks":146132590,"time":{"ms":1914},"value":146132590},"user":{"ticks":80515410,"time":{"ms":683}}},"handles":{"limit":{"hard":4096,"soft":1024},"open":16},"info":{"ephemeral_id":"261099d3-8524-40d6-b5e5-71afd6d36423","uptime":{"ms":4282890061}},"memstats":{"gc_next":58037264,"memory_alloc":32071192,"memory_total":19644851779344,"rss":7983104},"runtime":{"goroutines":72}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":169,"batches":13,"total":169},"read":{"bytes":5534},"write":{"bytes":273693}},"pipeline":{"clients":4,"events":{"active":0,"published":148,"total":148},"queue":{"acked":169}}},"metricbeat":{"docker":{"cpu":{"events":3,"failures":3},"diskio":{"events":3,"failures":3},"info":{"events":1,"success":1},"memory":{"events":3,"failures":3},"network":{"events":3,"failures":3}},"system":{"cpu":{"events":3,"success":3},"filesystem":{"events":3,"success":3},"fsstat":{"events":1,"success":1},"load":{"events":2,"success":2},"memory":{"events":3,"success":3},"network":{"events":78,"success":78},"process":{"events":35,"success":35},"process_summary":{"events":5,"success":5},"socket_summary":{"events":4,"success":4}}},"system":{"load":{"1":57.92,"15":6.69,"5":17.63,"norm":{"1":3.62,"15":0.4181,"5":1.1019}}}}}} Dec 11 06:59:12 docker03 dockerd: time="2019-12-11T06:59:12.696173161+08:00" level=info msg="Node 846ab1c1006d/<IP_ADDRESS>, joined gossip cluster"

You're probably wanting https://github.com/docker/for-linux/issues. This repo is for the official-image of Docker in Docker.
I would also get more background and information for your issue.
You could also try asking over at the Docker Community Forums, Docker Community Slack, or Stack Overflow


Shorten sample return, adds brief explanation

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@yeajung can you take a look at this? Especially the tiny paragraph at the very bottom of the file.


Fix Anchor Link to Other Interesting Tools/Code

Link to other interesting tools/code didn't work
The anchor tag removed the "/" from the section name so this updates
the TOC link to match
It wasn't rocket surgery but it annoyed me...

nice! Thanks for the fix @briandbecker!


Fixed a sentence regarding autoack in the tutorials.

I am still going through the tutorials, so I could be wrong, but I think this is what you mean?

autoAck does not turn manual acknowledgements on, it turns them off.

Ah. That makes sense. I kept thinking "but how are we turning the acknowledgements off by setting the 'autoack' flag to true?". Sent another PR with slight modifications to clarify where we are referring to manual acknowledgement and where we are referring to auto acknowledgement.


Warning on only 1 result in get_events

Additional PR:
As stated in https://github.com/rileydutton/Exchange-Web-Services-for-PHP/issues/36 there is a warning at only one event.
This possibility was handled in the code but unfortunately in the wrong order.
@rileydutton Would be awesome if you could check! :)

Replaced by https://github.com/rileydutton/Exchange-Web-Services-for-PHP/pull/38


Fix timeseries regressions

Please confirm that this PR has done the following:

[ ] Tests Added (not yet?)
[ ] ~Documentation Added~ -> no changes
[ ] ~Name of contributors Added to AUTHORS.rst~
[ ] ~Description in RELEASE_NOTES.md Added~ -> I'd say not noteworthy enough! objections?

Description of PR

Re-implement iamc_index argument for dropping extra_cols

Guarantee sort order in time axis
During the _data refactor, the timeseries method was refactored from pivot_table to a simple unstack. when earlier (as in sortorder) models, scenario, variables have their first year after later ones, the time axis will be out-of-order.

Black will be fine with that line! I'd suggest waiting for the black changes to land. I'll rebase afterwards, same for other branches.


proposal: add tests

Is there any plan for implementing jest or vitest? I'm willing to contribute!
Expected cases:

package managers
expected output matches

I don't think a test suite is really needed here, no. It's a pretty small CLI and not really mission-critical at that

Got it!


Do you consider the mask problem for attention?

Thank you for your interests in our work.
First, It is not clear that the attention you mentioned is REFER module or FIND module.
In REFER module, we don't need to consider the mask because we just borrowed the multi-attention concept not self-attention.
In FIND module, we also didn't employ the mask in our published work. But, we newly implemented the visual mask for the researchers who will be interested in. You can check the encoder/modules.py file.


Add headers when setting contentType and contentLength in webAppRequest and webAppResponse

Describe the bug
For DefaultWebApplicationRequest and DefaultWebApplicationResponse, set the following headers in the respective methods:

Content-Type header in setContentType()
Content-Length header in setContentLength() - this is already done for DefaultWebApplicationResponse, see #1226

This is necessary because otherwise some servlets won't be able to detect the values. For example Jersey looks at the content-type header to read the content type of POST body. If the header isn't set, it won't find the matching message body reader.

Also vice-versa - when the header is set, it should update the value returned from getContentType() and getContentLength()


C# Imdb

Stop working today, just returning Null

Exactly this. I guess it's because of the new reference view on imdb. It's perhaps a good thing that it's atleast returning NULL.
Avid user of this, so would love an update.

Well its ok i created new with Api from OMDB, it free for now

I went from OMDB to this when i made my database app. As i recall it omdb didn't have full cast import, and your dependent on OMDB (server downtime etc). But ill guess ill get on with recoding it for the time being.

Yea i know, but in my case i don't need full imports, just basic, you can use Scrappy library to scrap new
data from Imdb too


fix: reduce the amount of visual jitter on a playing timeline, particularly on scaled DPIs

This PR is being opened on behalf of me 🙂

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Bug fix

What is the current behavior? (You can also link to an open issue here)

What is the new behavior (if this is a feature change)?

Other information:

The idea here is that, instead of letting the browser's layout engine handle positioning the parts, we position them manually via a CSS transform and some simple math. This is not only less prone to jitter, but it should actually be more performant, because CSS transforms are virtually free whereas layout can be expensive depending on the context.
Users running at 100% DPI scaling (default) might have never noticed this problem, but it becomes hugely noticeable at 125% DPI scaling, or any other fractional value.
Has not been tested thoroughly.
Without the will-change rules, the constant layer promotion and demotion is visually obvious in the form of the gray vertical lines strobing.
Status

[x] Code documentation for the relevant parts in the code have been added/updated by the PR author
[x] The functionality has been tested by the PR author
[ ] The functionality has been tested by NRK

Codecov Report
Patch coverage: 71.42% and project coverage change: +24.41 :tada:

Comparison is base (20d1acb) 56.61% compared to head (83c222e) 81.03%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@              Coverage Diff               @@
##           release50     #903       +/-   ##
==============================================
+ Coverage      56.61%   81.03%   +24.41%
==============================================
  Files            442      129      -313
  Lines          67436    25767    -41669
  Branches        3102     2069     -1033
==============================================
- Hits           38181    20881    -17300
+ Misses         29205     4862    -24343
+ Partials          50       24       -26

Impacted Files
Coverage Δ

packages/corelib/src/mongo.ts
35.07% <0.00%> (ø)

packages/job-worker/src/blueprints/config.ts
100.00% <ø> (+8.74%)
:arrow_up:

...job-worker/src/ingest/syncChangesToPartInstance.ts
24.05% <0.00%> (ø)

...kages/job-worker/src/playout/activePlaylistJobs.ts
100.00% <ø> (ø)

packages/job-worker/src/peripheralDevice.ts
8.01% <17.07%> (-35.59%)
:arrow_down:

packages/corelib/src/lib.ts
52.08% <25.00%> (ø)

...src/blueprints/context/RundownActivationContext.ts
45.45% <45.45%> (ø)

...ckages/corelib/src/settings/objectWithOverrides.ts
80.68% <66.66%> (ø)

.../job-worker/src/blueprints/context/adlibActions.ts
92.27% <90.00%> (+3.97%)
:arrow_up:

packages/blueprints-integration/src/context.ts
100.00% <100.00%> (ø)

... and 16 more

... and 364 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

I think I've found one bug in the new implementation, and that bug is that it doesn't take AUTO parts into consideration. Consider the example below:
https://user-images.githubusercontent.com/3635991/234000056-c2b285c7-8902-4839-b3f0-a5cdb5f1e3f6.mp4
The correct behavior would be to not elongate the Part 1 in Segment 2 (VIGNETT), because it's an AUTO part and it's duration is expected not to change.

Good catch @jstarpl, I knew there was something I was forgetting to test...
I've pushed a tiny fix that I believe addresses this problem. Correct me if I'm wrong, but it's as simple as "AUTO NEXT parts should never show a future shade", correct?

Yes, I think in the way you've implemented that's what it boils down to.


CAPS only coloring

Using the below in EnhanceAnyLexerConfig.ini file, also highlights small letter words.
Is this by intention, if so what should be done to color only words with CAPS only.
0xff00ff = \b([A-Z]+)\b

The default setting in Npp is that it is not case sensitive, you must specify this explicitly with a (?-i), i.e.
0xff00ff = (?-i)\b([A-Z]+)\b

Thx @Ekopalypse .
Its not an issue then, will close it.


push atom elements to array instead of logging them to the console

Hey,
It's-a me, Miguel!!
I'm sorry to keep bothering but I thought I might take your word and ask future questions.
I modified the code in the index.js file to render what I am looking for to then modify the rest. However, I am having some trouble with creating an array of atoms. So here I will post the code of the index.js file:
/**
 * Copyright (c) 2019-2023 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author Alexander Rose<EMAIL_ADDRESS> */
import { __assign, __awaiter, __generator } from "tslib";
import { createPluginUI } from '../../mol-plugin-ui/react18';
import { DefaultPluginUISpec } from '../../mol-plugin-ui/spec';
import { PluginCommands } from '../../mol-plugin/commands';
import { Asset } from '../../mol-util/assets';
import { Color } from '../../mol-util/color';
import './index.html';
import { Structure } from '../../mol-model/structure';
import { StructureElement, toStructureElementLoci } from '../../mol-model/structure';

require('mol-plugin-ui/skin/light.scss');
var Canvas3DPresets = {
    illustrative: {
        canvas3d: {
            postprocessing: {
                occlusion: {
                    name: 'on',
                    params: {
                        samples: 32,
                        multiScale: { name: 'off', params: {} },
                        radius: 5,
                        bias: 0.8,
                        blurKernelSize: 15,
                        resolutionScale: 1,
                        color: Color(0x000000),
                    }
                },
                outline: {
                    name: 'on',
                    params: {
                        scale: 1,
                        threshold: 0.33,
                        color: Color(0x000000),
                        includeTransparent: true,
                    }
                },
                shadow: {
                    name: 'off',
                    params: {}
                },
            },
            renderer: {
                ambientIntensity: 1.0,
                light: []
            }
        }
    }
};

var LightingDemo = /** @class */ (function () {
    function LightingDemo() {
        this.radius = 5;
        this.bias = 1.1;
        this.preset = 'illustrative';
        this.atoms = [];

    }
    LightingDemo.prototype.init = function (target) {
        return __awaiter(this, void 0, void 0, function () {
            var _a;
            return __generator(this, function (_b) {
                switch (_b.label) {
                    case 0:
                        _a = this;
                        return [4 /*yield*/, createPluginUI(typeof target === 'string' ? document.getElementById(target) : target, __assign(__assign({}, DefaultPluginUISpec()), { layout: {
                                    initial: {
                                        isExpanded: false,
                                        showControls: false
                                    },
                                }, components: {
                                    controls: { left: 'none', right: 'none', top: 'none', bottom: 'none' }
                                } }))];
                    case 1:
                        _a.plugin = _b.sent();
                        return [2 /*return*/];
                }
            });
        });
    };
    var atoms = [];

    LightingDemo.prototype.load = function (_a) {
        var _b;
        var url = _a.url, _c = _a.format, format = _c === void 0 ? 'mmcif' : _c, _d = _a.isBinary, isBinary = _d === void 0 ? true : _d, _e = _a.assemblyId, assemblyId = _e === void 0 ? '' : _e;
        return __awaiter(this, void 0, void 0, function () {
            var data, trajectory, model, structure, polymer;
            // Create an empty array to store atoms

            return __generator(this, function (_f) {
                switch (_f.label) {
                    case 0: return [4 /*yield*/, this.plugin.clear()];
                    case 1:
                        _f.sent();
                        return [4 /*yield*/, this.plugin.builders.data.download({ url: Asset.Url(url), isBinary: isBinary }, { state: { isGhost: true } })];
                    case 2:
                        data = _f.sent();
                        return [4 /*yield*/, this.plugin.builders.structure.parseTrajectory(data, format)];
                    case 3:
                        trajectory = _f.sent();
                        return [4 /*yield*/, this.plugin.builders.structure.createModel(trajectory)];
                    case 4:
                        model = _f.sent();
                        return [4 /*yield*/, this.plugin.builders.structure.createStructure(model, assemblyId ? { name: 'assembly', params: { id: assemblyId } } : { name: 'model', params: {} })];
                    case 5:
                        structure = _f.sent();
                        return [4 /*yield*/, this.plugin.builders.structure.tryCreateComponentStatic(structure, 'polymer')];
                    case 6:
                        polymer = _f.sent();
                        if (!polymer) return [3 /*break*/, 8];
                        return [4 /*yield*/, this.plugin.builders.structure.representation.addRepresentation(polymer, { type: 'cartoon', color: 'illustrative' })];
                    case 7:
                        _f.sent();
                        _f.label = 8;
                    case 8:
                        Structure.eachAtomicHierarchyElement((_b = this.plugin.managers.structure.hierarchy.selection.structures[0].cell.obj) === null || _b === void 0 ? void 0 : _b.data, {
                            // Instead of logging the atom, push it to the atoms array
                            atom: function (a) { this.atoms.push(a); console.log(a)}.bind(this)
                        });
                        // Add distance measurement
                        console.log(this.atoms)
                        console.log(typeof this.atoms[0])
                        if (this.atoms.length >= 100) {
                            // Convert atoms to loci
    						var lociA = StructureElement.Loci(structure, [this.atoms[3]]);

    						var lociB = StructureElement.Loci(structure, [this.atoms[99]]);
                            console.log(structure)
                            console.log(lociA)
                            console.log(lociB)

                            // Pass loci to addDistance
                            this.plugin.managers.structure.measurement.addDistance(lociA, lociB, {
                                label: 'Distance 1-100',
                                lineParams: {
                                    alpha: 1,
                                    color: 0xff0000,
                                    sizeAttenuation: true
                                },
                                labelParams: {
                                    attachment: 'end',
                                    yOffset: 1
                                }
                            });
                        }
                        return [2 /*return*/];
                }
            });
        });
    };

    return LightingDemo;
}());
window.LightingDemo = new LightingDemo();

The thing is that, when you log any element of the atoms array in the console, all of them show that they are the same element, so afterwards, the lociA and lociB objects are also equal and that is why I think the distance measurement is not being rendered, because the starting and ending point is the same. This is what I think is happening, it might as well be something else.
Anyway, I post this here, because even though I know you are not that familiar with the measurementManager class in molstar, you are familiar with this code and might spot something I don't.
Just for reference, I will leve here the sourcecode of the addDistance function (https://github.com/molstar/molstar/blob/master/src/mol-plugin-state/manager/structure/measurement.ts#L97)
I think this approach might be ok, in this case I am trying to join atoms 3 and 100, but for some reason I don't seem to create the atoms array properly. Do you see any reason for this? Would you try a different approach?
I'm sorry to bother, but I'd love to hear from you :)
Thanks,
Miguel

@M-iguel You don't want to modify the index.js file directly. If you run npm run watch-playground, this automatically updates the index.js file whenever you make changes to src/apps/playground/index.ts.
I also checked it out, and you're right. It seems that converting the atom to a Loci type produces the same Loci (this could be a but or we could be doing it wrong). I think another approach might iterating through the residues instead of the atoms. Here's what I got:
https://github.com/luna215/molstar/assets/7971405/de25faa6-dea4-4592-9dc4-69ab545471f0
Check out the pull request to see the code changes: https://github.com/luna215/molstar/pull/3


Allow caching of comment data

This caches comment data to speed up the GET call when loading comments.
This cache is cleared in any of the following scenarios:

new comments are added
an error occurs when getting or adding comments
the underlying spreadsheet is edited manually or via the comment form directly

This MR also makes it so that the reCAPTCHA portion is turned off via an if check rather than just commented out (since it causes issues for me personally when I am testing)

Forgot to mention, the cache lasts for 1 hour regularly


How to handle Repositories

Okay are we going to have a repository for each part - ui, steuerung, studienrbeit, harware(if that needs one) or will we smoosh everythng thats not Studienarbeit together?

I would say one for each, bit im also ok with smooshing everything together if you would both prefer that?


No module named 'spconv.utils'

tangos@ubuntu:~/second.pytorch/second$ python create_data.py nuscenes_data_prep --data_path=NUSCENES_TRAINVAL_DATASET_ROOT --version="v1.0-trainval" --max_sweeps=10
Traceback (most recent call last):
File "create_data.py", line 8, in
import data.kitti_dataset as kitti_ds
File "/home/tangos/second.pytorch/second/data/init.py", line 1, in
from . import kitti_dataset
File "/home/tangos/second.pytorch/second/data/kitti_dataset.py", line 8, in
from second.core import box_np_ops
File "/home/tangos/second.pytorch/second/core/box_np_ops.py", line 5, in
from spconv.utils import rbbox_iou, rbbox_intersection
ModuleNotFoundError: No module named 'spconv.utils'

My spconv dependency installation was not complete, so i reinstalled and it worked fine.


API Documentation update

@manzarul
These are the APIs provided by you as postman collection .

User management api
Organization-Collection
Metrics APIs
Email Service
Course Batch
Data Sync
bulk operation
Page Api 		Schema Missing (definitions)
Health 			Schema Missing (definitions)
Badges 			Schema missing(definitions)

1-7	: I have documented all the API endpoints .
8-10   : Please send the postman collection with definitions (schemas) ASAP .
Also, please send me postman collection for

Course
Notes
Meta
Telemetry

@lakhanmandloi
I have uploaded these swagger files to yaml folder
can we get them up and live .

@nawabahmadreshi Done.

@lakhanmandloi thank a lot.

This is done and updated .


Add ability to create and add plugin docs into the engines internal help system

The problem is that soon I'm going to release another plugin for Godot and currently the only way how its users are able to learn how to use it is to read an accompanying .pdf file in a separate reader program.
It would be way better if I could generate a doc file and include it into the internal help system of the engine, so the plugin users could have a smoother experience learning to use it.

I'm pretty sure that such thing was already suggested, but I can't find it now >_>

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


Translate warning/don't call proptypes

Here's my translation. :)
Wasn't sure if we translate 'fork'?

Thanks for reviewing!  I think it's ready to be merged to master


Rework tutorial content for group "Get Ready to Develop on SAP Cloud Platform"

Did you want me to merge? Please see my few comments in Slack


Mangling redeclares variable in destructuring when eval() is present

Describe the bug
When eval() is present, the SWC minifier may redeclare a variable that has already been declared, leading to a syntax error when the JavaScript is parsed by the browser.
This only occurs when eval() is present, and it only occurs with { mangle: true }.
Input code
export function func(a, b) {
  const { c: d } = a;
}
eval('');

Config
{
  "jsc": {
    "parser": {
      "syntax": "ecmascript",
      "jsx": false
    },
    "target": "es2015",
    "loose": false,
    "minify": {
      "compress": false,
      "mangle": {
        "toplevel": false,
        "keep_classnames": false,
        "keep_fnames": false,
        "keep_private_props": false,
        "ie8": false,
        "safari10": false
      }
    }
  },
  "module": {
    "type": "es6"
  },
  "minify": false,
  "isModule": true
}

Playground link
https://play.swc.rs/?version=1.3.50&code=H4sIAAAAAAAAA0utKMgvKlFIK81LLsnMzwMzNBJ1FJI0Faq5FBSS8%2FOKSxSqFZKtFFIUahVsFRKtuWq5UssSczTU1TWtAUyFWmI%2BAAAA&config=H4sIAAAAAAAAA32QSw7CMAxE9z1F5TULQAIh7sAZkBWcKiVprDhUVIi7k34C5SM2%2Bcy8iZW5FWUJtSjYl7d0TBfGIBSe96RI10S8JgVIORQVDEdYZLeW3tJohQbpPjoQMVQUh5Ssl6vNlADrvVBOTJozjdHdfKbyjgOJvIM9ik1laYb2ozxbasl%2Bwsk6E%2FFRWRRp0NHXc5nQf10OpsVIaff8CzK0%2B6EKagxmtXxrJ%2FVT5HVoCpw%2FXWYfgtgxja1t4QXlgp5DwMghJ2O4UHF%2FAE8y38fLAQAA
Expected behavior
The variable should not be redeclared, and there should be no syntax error.
Actual behavior
The output is:
export function func(c, n) {
    const { c: n  } = c;
}
eval('');

Note that the variable n is redeclared. If you run this in a browser you will get the error:
SyntaxError: Identifier 'n' has already been declared

Here is a repro you can load in a browser.
You can also verify with ESLint. Here is a repro in the ESLint Playground.
Version
1.3.50
Additional context
Possibly related to #7253.
For comparison, Terser does not have this issue:

Investigation:

If b is used, it works properly

But using d is not enough.

My guess is that this is about the usage list, and seems like the name mangler is trying to reuse n for a variable name because the parameter is not used.

@Austaras Do you have any idea? I tried several things like making belong_to_fn_scope always true and it worked, but there were too many regressions


I get the following error: Call to a member function writeDataUri() on null

This happens in EndroidQrImageGenerator.php:25 because of the following code:
public function generateUri(Secret $secret)
    {
        $qrCode = new QrCode($secret->getUri());
        $qrCode->setSize($this->size);
        return $qrCode->setWriterByName('png')->writeDataUri();
    }

It should be something like:
public function generateUri(Secret $secret)
    {
        $qrCode = new QrCode($secret->getUri());
        $qrCode->setSize($this->size);
        return $qrCode->getWriter('png')->writeDataUri($qrCode);
    }

instead of setWriterByName('png') should be getWriter('png') and writeDataUri needs QrCode as argument

Hi! Thanks for the issue report! It looks like the newest version I developed this against was Endroid ~2 and that they're now on version ~3.
I suspect you installed the version 3 one which made a breaking change to their functions.
Simplest way to have it working would be to install Endroid@~2.
I'd upgrade the version here but that would be a BC that would require a semvar jump as I don't require it, merely suggest it

Thanks for the quick reply!!
I downgraded  Endroid version and it's working fine!!


Use BCryptGenRandom on Windows 7 or higher

When openssl is compiled with MSVC and _WIN32_WINNT>=0x0601 (Windows 7), BCryptGenRandom is used instead of the legacy CryptoAPI.
This change brings the following benefits:

Removes dependency on CryptoAPI (legacy API) respectively advapi32.dll
CryptoAPI Cryptographic Service Providers (rsa full) are not dynamically loaded.
Prefer the Windows API which Microsoft uses and recommends.
Allows Universal Windows Platform (UWP) apps to use openssl (CryptGenRandom is not available for Windows store apps)

+1

I'm unsure about this change. By default at the moment we build a library that is compatible with the lowest common denominator (Windows XP). I think we should change that BTW in the next release, but that's what we've got for 1.1.0. This PR changes things so that by default we build a Windows 7 compatible library only. If you want Windows XP compatibility you would have to explicitly request it (or be building on a <Windows 7 machine)

@mattcaswell that is an excellent point.  I'm conflicted now. :)

@mattcaswell what change specifically? The remove of the define _WIN32_WINNT 0x0400?

Ahhh....I had missed the transitive include of e_os.h. Thanks for explaining.

+1

I did add the define now. Also I gave the define for BCRYPT a more descriptive name, also with the hope it will not conflict with any other defines.

Ok. Still +1

So what a minute…  I thought you were concerned about now using Win7, whereas we previously built for all versions?

That concern was answered. I had missed the fact that the code (ultimately) includes e_os.h which defines _WIN32_WINNT to be 0x0501 (i.e. WinXP). So this new code will never be used by default - the WinXP version will be. If someone specifically wants the Win7 version then they can pass -D_WIN32_WINNT=0x0601 to Configure.

Ah, ok, I didn't get that; thanks.  You going to merge or me?

You merge...busy on another change right now :-)

done, thanks.

Sorry, I thought this API was available since Vista?

@dot-asm, you want to comment/correct me?

Well, anyway I hope somebody might get to define better the information on the wiki, if that's the case.


Manually installed docker-machine

Hi, I manually installed docker machine on my ubuntu 16.04 laptop using  base=https://github.com/docker/machine/releases/download/v0.14.0 &&   curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&   sudo install /tmp/docker-machine /usr/local/bin/docker-machine. How do I remove docker-machine, my laptop does not have virtualization enabled so I can't use docker-machine.

sudo rm -f /usr/local/bin/docker-machine

Thanks heaps :)


Platform publish actions

Need this to go to main and then pull main and make another push to finish the rest of the publishes since it gave error on route53-record due to it not being in NPM


Update concept-continuous-access-evaluation.md

@MarkMorow : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Looks good; merging.


Some annotated service methods are run from blocking task executors.

Related: #2064
For example, when the return type of a service method is AggregatedHttpResponse or response object conversion is involved, the service method is currently executed via the blocking task executor. By contrast, if a service method returns HttpResponse, it will be executed from a event loop thread. This behavioral difference is too subtle and confusing.
We need to:

Make the service methods run from an event loop thread by default, regardless of their return types.
Introduce an annotation that makes the service methods run from a blocking task executor.
Provide some migration plan, like:

Introduce a flag that enables this change, whose default is false (disabled).
When the flag is disabled, issue a warning log message to tell people to migrate.
After a few releases, change the default from false to true.

I will work on it!


Matrix-valued problems should work now

Codecov Report

Merging #56 (fac0b02) into main (9f3b22f) will decrease coverage by 86.94%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #56       +/-   ##
==========================================
- Coverage   86.94%   0.00%   -86.95%
==========================================
  Files          21      20        -1
  Lines         858     852        -6
==========================================
- Hits          746       0      -746
- Misses        112     852      +740

Impacted Files
Coverage Δ

src/caches.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/integrator_utils.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/perform_step.jl
0.00% <0.00%> (-93.66%)
:arrow_down:

src/state_initialization.jl
0.00% <0.00%> (-98.56%)
:arrow_down:

src/smoothing.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/solution_sampling.jl
0.00% <0.00%> (-100.00%)
:arrow_down:

src/diffusions.jl
0.00% <0.00%> (-97.85%)
:arrow_down:

src/solution.jl
0.00% <0.00%> (-92.41%)
:arrow_down:

src/jacobian.jl
0.00% <0.00%> (-90.00%)
:arrow_down:

... and 15 more

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 9f3b22f...fac0b02. Read the comment docs.


MoveButKeepSource is not public

MoveButKeepSource  is documented as public but is in fact marked as internal.
Please update docs or fix api :)

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

ID: 7341380c-0c6c-e1fc-305a-c787ba317ddc
Version Independent ID: 13df2b3e-301b-1d7d-bd74-8a8c35151135
Content: Microsoft 365 Copy and Move API (CreateCopyJobs)
Content Source: docs/apis/spod-copy-move-api.md
Service: sharepoint-online
Product: sharepoint
GitHub Login: @JoanneHendrickson
Microsoft Alias: jhendr

@JoanneHendrickson do you have insight into this? Should this method not be documented or is the API incorrect?

This method when published was approved by the PM.  looping in larger team

@JoanneHendrickson do you have an update on this?

Any update?
This property would be really handy for migrations within a tenant. - why wouldn't it be public to begin with?

@Tanddant @JoanneHendrickson
Hi Guys, a pull request was created and the property changed but @andrewconnell had requested a review and the item closed, I guess MS never came back so we lost the fix?
https://github.com/SharePoint/sp-dev-docs/pull/6337/files

Welp - guess we aren't getting that awesome feature - did you fine a way to achieve what the property seems to do?

@Tanddant yes we wrote our own version of the tooling :)

Using which API?
I tried using the "new" MoveCopyUtil, but that works well mediocre at best.
And I'm looking into a copy of 700k files where I would like to retain version history, so I have to use the move function.

Where you able to retain the Author/editor and versions, and duplicate the file?

In case someone else finds this, here is a probably VERY unsupported way of using it via reflection.
This is probably a VERY BAD IDEA but it works!
Extension.SetPrivatePropertyValue(copyMigrationOptions, "MoveButKeepSource", true);
    public static void SetPrivatePropertyValue<T>(this object obj, string propName, T val) {
        Type t = obj.GetType();
        if (t.GetProperty(propName, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance) == null)
            throw new ArgumentOutOfRangeException("propName", string.Format("Property {0} was not found in Type {1}", propName, obj.GetType().FullName));
        t.InvokeMember(propName, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.SetProperty | BindingFlags.Instance, null, obj, new object[] { val });
    }

src: https://stackoverflow.com/questions/1565734/is-it-possible-to-set-private-property-via-reflection


Library uses deprecated commitment levels

https://docs.solana.com/developing/clients/jsonrpc-api#configuring-state-commitment
https://github.com/solana-labs/solana-web3.js/blob/62513cdee2ca0c4f350e811a982ca13731201a9f/src/connection.ts#L212
New commitment levels are:
finalized, confirmed, and processed.
This seems like a breaking change

I will pick this up soon.

We noticed that in a lot of our trading bots we need to set the commitment level on every rpc call to 'processed'. In JS we have the ability to set this directly on the Connection object, which is the counterpart of Client. This allows us to have the code look pretty normal, and not specify the commitment on every rpc call. Might be worth adding, if you anyways plan to retouch all the confirmation args.


Should I add a version number in SHARP_DIST_BASE_URL ?

https://github.com/lovell/sharp/blob/master/install/libvips.js#L19
Should I add a version number here?
const distBaseUrl = `process.env.npm_config_sharp_dist_base_url/v${minimumLibvipsVersion}/` || `process.env.SHARP_DIST_BASE_URL/v${minimumLibvipsVersion}/` || `https://github.com/lovell/sharp-libvips/releases/download/v${minimumLibvipsVersion}/`;

I can't change variables every time I upgrade，It's very cumbersome
export SHARP_DIST_BASE_URL="https://npm.taobao.org/mirrors/sharp-libvips/v8.7.4/"

Hi, I don't maintain npm.taobao.org so you'll need to speak to someone who does and ask them to remove version numbers if that's causing a problem.

I don't think this has much to do with npm.taobao.org, because that's what the node lib file should look like
But the directory path for the extra version number should not be fixed because it is a variable

because that's what the node lib file should look like

The files hosted at https://npm.taobao.org/mirrors/... appear to be unrelated to npm and are instead mirroring various sites and software, including some originally hosted by GitHub releases (and presumably harder to access inside mainland China) such as the prebuilt binaries for libvips that are used by sharp.
Have you asked the maintainers of that mirror? What did they say?
The prebuilt libvips binaries are provided to help most of the people most of the time. At install time, sharp will always look for and, if found, use a global libvips, which might be a more appropriate solution for your situation.
https://sharp.pixelplumbing.com/en/stable/install/#pre-compiled-libvips-binaries

You can use SHARP_DIST_BASE_URL=https://npm.taobao.org/mirrors/sharp-libvips with out specify a version.


Wish Details - Edit Hometown [Closes #81]

What was the feature/problem?
The issue was there wasn't a way to edit the hometown once it was entered, and it isn't a required field. This would lead to a situation where someone could forget to enter their hometown, and then they wouldn't be able to edit it.
How does this PR address the above feature/problem?
This PR makes the hometown field editable so that you can click on any wish from the wish summary list and then edit the hometown. Whenever the input field blurs, or the go to wish summary link is clicked, a REST put request is sent to update the hometown in MongoDB.
Check lists (check x in [ ] of list items)

[x] Test passed
[x] Coding style (indentation, etc)

Additional Comments (if any)

Codecov Report

Merging #137 into master will increase coverage by 0.56%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #137      +/-   ##
==========================================
+ Coverage   94.67%   95.24%   +0.56%
==========================================
  Files          29       29
  Lines         451      463      +12
  Branches       51       51
==========================================
+ Hits          427      441      +14
+ Misses         21       20       -1
+ Partials        3        2       -1

Flag
Coverage Δ

#api
97.19% <ø> (ø)
:arrow_up:

#ui
94.03% <100%> (+0.99%)
:arrow_up:

Impacted Files
Coverage Δ

ui/src/services/WishDetailsService.js
100% <100%> (ø)
:arrow_up:

ui/src/wishDetails/WishDetails.js
100% <100%> (+9.09%)
: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 5dac5f1...a1db794. Read the comment docs.

Please let me know if I should make any changes to this


1.19

It doesn't seem to be supported in https://github.com/PrismarineJS/node-minecraft-protocol yet so I need to wait for that

Looks like 1.19.0 is now supported, with .1/.2 still todo.

I added it, but it's not tested yet


failed to launch GPU process.

Using ubuntu 16.04 amd 64bit.
Chrome Version 63.0.3239.108 (Official Build) (64-bit)
When i login google account, this problem occur:
[5973:6013:1226/202608.092897:ERROR:browser_gpu_channel_host_factory.cc(107)] Failed to launch GPU process.
I had try several times to confirm, the problem is the same.
Need help!

That error is returned by Google Chrome, and you may ignore it safely. You can reproduce it starting Chrome from bash:
alex:~$ google-chrome-stable
[19866:19905:1226/140823.290855:ERROR:browser_gpu_channel_host_factory.cc(107)] Failed to
launch GPU process.
Created new window in existing browser session.


Not supported for TypeScript (tsx) files?

I've been unable to use this at all for .tsx files, which I've been able to reproduce by creating a simple project and being able to access the PropTypesGenerate Code Action from a .jsx file (or a key shortcut), yet this stopped working after renaming the file to .tsx. I didn't find this documented as an expected behavior anywhere, and I don't know about any other propTypes generator. Could you please notify users under Readme about the current situation?
To make sure this is covered in the context of use-cases, as far as I understand (based on articles like https://stackoverflow.com/questions/56056489/is-proptypes-become-obsolete-in-typescript-react), PropTypes are still relevant for TS code as a runtime check compared to a compile-time check. More specifically, in my .tsx files I'm still getting an eslint warning of react/prop-types when using eslint recommended settings if the function type is React.FC. However, it's interesting that this warning seems to disappear when I also strongly type the props like ({propName}: {propName: propType}) (which should be redundant when also using FC<{propName: propType}>, but this seems to remove the warning). However, I've also found that the FunctionComponent may be an anti-pattern altogether based on reasoning under https://stackoverflow.com/a/61547010, but I can't find any official guideline.
(By the way, is there any way to use command line to run the generation for all components under all files automatically? The description is too generic and doesn't contain examples.)

@scscgit Now，the extension does not support TypeScript，because I think typescript doesn't need proptypes in most cases. But you can use command line to generate PropTypes for one TypeScript File，I didn't adapt typescript completely，It's useful in most cases.
Install command line tool bynpm install react-proptypes-generate -g

Well as I said, you could at least mention this lack of support in some visible places including Readme, because people are pretty much supposed to use TypeScript nowadays. I had to spend several days researching and debugging this tool before even coming to this conclusion, and there is literally no other alternative (when using tools like Visual Studio Code) for people who use eslint with FC in larger projects (that mix types even with libraries) where maintaining PropTypes by hand isn't feasible. But thanks to finding out that FC is an anti-pattern (as it doesn't support generics), I've come to the conclusion that I won't need to use this project after all, so it's probably enough to just document this reasoning and deprecating it for TS approach. (I still can't figure out how any new developer is supposed to realize the most current React best practices though, because every authority seems to be pushing a different approach; for example, reactjs.org tutorial doesn't even acknowledge the existence of functional components...)
So about the command line tool, there is no way to let it cover multiple files (the entire project) in any automated fashion, other than manually iterating over and copying all of the file names? That means Windows/Linux (cmd/shell) users will need to write their own scripts using find . or for without any help. By the way, I personally found the cli help description very ambiguous and lacking examples of use-cases, and I prefer npx over global npm install (where the version doesn't update to latest automatically) when composing scripts to be a part of any workflow (e.g. as npm run scripts); but that's just my opinion. Thanks for your time.

@scscgit  You're right，I will support Typescript in vscode.  As for the command line，command line tools are not perfect because there are so few people using them, almost only myself.  Automatic recursion of all files and automatic identification of component names are possible. But the side effect is that it may take a long time because there is a lot of AST parsing. I don't have much free time now，I will implement these functions as soon as possible.

@scscgit  In v1.6.0 ， Fixed it


Can't Press CTRL+Shift+R

Steps to reproduce
Tell us about your environment:

Puppeteer version: 3.0.0
Platform / OS version: Windows 10
URLs (if applicable):
Node.js version: 12.03

What steps will reproduce the problem?
Please include code that reproduces the issue.
await page.keyboard.down('Shift');
            await page.keyboard.down('Control');
            await page.keyboard.press('R');
            await page.keyboard.up('Shift');
            await page.keyboard.up('Control');

What is the expected result?
I was trying to Force - Refresh a page in order to get all the requests and the cached elemnts to refresh , but it did not work
What happens instead?
Nothing happens when I try this code
And I would like to know if there is any other way to make a force refresh of a page

You're submitting the wrong hotkey combination - I suppose you're trying this on a MacOS environment, and for that you need command + shift + R (not control).
Furthermore, you can force a page retrieval from the server by combining the evaluation method and the location object:
await page.evaluate(() => {
   location.reload(true)
})

See location documentation

You're submitting the wrong hotkey combination - I suppose you're trying this on a MacOS environment, and for that you need command + shift + R (not control).
Furthermore, you can force a page retrieval from the server by combining the evaluation method and the location object:
await page.evaluate(() => {
   location.reload(true)
})

See location documentation

I'm sorry,  but I meant CTRL + F5 / CTRL + SHIFT + R which doesn't work for me (the page is not  being refreshed at all)
I do use windows ,
Also the location.reload(true) doesn't seem to do the work here :(


css doesn't seem to be bundled in the dist

Hi! First off, thanks for creating this library. I always love seeing a library with excellent TypeScript support, and I'm looking forward to using this.
Anyhow, I'm setting it up, and it doesn't seem like the .css file you reference in the README is anywhere to be found in the dist. Maybe there's a bundler issue with the .scss you're using? Or maybe it's not not required anywhere and doesn't get bundled.
I'll just use the .scss from the repo directly for now :)
btw, another 2 other minor issue I noticed but don't seem worth filing their own issue for:

when I type in a comenent (e.g., Card), VS Code doesn't autocomplete the import for me, it thinks its exported somewhere within the dist instead of from the top level module. I've noticed this rarely with some other libraries, so it's probably due to the way the types are exported
I can't just directly use KanbanBoard, I need to specify KanbanBoard<Card> explicitly in state/variable definitions.

 Let me know if you'd like me to file separate issues for them.

@NathanC  Thanks for checking it out!
This line is supposed to add that file to the dist. I will take a look and see what's up.
Re the Card, you should definitely be able to import them directly without accessing dist. How are you consuming this? Next, CRA, Vite, etc?

@christopher-caldwell Unfortunately I've never used yarn, so can't help out here.

How are you consuming this?

CRA. I can import it correctly and it works fine, I'm just referring to a minor issue which is that VS Code doesn't seem to autocomplete the import. Meaning if I start typing <Card and haven't imported it yet, vs code gives me the option to import from the dist (and then doesn't even add the import when I select that option), as opposed to importing from the top level module for the library.
No idea why, and it's minor, just wanted to mention it :)

In npm, this translates to npx sass. It's just asking yarn to find the binary for the library and use it. That's not a major concern.
Tomorrow, I'll make a fresh CRA and see if I can reproduce it and troubleshoot.
Ahh, I see about Card. Thanks for bringing it up, I can put a blurb in the README about it.


issue with dynamic building on release 2.0

Error:
nginx: [emerg] dlopen() "/usr/local/Cellar/nginx/1.17.8/modules/ngx_http_accounting_module.so" failed (dlopen(/usr/local/Cellar/nginx/1.17.8/modules/ngx_http_accounting_module.so, 10): no suitable image found.  Did find:
	/usr/local/Cellar/nginx/1.17.8/modules/ngx_http_accounting_module.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x02 0x01 0x01 0x00
	/usr/local/Cellar/nginx/1.17.8/modules/ngx_http_accounting_module.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x02 0x01 0x01 0x00) in /usr/local/etc/nginx/nginx.conf:1

actually, I'm getting this issue on every release.

It seems you're running nginx on macOS, you have to build it on macOS (the binary in downloads page was build on Linux)


Fix truncate and make env flags more flexible

@matrinox Hi, can you take the ownership of this package. Been a long time since I have worked on Ruby. Let me know the steps I need to do to transfer ownership.

@SudhagarS Sure, I wouldn't mind taking ownership. Just go to repo settings and scroll all the way to the bottom, you should see a transfer button. https://help.github.com/articles/transferring-a-repository-owned-by-your-personal-account/


Hide default margin

How to hide default margin (line number) ?

Scintilla has 5 margins. When a new control is created, most of those margins have a starting Width of 0, but some do not. To hide all the margins, give them all a Width of 0:
foreach (var margin in scintilla.Margins)
    margin.Width = 0;

Hi Jacobslusser,
Thank you very much.


[Question] modifying feed image urls

Hello, I'd like to modify the image urls in the feeds themselves, I just want to run them through a compression service, what I want to do just requires adding a string before and after the image url which hopefully isn't too hard to do. But I don't know where I should look in the code to try and get this changed so I'd be thankful for some guidance.

If you are using always the image proxy you could simply change imageURL in ui/proxy.go:41. Otherwise template/functions.go:67 aswell.
This does not modify the entries stored in the database but only their representation on the website. Is this what you want?

As I never programmed in go, I went with the first option as it seemed simpler, it's hard to know if the proxy is beign applied due tot he link obfuscation miniflux does, however, I think it's working due to the quality loss. Now I need to test if programs that use miniflux as a backend use the proxy or directly go with the database information.

By default the image proxy is only being applied to http images (without SSL), that's the "obfuscation" you see (it's just the base64 of the image url). If you want to always use the image proxy, run with the PROXY_IMAGES=all environment variable. See https://miniflux.app/docs/configuration.html

Thank you, although it seems that programs that use miniflux as backend work directly with  the database, which shouldn't be surprising I guess, but I now I need to find if there's some way to modify the database, I'm guessing this would have to be done at the steps where  feeds are parsed and might not be straightforward.


Added missing 'PendingIntent.FLAG_MUTABLE' and fixed gradle

Added missing 'PendingIntent.FLAG_MUTABLE' to Notification and Builder Java files for Android
Fixed gradle build file to use 'implementation' and updated 'appShortcutBadgerVersion'

@timkellypa When will you merge this?

Hello, I added these changes in an internal version that I use here and although the error no longer occurs I was only able to receive the scheduled notification after adding the permission in the App manifest.
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />

yes, I think that is required now. I've always had it in my Cordova config, so I might not have noticed any changes. I'm not sure how to add it to the plugin automatically though? Any suggestions?

@fquirin
Thank you, for adding the fixes here!
I saw some repository-replacements from the original"katzer"-repository to your repository or to the "bhandaribhumin"-repository in the files "CHANGELOG.md", "package.json" and "plugin.xml". Are they necessary?

@fquirin
It would be great, if you could create a merge-branch, which would contain the changes :)

I just realized that the latest changes accidentally ended up in this old PR when I updated my repository 🙈
The original plan was to create a new branch to clean up the README, package.json, etc.., revert the comments and changes that where only meant for the fork and then push everything to the original 'katzer' repository.
Here is a bit more info about the changes: https://github.com/katzer/cordova-plugin-local-notifications/issues/1990
Maybe I'll find some time to do this in the next days, but it is not really at the top of my to-do list ^^.

I decided to quickly put something together ^^:
https://github.com/katzer/cordova-plugin-local-notifications/pull/2000
I'm going to close this one in favor of a new PR.

Cool, thank you for your work! :)


Missing Dark Mode Icon

Functional everything with this add-on is great, but it is missing one small HMI feature. The icon color on a dark background is still black and very hard to see. (see image below) Please add an white icon for dark mode. Thanks.

I am not a graphics designer, so i hope this is good enough:

If not, i am open for suggestions / pull requests.

@SandmanPSU
I think this

was the original. Or at least it is close enough.
I just made the slight modifications  of adding the tags < and >  around the link icon.

Ok, I am not an expert here, but I believe you can use a combination of two online tools to make the icon compatible for both light and dark themes:

Convert the PNG to SVG: https://convertio.co/png-svg/
Upgrade the Icon to support Dark Theme by inverting the colors: https://realfavicongenerator.net/svg-favicon/

@SandmanPSU  The generated SVG  seems to be context aware ...
I did not know that was possible to use in this situation.
Pretty neat. I'll update the addon with the new icon.

I got the update, and it looks great. Thanks for the quick turnaround on this.

It is missing the "<" ">" that you added to it, but now that you know about the SVG stuff, you should be able to add that back in if you want.


Abstract Model for common fields

Problem
I think common fields can be excluded from models and be in one single abstract model, also I find it can be a little bit redundant to have to write them over and over again.
Suggested solution
Have an abstract modifier before the model to exclude it in the database and all the models that extends it can have all the predefined fields.
Alternatives
Abstract modifler
abstract model BaseFields {
  id        String   @id @default(uuid()) @db.VarChar(36)
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt
}

Implementation
model User extends BaseFields {
  username  String   @unique @db.VarChar(20)
  password  String   @unique
  Post      Post[]

  @@map("users")
}

model Post extends BaseFields {
  title     String
  published Boolean @default(false)
  author    User    @relation(fields: [authorId], references: [id])
  authorId  String

  @@map("posts")
}

Result
model User extends BaseFields{
  id        String   @id @default(uuid()) @db.VarChar(36) // auto generated filed or ingected?
  createdAt DateTime @default(now()) // auto generated filed or ingected?
  updatedAt DateTime @updatedAt // auto generated filed or ingected?
  username  String   @unique @db.VarChar(20)
  password  String   @unique
  Post      Post[]

  @@map("users")
}

model Post extends BaseFields {
  id        String   @id @default(uuid()) @db.VarChar(36) // auto generated filed or ingected?
  createdAt DateTime @default(now()) // auto generated filed or ingected?
  updatedAt DateTime @updatedAt // auto generated filed or ingected?
  title     String
  published Boolean  @default(false)
  author    User     @relation(fields: [authorId], references: [id])
  authorId  String

  @@map("posts")
}

Additional context
I'm open to all comments, so please leave something useful.
This is my first post here, please be kind.
If this issue is duplicated, mention it.

I was just going to create an issue for this. I think It is a great feature and would help a lot to reduce the boilerplate.

+1 Would love to see this feature implemented!

:wave: Hey everyone!
I have an utility CLI that's just released and has this feature baked in, so you can use it as an addon to Prisma. I'm going to leave a link if you want to give it a shot:
NPM: https://www.npmjs.com/package/prisma-util

+1 I would like to see this implemented. It's easy enough to copy and paste, but it gets redundant and always better to be DRY.

+1
Fun fact: I asked ChatGPT on how to reduce redundancy in my Prisma schema and it told me this code. Bummer. Googled as it did not work and reached here.

+1 hopefully coming soon

+1 greet idea

Please stop posting +1 comments.
If you want to express your support, leave a +1 reaction to the original issue text.
If you have a specific use case, feel free to describe it in a comment.
Thanks.

The Prisma extension library ZenStack that we are currently working on has just supported model inheritance in our latest release.   The interesting part is that the way we choose is exactly the same as @TakenHiduk's solution to this issue. 😄
For example, you can have schema files like the below(Sorry that the highlight is not working in the markdown, but works well with our Zmodel VScode extension):

base.zmodel

abstract model Base {
    id String @id
    createdAt DateTime @default(now())
    updatedAt DateTime @updatedAt
    // author has full access
    @@allow('all', auth() == author)
}

main.zmodel

import "base"
model User extends Basic {
    name String
}

model User extends Basic {
    name String
}

The generated prisma.schema would be like this:
/// @@allow('create,read', true)
/// @@allow('update,delete', auth() == this)
model User {
    name String
    id String @id()
    createdAt DateTime @default(now())
    updatedAt DateTime @updatedAt()
}

/// @@allow('create,read', true)
/// @@allow('update,delete', auth() == this)
model Post {
    title String
    id String @id()
    createdAt DateTime @default(now())
    updatedAt DateTime @updatedAt()
}

The Prisma extension library ZenStack that we are currently working on has just supported model inheritance in our latest release. The interesting part is that the way we choose is exactly the same as @TakenHiduk's solution to this issue. 😄 For example, you can have schema files like the below(Sorry that the highlight is not working in the markdown, but works well with our Zmodel VScode extension):

base.zmodel

abstract model Base {
    id String @id
    createdAt DateTime @default(now())
    updatedAt DateTime @updatedAt
    // author has full access
    @@allow('all', auth() == author)
}

main.zmodel

import "base"
model User extends Basic {
    name String
}

model User extends Basic {
    name String
}

The generated prisma.schema would be like this:
/// @@allow('create,read', true)
/// @@allow('update,delete', auth() == this)
model User {
    name String
    id String @id()
    createdAt DateTime @default(now())
    updatedAt DateTime @updatedAt()
}

/// @@allow('create,read', true)
/// @@allow('update,delete', auth() == this)
model Post {
    title String
    id String @id()
    createdAt DateTime @default(now())
    updatedAt DateTime @updatedAt()
}

Does abstract support relation field? I'm getting meaningless errors.

@modbender  Thanks for trying out ZenStack. Yes, you can refer to the repo below:
https://github.com/zenstackhq/saas-backend-template
Btw, I feel this is supposed to be discussed in the ZenStack repo to avoid interrupting others. Would you mind creating an issue there if it still doesn't work so that we could further investigate it?

I’m happy to say that ZenStack, built on top of Prisma, has supported this in the latest v2.8.0 version.  You can define it in the schema like:
type Address {
  state String
  city  String
  zip   String
}

type Profile {
  name    String
  age     Int
  address Address?
}

model User {
  id      Int     @default(autoincrement()) @id
  profile Profile @json
}

Here is the official doc and a blog post.
We would love to hear your feedback on it!


Switch to an arena allocator

Arrow's string arrays use arrow's variable-sized binary layout, which stores the string data in a single contiguous buffer per array along with a strided array of integer offsets. This is a really nice design because you only need one heap allocation per array and the string data are contiguous in memory so it's much easier to write fast ufuncs and exploit SIMD. The down side is that string arrays need to either be immutable or there can be pathological cases where enlarging a single array element leads to reallocating the storage for an entire array. I don't think it would be a big downside for many real-world use cases for string arrays to force people to copy into a new array if they need to mutate elements, but it would be a wart in NumPy's API where one data type has restrictions that others don't.
Numpy doesn't have a concept of per-array heap storage outside the array buffer, however even if we added facilities for that, the dtype API doesn't allow access to the array object, so we would also need to add a pointer to the per-array storage to the ufunc loops in the dtype API as well. I think a more straightforward approach would be to let the per-array storage buffer live on the descriptor instance and ensure that each array has a unique descriptor object.
A first step towards figuring out how hard it would be to have unique descriptors per array would be to add a flag to the dtype that indicates the dtype is associated with an array. When we set this flag at array creation time, if the flag is already set, we raise an error. I think running the strigdtype tests with this flag turned on would probably catch most of the places in numpy or the dtype implementation that would need to be updated. Once we're confident a per-array descriptor is possible, we get per-array buffer storage for free, and I think it would be relatively straightfoward to switch to an arrow-like in-memory representation.

I don't expect it's super complicated.  All array creation goes through a single function, we only need a hook that gets called whenever an array is not a view into existing data ("owns the data"), in some weird calls that might not work, but that would be some wonky extension code and small API additions can fix that when it comes up.
(to some degree we already do things like that chaging "S0" to "S1" ugg and moving subarray dimensions into the array.)

Right, we also have the casting buffers in ufunc code which do get cleared many times (although we currently know that if we clear we clear all memory associated with a dtype!).
So we know where we can put the buffer.  I wonder if we could actually realloc or use a chunked scheme to grow the owning buffer during the operation  (when there is no way to figure out the length ahead of time).  But even that may be hard in practice since a scheme of "allocate empty array and fill it" becomes tricky and.
We can in NumPy currently guarantee that a call on a fresh array can be done in a single strided manner, so if we have a finalize() hook that we call in places where it is needed it could actually decide to do a multi-pass call by itself.
You could even do this as a user method like arr.dtype.freeze(), although the dtype needs to know the owning array for that (not a problem) and then it would be very weird if you call it from a view.

I do wonder a bit how much can we achieve without this?  Some operations in arrow may work directly on the contiguous buffer and the offsets are only really an index when you need that index...
But besides that, another thing it gives you is cache locality, and I wonder if we can achieve that by using an arena/heap allocation scheme?
Currently, the code uses malloc which really tends to not be great at many small allocations, although I am not sure if it gives terrible cache locality, I would be surprised if it isn't a real performance hit.  (A quick try would be to use PyMem_MALLOC/PyMem_FREE but require the GIL, or LD_PRELOAD=/path/to/libmimalloc.so if you have that.)
Maybe @mattip knows if that is nonsense or not (or knows who to ask).  mimalloc can only allocate in the creating thread for a heap, but I suspect jemalloc can do this.
Asking because someone (maybe graalpython) in the HPy discussion had a memory ownership tied where container elements are tied to the container/owner, which sounds like that.
(A question here may be, if a per array/dtype arena is even useful compared to just a global arena for all string arrays, because fragmentation may be small enough that it doesn't matter too much in pratice.)
It sounds like these allocators try to achieve some memory locality, although if what we want is to operate on the contiguous buffer directly we have lost out: We still need a way to create that "frozenstring" representation.

I think I'm going to stop actively implementing this for now until we have a bigger community discussion around the NEP about what we want. I'll have a subsection in the NEP I'm writing describing this situation and offering the possible paths forward, hopefully we'll get some feedback from other devs about what the best course of action is.

I wonder if we could actually realloc or use a chunked scheme to grow the owning buffer during the operation (when there is no way to figure out the length ahead of time). But even that may be hard in practice since a scheme of "allocate empty array and fill it" becomes tricky and.

I don't think it would be too tricky, since we'd always be going through the descriptor.
If it ends up being hard to have a one-to-one mapping from descriptor instances to string storage buffers we could also add a mapping from the descriptor to memory regions owned by that descriptor, but there would still be a unique mapping from descriptors to memory regions outside the array buffer.
Agreed a finalize hook could do this too. We could also have an initialize hook that lets users bypass the loop inside numpy that calls setitem for each array item and instead lets dtype authors implement initialization however they'd wish using a ufunc-like loop over the array buffer. I think having finalize and initialize hooks might be useful for other dtypes, it's a natural place to put callbacks. Not that I'm excited to implement the hooks immediately...

It sounds like these allocators try to achieve some memory locality, although if what we want is to operate on the contiguous buffer directly we have lost out: We still need a way to create that "frozenstring" representation.

We want the string data for neighboring array elements to be likely (if not guaranteed) to be located contiguously in memory. Both so that ufunc and casting loops don't page fault on every string access and to eventually enable string SIMD operations.

This is done now using an exponentially expanding buffer for all operations, both for simplicity's sake and because numpy doesn't give us the information we need. (https://github.com/numpy/numpy-user-dtypes/issues/76#issuecomment-1650367922 indicates we do but I was wrong, numpy only does stuff before __getitem__ is called while doing dtype detection, but stringdtype doesn't participate in dtype detection)
The main uncompleted thing is to resize the arena buffers after the array is filled. This will either require a new dtype API hook in numpy or for numpy to participate in cyclic garbage collection. For the latter option, the dtype could compactify the arena whenever a GC pass touches the dtype instance.


Is it possible to record the video merging with the audio flowing by usbaudio (rom1v/usbaudio)  in Linux

Would be nice to have an extra option to also record the audio, something like --audioin / -ai , so the video captured could be nicely be recorded with the sound too.
Thank you

USBaudio is a hacky temporary solution. It was first implemented in a separate branch of scrcpy (#14), but it was not viable.
Instead, I think we should implement proper audio forwarding from Android Q: https://developer.android.com/preview/features/playback-capture
That way, we will receive audio packets, and we could encode/mux them along with the video stream.

+1
Em dom, 4 de ago de 2019 13:28, Romain Vimont<EMAIL_ADDRESS>escreveu:

USBaudio is a hacky temporary solution. It was first implemented in a
separate branch of scrcpy (#14
https://github.com/Genymobile/scrcpy/issues/14), but it was not viable.
Instead, I think we should implement proper audio forwarding from Android
Q: https://developer.android.com/preview/features/playback-capture
That way, we will receive audio packets, and we could encode/mux them
along with the video stream.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Genymobile/scrcpy/issues/690?email_source=notifications&email_token=AAY2Q4PEHQHDDTUHVPTYWZLQC37RNA5CNFSM4IJFVWP2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3QFCCI#issuecomment-518017289,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAY2Q4IDOQMYH4XNON6EDFTQC37RNANCNFSM4IJFVWPQ
.


[stable/redis-ha] add custom init containers for redis server

What this PR does / why we need it:
This PR adds support of extra initContainers for the Redis server.
Special notes for your reviewer:
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @dandydeveloper

/ok-to-test

@cryptobioz Can you give me a little context behind this change? I am not against it, but I really want to avoid making the chart anymore complicated then it really needs to be.
I do wonder, is this a common chart practice? It seems sensible, I am just worried about the cascading effects this may have down the line.
@ssalaues What do you think?

@DandyDeveloper In our use case, we must start Redis from a dump so we download it with an initContainer and then, configure the instance to use it.
I don't know if it's a common practice, the Prometheus Helm chart allows that for example and it can be very useful. What cascading effects do you have in mind that could be a problem?

@cryptobioz Can you bump the chart version? Seems reasonable.
My concern is more the effect of adding too many "niche" requirements and bloating the chart to the point where individuals wanting to use it find it too complicated to use.
I think this is fine though.