TIMEOUT json_run_localhost:cpp_protobuf_async_streaming_from_client_qps_unconstrained_secure GRPC_POLL_STRATEGY=epollex

2018-01-24 17:52:47,972 D0124 17:50:39.153540589   18156 ev_posix.cc:128]            Using polling engine: epollex
D0124 17:50:39.153633181   18156 dns_resolver.cc:294]        Using native dns resolver
D0124 17:50:39.155468907   18156 ev_posix.cc:128]            Using polling engine: epollex
D0124 17:50:39.155490824   18156 dns_resolver.cc:294]        Using native dns resolver
D0124 17:50:39.158323525   18161 ev_posix.cc:128]            Using polling engine: epollex
D0124 17:50:39.158432715   18161 dns_resolver.cc:294]        Using native dns resolver
I0124 17:50:39.158545089   18161 server_builder.cc:269]      Synchronous server. Num CQs: 1, Min pollers: 1, Max Pollers: 2, CQ timeout (msec): 10000
RUNNING SCENARIO: cpp_protobuf_async_streaming_from_client_qps_unconstrained_secure
I0124 17:50:39.159576663   18166 driver.cc:271]              Starting server on localhost:7948 (worker #0)
D0124 17:50:39.159798022   18166 ev_posix.cc:128]            Using polling engine: epollex
D0124 17:50:39.159830706   18166 dns_resolver.cc:294]        Using native dns resolver
D0124 17:50:39.160258539   18165 ev_posix.cc:128]            Using polling engine: epollex
D0124 17:50:39.160334159   18165 dns_resolver.cc:294]        Using native dns resolver
I0124 17:50:39.160402846   18165 server_builder.cc:269]      Synchronous server. Num CQs: 1, Min pollers: 1, Max Pollers: 2, CQ timeout (msec): 10000
I0124 17:50:39.160645549   18166 subchannel.cc:603]          New connected subchannel at 0xe2ec00 for subchannel 0x7f76600023a0
I0124 17:50:39.161323467   18169 qps_worker.cc:231]          RunServerBody: about to create server
I0124 17:50:39.161915934   18169 qps_worker.cc:69]           Starting server of type ASYNC_SERVER
I0124 17:50:39.163674923   18169 server_async.cc:94]         Sizing async server to 32 threads
I0124 17:50:40.075116579   18169 qps_worker.cc:239]          RunServerBody: server created
I0124 17:50:40.075270759   18169 qps_worker.cc:246]          RunServerBody: creation status reported
I0124 17:50:40.075426046   18166 driver.cc:327]              Starting client on localhost:25707 (worker #1)
D0124 17:50:40.075513709   18166 driver.cc:349]              Client 0 gets 64 channels
I0124 17:50:40.076023083   18166 subchannel.cc:603]          New connected subchannel at 0xe44c80 for subchannel 0x7f7660003af0
I0124 17:50:40.076412507   18174 qps_worker.cc:188]          RunClientBody: about to create client
I0124 17:50:40.076790767   18174 qps_worker.cc:50]           Starting client of type ASYNC_CLIENT STREAMING_FROM_CLIENT 0
I0124 17:50:40.077087594   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077141390   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077189255   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077229560   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077289030   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077326307   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077359457   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077398290   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077433737   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077476217   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077531979   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077574035   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077607885   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077645760   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077685445   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077724420   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077764300   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077806945   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077859155   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077897257   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077934684   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.077973275   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078006197   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078044167   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078083165   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078122279   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078160357   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078215065   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078256875   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078294187   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078330234   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078362959   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078404554   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078489477   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078531551   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078571773   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078611568   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078650975   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078689693   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078727155   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078763380   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078800193   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078835993   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078868941   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078906648   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078944653   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.078993548   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079038046   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079075438   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079111258   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079146721   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079190628   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079226055   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079272238   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079324198   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079380996   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079424671   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079463675   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079501098   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079537715   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079574223   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079610218   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079644443   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.079718895   18174 client.h:427]               Connecting to localhost:13934
I0124 17:50:40.177650460   19038 subchannel.cc:603]          New connected subchannel at 0x7f5010003480 for subchannel 0x7f5000003f50
I0124 17:50:40.188593687   19086 subchannel.cc:603]          New connected subchannel at 0x7f4f44003480 for subchannel 0x7f4f3c003f20
I0124 17:50:40.189052820   19045 subchannel.cc:603]          New connected subchannel at 0x7f4ff4003480 for subchannel 0x7f4fe4003ee0
I0124 17:50:40.189890228   19064 subchannel.cc:603]          New connected subchannel at 0x7f4fb4003480 for subchannel 0x7f4fac00a1c0
I0124 17:50:40.190289623   19047 subchannel.cc:603]          New connected subchannel at 0x7f4fec006030 for subchannel 0x7f4ffc009d70
I0124 17:50:40.190525456   19092 subchannel.cc:603]          New connected subchannel at 0x7f4f18003480 for subchannel 0x7f4f30009cf0
I0124 17:50:40.191461986   19075 subchannel.cc:603]          New connected subchannel at 0x7f4f84003480 for subchannel 0x7f4ffc021b60
I0124 17:50:40.191480519   19089 subchannel.cc:603]          New connected subchannel at 0x7f4f280035c0 for subchannel 0x7f500000fb40
I0124 17:50:40.191883553   19073 subchannel.cc:603]          New connected subchannel at 0x7f4f800035c0 for subchannel 0x7f5020029a00
I0124 17:50:40.192703387   19071 subchannel.cc:603]          New connected subchannel at 0x7f4f900035c0 for subchannel 0x7f507003a6e0
I0124 17:50:40.192709697   19085 subchannel.cc:603]          New connected subchannel at 0x7f4f400035c0 for subchannel 0x7f4f9c00adc0
I0124 17:50:40.193065590   19051 subchannel.cc:603]          New connected subchannel at 0x7f4fdc003480 for subchannel 0x7f4fe4009c10
I0124 17:50:40.194240375   19068 subchannel.cc:603]          New connected subchannel at 0x7f4fb00035c0 for subchannel 0x7f4fe4017250
I0124 17:50:40.194867328   19030 subchannel.cc:603]          New connected subchannel at 0x7f5034003480 for subchannel 0x7f502c003f20
I0124 17:50:40.195165655   19098 subchannel.cc:603]          New connected subchannel at 0x7f4f140035c0 for subchannel 0x7f5050021520
I0124 17:50:40.195678288   19023 subchannel.cc:603]          New connected subchannel at 0x7f504c003480 for subchannel 0x7f5050003f20
I0124 17:50:40.196688956   19020 subchannel.cc:603]          New connected subchannel at 0x7f5060003480 for subchannel 0x7f507000adc0
I0124 17:50:40.197029968   19080 subchannel.cc:603]          New connected subchannel at 0x7f4f600035c0 for subchannel 0x7f4fe401db00
I0124 17:50:40.198548261   19036 subchannel.cc:603]          New connected subchannel at 0x7f501c0035c0 for subchannel 0x7f502c00fb00
I0124 17:50:40.198998504   19096 subchannel.cc:603]          New connected subchannel at 0x7f4f100035c0 for subchannel 0x7f4fc4019880
I0124 17:50:40.200093458   19081 subchannel.cc:603]          New connected subchannel at 0x7f4f500035c0 for subchannel 0x7f505001aed0
I0124 17:50:40.201354110   19061 subchannel.cc:603]          New connected subchannel at 0x7f4fbc0035c0 for subchannel 0x7f502001bf50
I0124 17:50:40.201543933   19048 subchannel.cc:603]          New connected subchannel at 0x7f4fe80035c0 for subchannel 0x7f4ffc01b9c0
I0124 17:50:40.208775775   19019 subchannel.cc:603]          New connected subchannel at 0x7f506c003480 for subchannel 0x7f5070005420
I0124 17:50:40.208803491   19066 subchannel.cc:603]          New connected subchannel at 0x7f4fa8003480 for subchannel 0x7f4f9c003ee0
I0124 17:50:40.209645294   19090 subchannel.cc:603]          New connected subchannel at 0x7f4f2c0035c0 for subchannel 0x7f502002acd0
I0124 17:50:40.210289577   19040 subchannel.cc:603]          New connected subchannel at 0x7f5008003480 for subchannel 0x7f50000098b0
I0124 17:50:40.210810266   19029 subchannel.cc:603]          New connected subchannel at 0x7f50400035c0 for subchannel 0x7f5070022d80
I0124 17:50:40.211214202   19095 subchannel.cc:603]          New connected subchannel at 0x7f4f1c0035c0 for subchannel 0x7f4f9c0169e0
I0124 17:50:40.212130693   19044 subchannel.cc:603]          New connected subchannel at 0x7f4ff80035c0 for subchannel 0x7f5050014960
I0124 17:50:40.212735905   19052 subchannel.cc:603]          New connected subchannel at 0x7f4fd8003480 for subchannel 0x7f502c01bf20
I0124 17:50:40.214006136   19069 subchannel.cc:603]          New connected subchannel at 0x7f4f94003480 for subchannel 0x7f50200230e0
I0124 17:50:40.214373486   19033 subchannel.cc:603]          New connected subchannel at 0x7f5030003480 for subchannel 0x7f5020003f50
I0124 17:50:40.214733249   19057 subchannel.cc:603]          New connected subchannel at 0x7f4f64003480 for subchannel 0x7f4f9c009d30
I0124 17:50:40.215115253   19025 subchannel.cc:603]          New connected subchannel at 0x7f5044003480 for subchannel 0x7f5050009900
I0124 17:50:40.215604430   19100 subchannel.cc:603]          New connected subchannel at 0x7f4f08003480 for subchannel 0x7f4f6c017640
I0124 17:50:40.216515255   19034 subchannel.cc:603]          New connected subchannel at 0x7f5024003480 for subchannel 0x7f50200094a0
I0124 17:50:40.223530613   19065 subchannel.cc:603]          New connected subchannel at 0x7f4fa40035c0 for subchannel 0x7f4fe40110d0
I0124 17:50:40.224174912   19021 subchannel.cc:603]          New connected subchannel at 0x7f50580035c0 for subchannel 0x7f5070010320
I0124 17:50:40.224723442   19022 subchannel.cc:603]          New connected subchannel at 0x7f5054003480 for subchannel 0x7f5070016dd0
I0124 17:50:40.225349799   19026 subchannel.cc:603]          New connected subchannel at 0x7f50480035c0 for subchannel 0x7f507001d7c0
I0124 17:50:40.226516671   19049 subchannel.cc:603]          New connected subchannel at 0x7f4fd40035c0 for subchannel 0x7f502c015230
I0124 17:50:40.226559644   19054 subchannel.cc:603]          New connected subchannel at 0x7f4fcc0035c0 for subchannel 0x7f5020015990
I0124 17:50:40.227788675   19083 subchannel.cc:603]          New connected subchannel at 0x7f4f48003480 for subchannel 0x7f4f6c0094d0
I0124 17:50:40.227788310   19106 subchannel.cc:603]          New connected subchannel at 0x7f4ef80035c0 for subchannel 0x7f4f9c01c6f0
I0124 17:50:40.232708394   19032 subchannel.cc:603]          New connected subchannel at 0x7f5038003480 for subchannel 0x7f502c009ca0
I0124 17:50:40.233903854   19062 subchannel.cc:603]          New connected subchannel at 0x7f4fc0003480 for subchannel 0x7f4fac003f20
I0124 17:50:40.235123723   19072 subchannel.cc:603]          New connected subchannel at 0x7f4f88003480 for subchannel 0x7f4f8c003f20
I0124 17:50:40.236297340   19078 subchannel.cc:603]          New connected subchannel at 0x7f4f70003480 for subchannel 0x7f4f740151c0
I0124 17:50:40.237527279   19035 subchannel.cc:603]          New connected subchannel at 0x7f50180035c0 for subchannel 0x7f502000edc0
I0124 17:50:40.238878981   19087 subchannel.cc:603]          New connected subchannel at 0x7f4f38003480 for subchannel 0x7f4f30003f20
I0124 17:50:40.238948606   19105 subchannel.cc:603]          New connected subchannel at 0x7f4f240035c0 for subchannel 0x7f4fe401fbe0
I0124 17:50:40.240118124   19103 subchannel.cc:603]          New connected subchannel at 0x7f4f00003480 for subchannel 0x7f4f04003f20
I0124 17:50:40.240202199   19093 subchannel.cc:603]          New connected subchannel at 0x7f4f20003480 for subchannel 0x7f4f6c010910
I0124 17:50:40.241294342   19079 subchannel.cc:603]          New connected subchannel at 0x7f4f68003480 for subchannel 0x7f4f6c003f20
I0124 17:50:40.241423375   19101 subchannel.cc:603]          New connected subchannel at 0x7f4f0c0035c0 for subchannel 0x7f4f6c01cd90
I0124 17:50:40.242498763   19042 subchannel.cc:603]          New connected subchannel at 0x7f5004003480 for subchannel 0x7f4ffc003f20
I0124 17:50:40.243694891   19076 subchannel.cc:603]          New connected subchannel at 0x7f4f78006030 for subchannel 0x7f4f74003f20
I0124 17:50:40.244896499   19058 subchannel.cc:603]          New connected subchannel at 0x7f4f58003480 for subchannel 0x7f4f54003f20
I0124 17:50:40.246085300   19027 subchannel.cc:603]          New connected subchannel at 0x7f503c003480 for subchannel 0x7f505000f2a0
I0124 17:50:40.247241087   19055 subchannel.cc:603]          New connected subchannel at 0x7f4fd0003480 for subchannel 0x7f4fc4003f20
I0124 17:50:40.248384911   19041 subchannel.cc:603]          New connected subchannel at 0x7f500c008a30 for subchannel 0x7f5070028ff0
I0124 17:50:40.249540478   19059 subchannel.cc:603]          New connected subchannel at 0x7f4fc8003480 for subchannel 0x7f4fc400a960
I0124 17:50:40.250699375   19060 subchannel.cc:603]          New connected subchannel at 0x7f4f98003480 for subchannel 0x7f4fc4012900
I0124 17:50:40.251177424   18174 client_async.cc:225]        Sizing async client to 32 threads
I0124 17:50:40.483385352   18174 qps_worker.cc:193]          RunClientBody: client created
I0124 17:50:40.483507798   18174 qps_worker.cc:198]          RunClientBody: creation status reported
I0124 17:50:40.483623488   18166 driver.cc:370]              Initiating
I0124 17:50:40.483780888   18174 qps_worker.cc:200]          RunClientBody: Message read
I0124 17:50:40.527681079   18166 driver.cc:391]              Warming up
I0124 17:50:40.527727163   18166 driver.cc:397]              Starting
I0124 17:50:40.528004971   18174 qps_worker.cc:209]          RunClientBody: Mark response given
I0124 17:50:40.528022026   18169 qps_worker.cc:248]          RunServerBody: Message read
I0124 17:50:40.528045581   18174 qps_worker.cc:200]          RunClientBody: Message read
I0124 17:50:40.552206356   18169 qps_worker.cc:257]          RunServerBody: Mark response given
I0124 17:50:40.601637092   18174 qps_worker.cc:209]          RunClientBody: Mark response given
I0124 17:50:40.602363521   18166 driver.cc:424]              Running
I0124 17:50:41.527840384   18166 driver.cc:438]              Finishing clients
I0124 17:50:41.528058723   18174 qps_worker.cc:200]          RunClientBody: Message read
I0124 17:50:41.529765210   18174 qps_worker.cc:209]          RunClientBody: Mark response given
I0124 17:50:41.529782570   18174 qps_worker.cc:212]          RunClientBody: Awaiting Threads Completion
I0124 17:50:41.530295267   18166 driver.cc:452]              Received final status from client 0

I suspect this could have been fixed by https://github.com/grpc/grpc/pull/14177.

Haven't seen any occurences after #14177 was merged, closing.


Todos

I don't have much experience with R, so I hope that you lovely R people can help me out here 😃
To my surprise, the basics all worked pretty smoothly! There's an R binder that executes code and plots work pretty much out-of-the-box (although they have to be wrapped in print statements due to this issue to prevent a warning from showing up). You can see it in action here: https://course-starter-r.netlify.com
Here's what's still outstanding:

[ ] A better example. I copy-pasted something together for the current exercises. The example should ideally show a few different things that are possible in the current framework.
[ ] Testing, especially the plotting stuff.
[ ] Improve validation when the user clicks "submit".

This part is handled by the testTemplate. For Python, it'd look something like this:
__solution__ = """${solution}"""
${solution}

${test}
try:
    test()
except AssertionError as e:
    print(e)

Under the hood, the app replaces ${solution} with the string value of the submitted user code and ${test} with the contents of the respective test file. So in the above example, we execute the solution, but also make it available as a string. This allows checking the actual objects that were created, but also doing string matches (like, print(doc.text) in __solution__).
For R, I currently have this (which works okay so far):
${solution}

${test}

tryCatch({
    test()
}, error = function(e) {
    cat(paste(e[1]))
})

The tryCatch is supposed to hide the traceback – otherwise, the user would see what caused the error / stop – which is usually a test that reveals the solution.
I haven't vet added the string value, because I'm not sure how to represent multi-line strings like Python's """string"" in R. We have to expect that ${solution} includes various quotation marks, so if we paste it in, we don't want to mess up the string. Alternatively, maybe there's an easy way to escape / unescape quotes etc?

You can split a string over as many lines as you want, R won't mind:
a_long_string <- "Hi! I'm a pretty long string.
You can split me over as many
lines as you want, I won't mind at all. "
a_long_string
#> [1] "Hi! I'm a pretty long string. \nYou can split me over as many\nlines as you want, I won't mind at all. "

Created on 2019-04-18 by the reprex package (v0.2.1)
However, as you can see, it will introduce some line breaks. If you want to get rid of them, do
a_better_looking_long_string <- gsub("\\n"," ",a_long_string)
a_better_looking_long_string
#> [1] "Hi! I'm a pretty long string.  You can split me over as many lines as you want, I won't mind at all. "

Escaping quotes can look a bit weird:
a_string_with_quotes <- "Hi! I'm a string with \"air-\"quotes"
a_string_with_quotes
#> [1] "Hi! I'm a string with \"air-\"quotes"

It looks like you didn't really escape the quotes, but it's just that R's default print method will show the escape characters used in a string. If you display the content of a_string_with_quotes using a function which does much less conversion than print, such as cat, you'll see that the content is actually what you want:
cat(a_string_with_quotes)
#> Hi! I'm a string with "air-"quotes

Does this help?

@AndreaPi Thanks for writing this up, this is all really useful info 👍
But how would you solve the following problem:
// In JavaScript
const code = `I'm a string with "air-"quotes`

const rCode = `
# This is the inside of an R file
r_string <- "${code}"
`

This is pretty much how the app is putting the tests and code together under the hood – it's generating an R file as a string. At the moment, the above would break, because it'd create output like this:
r_string <- "I'm a string with "air-"quotes"

One option would be to wrap the string in " and replace all " in the string with \", like this:
const code = `I'm a string with "air-"quotes`.replace(/"/g, '\\"')

That'd result in the following, which should be valid?
r_string <- "I'm a string with \"air-\"quotes"

But there might be unintended side-effects of this that I'm not considering at the moment? And of course there might also be a more elegant way to do this.

If not pre-processing the string before reading it into R, perhaps using readline() could work to preserve quotation marks?  See this link.

@ines r_string is definitely valid (just tested in R). I don't think there should be any side effects.


[May 2024] Dashboard doesn't show shortcuts for Backup/Restore on Windows

Azure Data Studio Version:  1.48.0 (user setup)
OS: Windows_NT x64 10.0.22631

It seems these shortcuts have been missing on Windows for some time now. Not sure since when, but seems like could be added.
@cheenamalhotra   any specific reason they have been missing on Windows ah ?

you can hot fix by download the previous of this app (1.41)


auth_key_id mismatch after logOut

I sometimes (but not always) see this type of error right after logging out. I’m not sure what it means or why it’s happening:
Session closed: [Error : 0 : Invalid mtproto message: auth_key_id mismatch [found = 0x0a0d3e6c6d84683c] [expected = 0xba91dcf84a3bff0a]] Session:1:main::Connect::HttpLongPoll::[<IP_ADDRESS>:443] to DcId{1} over HTTP
When the error occurs, my client never receives the final AuthorizationStateClosed update.

Are you using TDLib on watchOS?

Yes, I am using it on watchOS.

What is probability of getting this error?

About half the time. Is this somehow specific to watchOS?

The problem is in HTTP transport and it currently used by default only on watchOS.

You mean instead of HTTPS? Is it possible to change the default transport used on watchOS?
I’m currently using TdJson. Is the C++ TdStatic version any different in this regard?
Otherwise, what is the preferred way to build a watchOS client?

No. On all other OS TCP transport is used by default. There is no access to raw sockets on watchOS, so it is forced to use HTTP transport.

It appears this might have changed with watchOS 6, see here: https://github.com/socketio/socket.io-client-swift/issues/1215
From the watchOS 6 release notes:

URLSessionWebSocketTask and URLSessionStreamTask are now available for use in watchOS apps. (49779789)

Also URLSessionDataTask supports HTTPS.
Are any of these technically sufficient for a Telegram client on watchOS, if one was willing to spend the time to make the necessary changes?

HTTPS makes no difference. Telegram doesn't have HTTP/HTTPS API. HTTP is used only as a transport.

Thanks.
Is any of URLSessionWebSocketTask / URLSessionStreamTask / URLSessionDataTask technically sufficient for a Telegram client on watchOS, if one was willing to spend the time to make the necessary changes?
I’m trying to determine if I should build an independent watchOS client or not.

TDLib already uses URLSessionDataTask. Existence of others makes no difference and is irrelevant to the issue.

I see. Then what are the implications of TDLib using HTTP transport on watchOS?
Are there any security concerns or other downsides?
And is there anything I can do to prevent or handle the auth_key_id mismatch error?

There are no downsides, except it is suboptimal, but watchOS has no better alternatives anyway. The error can't be avoided and needs to be properly handled in TDLib.


Support the cluster-autoscaler.kubernetes.io/safe-to-evict annotation

Tell us about your request
Would be great if Karpenter treated pods with the cluster-autoscaler.kubernetes.io/safe-to-evict annotation as the same as the karpenter.sh/do-not-evict annotation.
Basically, cluster-autoscaler.kubernetes.io/safe-to-evict: "false" is equivalent to karpenter.sh/do-not-evict: "true"
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
This would help teams migrate from CAS to Karpenter w/o requiring re-config.
The other wrinkle here is it's not possible to write a generic OPA assign metadata mutator to add the karpenter.sh/do-not-evict annotation b/c you can't find pods by annotation (only by label).
Are you currently working around this issue?
We use OPA assign metadata mutators but have to know all the possible label selectors to find pods in our clusters with the cluster-autoscaler.kubernetes.io/safe-to-evict: "false" annotation.
Additional Context
No response
Attachments
No response
Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

/reopen

/remove-lifecycle rotten


Testing Examples?

I'm looking for a way to test that my debouncer class works as expected using the Future's delay call. Is there an example on how to do this? (I know this isn't the right usage of issues, but not sure where else to ask?)

Something like
def do_a_thing
  @debounce.try &.cancel
  @debounce = Future.delay(1.second) { perform_a_thing }
end


Query Data from the HTTP Archive

Underscore Function
Count
Percentage vs filter

_.filter
427,420

_.select
8,743
2%

_.reject
64,018
15%

Using the following query format:
SELECT
  COUNT(*)
FROM
  `httparchive.response_bodies.2019_10_01_desktop`
WHERE
  REGEXP_CONTAINS(body, r"_\.filter\(")

Query data from 2016-01-01 (when underscore/lodash were more popular):

Underscore Function
Count
Percentage vs filter

_.filter
8,764

_.select
576
6.5%

_.reject
1,858
21%

Right, v4.0.0 removed all aliases.

Querying github archive for ruby files (which has select, reject and filter as first class methods):

Ruby Function
Count
Relative percentage

filter
10475
4.95%

select
141987
67.13%

reject
59052
27.92%

SELECT
  COUNT(*)
FROM
  `bigquery-public-data.github_repos.contents`
WHERE
  NOT binary
  AND REGEXP_CONTAINS(content, r"\.reject\b")
  AND id IN (
    SELECT id FROM `bigquery-public-data.github_repos.files`
    WHERE ENDS_WITH(path, '.rb')
  )


Get au domain?

So it is like cru.au.dk?
@knielbo you mentioned during the meeting this is possible. How easy is it to get and how can set it up?

Based on this it doesn't seem likely or easy at this stage to have a custom domain with AU.

I have emailed<EMAIL_ADDRESS>with request for domain for my own auff project. I will let you know how it goes. If I succeed, I'll request one on behalf of au-cru.


Error with NPM Install on Windows

-= Workaround included =-
Running NPM Install on Windows resulted in:

<EMAIL_ADDRESS>build D:\Projects\react-router
scripts/build.sh

'scripts' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "D:\Program Files\nodejs\\node.exe" "D:\Program Files\nodejs
\node_modules\npm\bin\npm-cli.js" "run" "build"
npm ERR! node v0.12.2
npm ERR! npm  v2.7.4
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: scripts/build.sh
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'scripts/build.sh'.
npm ERR! This is most likely a problem with the react-router package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     scripts/build.sh
npm ERR! You can get their info via:
npm ERR!     npm owner ls react-router
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR!     D:\Projects\react-router\npm-debug.log
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "D:\Program Files\nodejs\\node.exe" "D:\Program Files\nodejs
\node_modules\npm\bin\npm-cli.js" "install"
npm ERR! node v0.12.2
npm ERR! npm  v2.7.4
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>prepublish: npm run build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>prepublish script 'npm run build'.
npm ERR! This is most likely a problem with the react-router package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npm run build
npm ERR! You can get their info via:
npm ERR!     npm owner ls react-router
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR!     D:\Projects\react-router\npm-debug.log
D:\Projects\react-router>npm install
npm WARN package.json<EMAIL_ADDRESS>events is also the name of a node core module
.
npm WARN package.json<EMAIL_ADDRESS>No README data
npm WARN package.json<EMAIL_ADDRESS>No repository field.
Change the prepublish line in package.json from "prepublish": "npm run build" -> "prepublish": "npm run && npm build" and everything installs without error.

This worked for me. Thanks @Wolfeitz !

@Wolfeitz dou have a fix for when you try running "npm run examples"?
I'm getting this error;
0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'examples' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose node symlink C:\Program Files\nodejs\\node.exe
5 verbose run-script [ 'preexamples', 'examples', 'postexamples' ]
6 info preexamples<EMAIL_ADDRESS>7 info examples<EMAIL_ADDRESS>8 verbose unsafe-perm in lifecycle true
9 info<EMAIL_ADDRESS>Failed to exec examples script
10 verbose stack Error<EMAIL_ADDRESS>examples: `webpack-dev-server --config examples/webpack.config.js --content-base examples --inline`
10 verbose stack Exit status 1
10 verbose stack     at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\lib\utils\lifecycle.js:213:16)
10 verbose stack     at EventEmitter.emit (events.js:110:17)
10 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\lib\utils\spawn.js:14:12)
10 verbose stack     at ChildProcess.emit (events.js:110:17)
10 verbose stack     at maybeClose (child_process.js:1015:16)
10 verbose stack     at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
11 verbose pkgid<EMAIL_ADDRESS>12 verbose cwd C:\sauce\examples\react\react-router
13 error Windows_NT 6.3.9600
14 error argv "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "examples"
15 error node v0.12.2
16 error npm  v2.7.4
17 error code ELIFECYCLE
18 error<EMAIL_ADDRESS>examples: `webpack-dev-server --config examples/webpack.config.js --content-base examples --inline`
18 error Exit status 1
19 error Failed at the<EMAIL_ADDRESS>examples script 'webpack-dev-server --config examples/webpack.config.js --content-base examples --inline'.
19 error This is most likely a problem with the react-router package,
19 error not with npm itself.
19 error Tell the author that this fails on your system:
19 error     webpack-dev-server --config examples/webpack.config.js --content-base examples --inline
19 error You can get their info via:
19 error     npm owner ls react-router
19 error There is likely additional logging output above.
20 verbose exit [ 1, true ]

As a quick fix I replaced all "/build/" references in examples to "../build/" and just run index.html straight.
Not pretty, but it works.


Problem about reproduce the mot17 result

hi nice work!
I want to reproduce the mot17 track results. the result of mot17 FRCNN in README.txt is the average result  of all FRCNN?  because there are many FRCNN gt and det.

yes, the FRCNN row shows the results if you only evaluate using the FRCNN detections on the mot17 sequences. Note that the test results include the evaluation results of all three detectors according to the mot17 evaluation protocol.


Only install iOS builds if requested

This hopefully fixes the iOS GitHub Action. The install was always being done, which fails (maybe due to lack of space on the CI machine?). If this is the case, then we'll need to revisit for release builds (which require an install / archive).

Guess this didn't fix it.. very bizarre.


Add editor config and sort imports

Closing this as we need to have a much more inclusive discussion as a dev team on editor formatting changes.


Why is DaprServiceCollectionExtensions a part of AspNetCore package

I was wondering why the functionality from DaprServiceCollectionExtensions is in the AspNetCore package and not just in the Dapr.Client one?   I can't see why it has any dependencies on AspNetCore but seems to add value for those only looking to use the Client.

So that we can avoid adding dependencies to Dapr.Client. From my experience working on the Microsoft.Extensions libraries, lots of people are passionate about having a small dependency list.

Got it.  Too bad, AddDaprClient seems like a good extension method for Dapr.Client... :)

Yeah, it's also pretty minimal and easy to replicate. I don't think it's worth us producing an extra package for just that method. If more reasons come up in the future, or if M.E.DI moves in-band in .NET we'll consider it.


Feature Request: Log ip6tables rules beeing added or removed to stdout

This tool works great!
For debugging purposes, it would be nice if actions like rule changes would be logged to stdout.

Thanks @movd, that's true. Should be an optional flag, to not generate too many docker logs.
I'm open to a PR on this, shouldn't be that complicated.

Ok, let's check this.
I have found the following line:
func (m *manager) applyRules(oldRules, newRules *Ruleset) error {
	oldRules = oldRules.Diff(newRules) // LINE

	if err := m.fw.EnsureRules(newRules); err != nil {
		return err
	}

	if err := m.fw.RemoveRules(oldRules); err != nil {
		return err
	}

	return nil
}

We want to log all rule changes which are (maybe) empty list of added rules and remove rules.
If a rule is changed, this will be reflected by a removed and an added rule.
The marked line seems to save all removed rules to oldRules.
This seems to be the best place for the logging.
We could simply interate over both arrays and print Removed rule: [...] or Added rule: [...] for each entry in oldRules and newRules.
@robbertkl It is not really easy to understand, that after the marked line oldRules contains rules which will be removed.
@movd Does this may solve your issue?

The actual logging command should be inserted here and here one line after the iptables action.

@bephinix

The marked line seems to save all removed rules to oldRules.
This seems to be the best place for the logging.
We could simply interate over both arrays and print Removed rule: [...] or Added rule: [...] for each entry in oldRules and newRules.

Better to add it within EnsureRules and RemoveRules within firewall.go.

@robbertkl It is not really easy to understand, that after the marked line oldRules contains rules which will be removed.

You're right, it would be better to introduce a new variable (something like rulesToRemove) instead of re-using the oldRules variable.

The actual logging command should be inserted here and here one line after the iptables action.

Yeah, that seems like a better place.
Would still like it sitting behind an optional flag, off by default.

#37 will implement it.


mat: multiplication rate independent of matrix size for certain sizes

What are you trying to do?
Reduce/undertand the time spent in matrix operations in my code.
What did you do?
Pulled out all the matrix operations I do and benchmarked them.
What did you expect to happen?
The time required for each to depend on the size of the matricies involved.
What actually happened?
For some cases, increasing the number of rows of the matrix involved appears to not increase the run time. And the corollary, decreasing it, does not decrease the run time.
package matbench

import (
	"fmt"
	"testing"

	"gonum.org/v1/gonum/mat"
)

func BenchmarkMatMul(b *testing.B) {
	benchmarks := []struct {
		rA int
		cA int
		rB int
		cB int
	}{
		{1, 1000, 1000, 1},
		{2, 1000, 1000, 1},
		{3, 1000, 1000, 1},
		{1000, 10, 10, 1},
		{1000, 3, 3, 1},
		{1000, 2, 2, 1},
		{1000, 1, 1, 1},
		{100, 3, 3, 1},
		{100, 2, 2, 1},
		{100, 1, 1, 1},
	}

	for _, bm := range benchmarks {
		name := fmt.Sprintf("(%v,%v)*(%v,%v)", bm.rA, bm.cA, bm.rB, bm.cB)
		b.Run(name, func(b *testing.B) {
			A := mat.NewDense(bm.rA, bm.cA, make([]float64, bm.rA*bm.cA))
			B := mat.NewDense(bm.rB, bm.cB, make([]float64, bm.rB*bm.cB))
			var result mat.Dense
			b.ResetTimer()
			for i := 0; i < b.N; i++ {
				result.Mul(A, B)
			}

		})
	}
}

Putting that in a file $GOPATH/src/matbench/matbench_test.go leads to the following
matbench $ go test -bench . -benchtime 100ms
goos: darwin
goarch: amd64
pkg: matbench
BenchmarkMatMul/(1,1000)*(1000,1)-8         	  200000	       999 ns/op
BenchmarkMatMul/(2,1000)*(1000,1)-8         	  100000	      1779 ns/op
BenchmarkMatMul/(3,1000)*(1000,1)-8         	   50000	      2643 ns/op
BenchmarkMatMul/(1000,10)*(10,1)-8          	    5000	     20791 ns/op
BenchmarkMatMul/(1000,3)*(3,1)-8            	   10000	     17242 ns/op
BenchmarkMatMul/(1000,2)*(2,1)-8            	   10000	     16618 ns/op
BenchmarkMatMul/(1000,1)*(1,1)-8            	   10000	     16554 ns/op
BenchmarkMatMul/(100,3)*(3,1)-8             	  200000	      1184 ns/op
BenchmarkMatMul/(100,2)*(2,1)-8             	  200000	      1115 ns/op
BenchmarkMatMul/(100,1)*(1,1)-8             	  200000	      1157 ns/op
PASS
ok  	matbench	1.923s

I'm concerned by the timings in the (1000,10)*(10,1) to (1000,1)*(1,1) group that seem to show the execution time is nearly independent of the matrix size.  I expect it to behave more like the first 3 timings, where the execution time grows as the matrix size grows.
What version of Go and Gonum are you using?
go version go1.10.1 darwin/amd64
Gonum commit be2398aa0a334225e27b868fa8c5101f0127fb2f
Does this issue reproduce with the current master?
It looks like I'm on a commit from 3 days ago, so probably.

You're measuring different bottlenecks in these benchmarks:
The fist three timings are CPU-bound, with minimal writes to memory and cache-friendly reads.
The four you're concerned with are memory-bound, with thousands of values read from/written to memory and the 2nd matrix staying in cache.
The timings reflect those different bottleneck effects.

Please don't omit sections of the issue template; in this issue the preamble is important. If the issue arose in production code, we could advise that you should be doing these operations on a VecDense instead of a Dense since they are all Mv operations. If it's just an interesting observation, then we could consider the importance of it.

Sorry for leaving out part of the template, I have added it back in. It's somewhere between an interesting observation and a problem for me. It's true that this is the slowest part of the code I'm looking at, but it's the case that it is fast enough for the foreseeable future.
I do get faster run times, and scaling with column number if I use VecDense.MulVec, with both B and result type VecDense.
It sounds like this isn't considered an issue? If that is right I'll close this and ask any further questions on the dev list.

In the case that you have {1,n}x{n,1} you'll do even better with Dot.
I don't think this is an issue, but I leave it for @btracey and @Kunde21 to make the final decision on that.

I'd also recommend using VecDense.MulVec.  Performance improvements, in the form of assembly BLAS kernels, are coming soon.


Graph improvement

It's a little bit hard to understand relations between module and chunk and webpack entry with the current graph because it groups the modules only to the folder.
This is the example and I don't understand is it one chunk per entry or three

Describe the solution you'd like
Group modules to chunks on the top level. how does bundle-analyzer

Agree with this idea. Must be more easy to debug & improve


Support Etherscan V2 API

More info: https://docs.etherscan.io/etherscan-v2

to fix your trouble check this solution click
maybe this will solve your problem.


Newest update

I updated the file this morning and then noticed that i could not use shops anymore. I saved and reloaded, same deal. I reverted back to the last version and reloaded and I could shop fine. With the newest version it lets me put items in the trade window, but doesn't adjust prices or enable the trade button.

I am not having this issue, could you redownload the mod and try again so me please?
If it is still happening a list of your mods and the location of the shop with the problem would be helpful.

Unable to replicate.


⚠ Processors has degraded performance

In 98280d7, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 101 ms

Resolved: Processors performance has improved in eb8a3b3.


imagemagick: 6.9.10-71 -> 6.9.11-12, 7.0.9-0 -> 7.0.10-13

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@ofborg eval

Looks like staging is borked.

@ofborg eval

@ofborg eval


Remake all of the GUI tools in AvaloniaUI

This has been talked about over and over again. Might as well do it now. It may be impossible to do soon.
This PR aims to remake all of the WPF and WinForms-based tools in AvaloniaUI, whilst breaking off dependencies on System.Windows and Xe.Tools to both ensure X-Platform compatibility and to get rid of Xe.Tools in general since it has started causing issues for tool maintenance.
The first tool to be affected by this change is "OpenKh.Tools.BarEditor". It's AvaloniaUI counterpart has been renamed to "OpenKh.Tools.BarTool" to avoid collisions. This may be temporary or permanent depending on the input on this issue.
Every tool that uses WPF and WinForms is to be affected by this change. Tests are welcome and are encouraged. Below, you will find a comment with a checklist to every individual tool that is currently being worked on. Below on this thread, you will find a checklist of all of the tools completely transitioned to AvaloniaUI.
Feedbacks are appreciated.
Do note that any checks made by the buildbots may fail during this time until finalization.
Completed Checklist (Plz do tell if I missed/wrongfully added any):

[x] BAR Editor
[ ] BBS Event Table Editor
[ ] BEP Editor
[ ] CTD Editor
[ ] DPD Editor
[ ] EPD Editor
[ ] IDX-IMG
[ ] Image Viewer
[ ] ITB Editor
[ ] ITC Editor
[ ] KH2 Battle Editor
[ ] KH2 System Editor
[ ] KH2 Text Editor
[ ] OBJEntry Editor

Checklist for the BAR Editor:

[ ] Fix BAR's "Index" variable to "Duplicate" variable.
[ ] Ensure that the fix above works as intended.
[ ] Handle Opening and Saving.
[ ] Handle Imports and Extraction.
[ ] Handle GUI Updates following the MVVM Standard.
[ ] Handle Opening of Files within BAR Files.
[ ] Ensure MSET Compatibility.
[ ] Ensure Xe.Tools is no longer necessary.

What is the purpose of this commit? https://github.com/Xeeynamo/OpenKh/commit/68183b38dbb6960b70efbc6293baa1cc1ce0f404
I see that loads of stuff has been renamed and most of them is out of scope from this PR and unwanted changes.

What is the purpose of this commit? 68183b3
I see that loads of stuff has been renamed and most of them is out of scope from this PR and unwanted changes.

Multiple purposes.
AvaloniaUI requires all enums to be absolute for it's bindings. Some unknowns without a value given to them have offset the list,
making the type list confused.
@Vladabdf has requested some of the terminology changed like Imgd and Seqd since we know what they are supposed to be called now, so I obliged. Terminology like SonyADPCM and PS2Image come from me and terminology like ImageData and SequenceData come from him.

What is the purpose of this commit? 68183b3
I see that loads of stuff has been renamed and most of them is out of scope from this PR and unwanted changes.

Multiple purposes.
AvaloniaUI requires all enums to be absolute for it's bindings. Some unknowns without a value given to them have offset the list,
making the type list confused.
@Vladabdf has requested some of the terminology changed like Imgd and Seqd since we know what they are supposed to be called now, so I obliged. Terminology like SonyADPCM and PS2Image come from me and terminology like ImageData and SequenceData come from him.

What do you mean by requiring the enums to be absolute?
The new namings are more confusing. IMD is clearer that ImageData as it's clear it is about the same IMD that is found elsewhere. TM2 is not only used for PlayStation 2 but also for PSP and some PS3 games. ImageZip is not really a "zip" archive and in general I disagree on renaming everything uppercase (eg. from Bdx to BDX).

What is the purpose of this commit? 68183b3
I see that loads of stuff has been renamed and most of them is out of scope from this PR and unwanted changes.

Multiple purposes.
AvaloniaUI requires all enums to be absolute for it's bindings. Some unknowns without a value given to them have offset the list,
making the type list confused.
@Vladabdf has requested some of the terminology changed like Imgd and Seqd since we know what they are supposed to be called now, so I obliged. Terminology like SonyADPCM and PS2Image come from me and terminology like ImageData and SequenceData come from him.

What do you mean by requiring the enums to be absolute?
The new namings are more confusing. IMD is clearer that ImageData as it's clear it is about the same IMD that is found elsewhere. TM2 is not only used for PlayStation 2 but also for PSP and some PS3 games. ImageZip is not really a "zip" archive and in general I disagree on renaming everything uppercase (eg. from Bdx to BDX).

Some unknowns are missing and some unknowns were not given a value, putting back the missing unknowns makes the enum absolute since there are no missing entries in the middle. Removing all the unknowns would also make the enum absolute but that broke some stuff.
As for the naming schemes, I can name PS2Image to PSImage since that is what TIM2 is. PlayStation Image File.
As for the others like ImageData and ImageZip, you may have to consult Vlad about it. Because I do not know what common ground you two can reach. I just did what someone with collaborator rights requested.
As for the renames from PascalCase to Uppercase, that is the standard naming scheme for extensions. Either lower or UPPER case naming. However, this can be altered.

What do you mean by requiring the enums to be absolute?
The new namings are more confusing. IMD is clearer that ImageData as it's clear it is about the same IMD that is found elsewhere. TM2 is not only used for PlayStation 2 but also for PSP and some PS3 games. ImageZip is not really a "zip" archive and in general I disagree on renaming everything uppercase (eg. from Bdx to BDX).

Some unknowns are missing and some unknowns were not given a value, putting back the missing unknowns makes the enum absolute since there are no missing entries in the middle. Removing all the unknowns would also make the enum absolute but that broke some stuff.
As for the naming schemes, I can name PS2Image to PSImage since that is what TIM2 is. PlayStation Image File.
As for the others like ImageData and ImageZip, you may have to consult Vlad about it. Because I do not know what common ground you two can reach. I just did what someone with collaborator rights requested.
As for the renames from PascalCase to Uppercase, that is the standard naming scheme for extensions. Either lower or UPPER case naming. However, this can be altered.

I suggest to minimise the amount of changes globally and focus on the scope of this PR. Renaming those BAR entries can be easily done in a separate pull request to have more control on the changes we merge in.

I suggest to minimise the amount of changes globally and focus on the scope of this PR. Renaming those BAR entries can be easily done in a separate pull request to have more control on the changes we merge in.

I am trying to do so as best as possible, but since the enum was being changed as Avalonia required it, we figured we might as well go for it.
Sorry for the inconvenience. I will make sure to make the least global changes as possible.


Expose API for when the list of interpreters have changed

Discussed in https://github.com/microsoft/vscode-python/discussions/16683

Originally posted by DonJayamanne July 13, 2021
Currently there's no way for Jupyter to know when user creates a new Python environment (conda, or the like).
Is it possible to get an event so we know that new interpreters have been created.
Note: Once thats done, how would we get these new interpreters. Not sure the GetInterrpeters is the best API for this, as that will return all interpreters all over again. Personally it would be nice to have something we can subscribe to, like an observable, this way we only get whats new).

ersonally it would be nice to have something we can subscribe to, like an observable, this way we only get whats new).

Yup, that was my original plan for how the interpreters could be exposed.
https://github.com/microsoft/vscode-python/issues/3023
Having an observable is a very efficient way for Jupyter as well. E.g. we don't need to wait till we get all interpreters just to know that the user has an interpreter, similarly when we search for kernels we don't need to wait for all when we can start searching incrementally. (these were some of the perf improvements we discussed when looking at the delays in Jupyter extension)

This is now available via the proposed API for the python extension, please try this out and let us know.
Event for when the interpreter list changes:
https://github.com/microsoft/vscode-python/blob/65c22e48b0007682552892393d2884c4af0b1a67/src/client/apiTypes.ts#L172
API to get currently know interpreters:
https://github.com/microsoft/vscode-python/blob/65c22e48b0007682552892393d2884c4af0b1a67/src/client/apiTypes.ts#L145
API to get details for a given interpreter path:
https://github.com/microsoft/vscode-python/blob/65c22e48b0007682552892393d2884c4af0b1a67/src/client/apiTypes.ts#L135
API to get the refresh promise, this will return a promise for the current ongoing discovery:
https://github.com/microsoft/vscode-python/blob/65c22e48b0007682552892393d2884c4af0b1a67/src/client/apiTypes.ts#L167
API to trigger refresh of environments:
https://github.com/microsoft/vscode-python/blob/65c22e48b0007682552892393d2884c4af0b1a67/src/client/apiTypes.ts#L162

I believe the API supports notification of when the interpreter list has changed, so closing as done.


[...s/routers/install.go:102 InstallInit()] [E] Install: Installation is prohibited

We DO NOT take questions or config/deploy problems on GitHub, please use our forum: https://discuss.gogs.io
Please take a moment to search that an issue doesn't already exist.
For bug reports, please give the relevant info:

Gogs version (or commit ref):
Git version:
Operating system:
Database:

[ ] PostgreSQL
[ ] MySQL
[ ] SQLite

Can you reproduce the bug at http://try.gogs.io:

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

Log gist:

Description
...

It is prohibited because the instance (someone else) has went through the install process before you send the form.


Simplified some if statements

Some if statements were reduced using a ternary operator instead.

Hi, thank you for these changes, but I am of the opinion that if-else statements are more readable in most of these cases. I have done very limited research into if ternary operators are faster than if-else statements, but from what I have seen on the web, they are almost equivalent in speed when it comes to using C. @jrgemignani @rafsun42 @muhammadshoaib if you'd like to give your input as well, that'd be good

@MatheusFarias03 I tend to agree with @dehowef here. Ternary operators are good in some places but tend to make it more difficult to read and debug in others. We do use them in some places and don't ban their usage. But, generally, I find them unnecessary most of the time and I tend to avoid them, unless necessary.
Here is a SO article about them -
https://stackoverflow.com/questions/160218/to-ternary-or-not-to-ternary

Oh ok! I've also created some PRs like this one, should I close them all?

@MatheusFarias03 I hate to say yes because I [we] appreciate your work and desire to make AGE better,... but, yeah,... I don't think these add value. That is my opinion, at least. @dehowef ? @rafsun42

@MatheusFarias03 My opinion- I appreciate your effort, but I would prefer readability if performance is unchanged.

Okay folks! I'll close them, no problem! :+1:

@jrgemignani @MatheusFarias03 I wrote transform_cypher_union, which largely referenced the transformSetOperationStmt code in Postgres. I followed a lot of their coding style choices. I think that a good point the thread John linked also points out that nested if/else blocks also allow for debuggers to place breakpoints on certain statements, which condensed ternary operators don't allow for. That is another dimension of "readability" that I think is important. Thanks for understanding @MatheusFarias03 , we really do appreciate your enthusiasm and effort.

I think that this preference in code will differ from project to project. Maybe some projects would prefer the condensed statements and reduced number of lines. But, on a project like AGE where we oftentimes are in the debugger looking at code, and oftentimes code someone else wrote, I think it's nice to have somewhat more atomized code blocks to aid with that.


⚠ GitLab Server has degraded performance

In 1188f49, GitLab Server (https://gitlab01.its-telekom.eu) experienced degraded performance:

HTTP code: 200
Response time: 14134 ms

Resolved: GitLab Server performance has improved in 583cd54.


[FEATURE] support phoenix 1.7.0

I'm running into this when upgrading to Phoenix 1.7.0
Given this diff to mix.exs
-      {:phoenix, "~> 1.6.15"},
+      {:phoenix, "~> 1.7.0"},
-      {:phx_live_storybook, "~> 0.4.5"},
-      {:plug_cowboy, "~> 2.5"},
+      {:phoenix_storybook, "~> 0.5.0"},
+      {:plug_cowboy, "~> 2.6"},

I get this error
 % mix deps.get
Resolving Hex dependencies...
Resolution completed in 1.358s
Because prom_ex >= 1.5.0 depends on plug_cowboy ~> 2.5.1 and your app depends on plug_cowboy ~> 2.6, prom_ex >= 1.5.0 is forbidden.
So, because your app depends on prom_ex ~> 1.7.1, version solving failed.

I'm hoping a version bump works here:

plug_cowboy now requires Plug v1.14+ and Elixir v1.10+
the plug bump [doesn't appear too onerous either]https://github.com/elixir-plug/plug/blob/main/CHANGELOG.md#v1140-2022-10-31)

This one is related with #182.
I am excited to enjoy with the support for Phoenix 1.7!


Issue: High CPU usage when the camera is disconnected after starting the pipeline

Required Info

Camera Model
D435i

Firmware Version
<IP_ADDRESS>

Operating System & Version
Linux (Ubuntu 20)

Kernel Version (Linux Only)
5.13.0-40-generic

Platform
PC

SDK Version
2.50.0

Language
python

Segment
Robot

Issue Description
While running the following code to start the pipeline if I disconnect the camera cable the cpu usage goes up to 100% on three threads.
I checked the documentation there's no way to check when the camera gets disconnected so that I can rest the program.
Any ideas on how to prevent this from happening and detect when the camera is disconnected?
import pyrealsense2 as rs
import time

pipeline = rs.pipeline()
config = rs.config()
profile = pipeline.start(config)

while True:
    # do things
    time.sleep(1)

Hi @Ahmadgafer  you could try using set_devices_changed_callback to check for camera connection / disconnection events.  A Python script for doing so is at https://github.com/IntelRealSense/librealsense/issues/4212#issuecomment-586262375
When disconnection is detected, you could then trigger a hardware_reset instruction to reset the camera automatically.
In regard to the high CPU usage when disconnecting, does this occur when using the introductory Python script from the Python wrapper documentation page at the link below?
https://github.com/IntelRealSense/librealsense/tree/master/wrappers/python#streaming-using-rspipeline

Could you monitor memory usage whilst your program is running to see whether the high CPU usage conincides with a reduction in available computer memory capacity, please?  If there was a rapid decline in available memory then it could indicate that there is a memory leak occurring that leads to degraded performance and even program freeze / exit.

Sure! Here's more info:
Before disconnecting the usb:
process memory usage: 0.5%
process cpu usage: 0.5%
system available memory: 22.2 GB
After disconnecting the usb:
process memory usage: 0.5%
process cpu usage:  12.5% cpu (2 cores out of 16 usage goes up to 100%) ,
system available memory 22.2 GB
This is on my PC. When it happens on a less powerful PC (NUC) it causes problems of high temperature as it heats up.

Are you using the official 1 meter USB cable supplied with the camera or a longer cable of your own choice, please?

I'm using the short cable that comes with the box. I don't think the problem is related to the cable as the CPU usage goes up when the cable is disconnected.

I note that you are using kernel 5.13.0-40-generic.  The RealSense SDK currently supports up to kernel 5.11 when building it from source code with CMake and 5.4 when installing from Debian packages.  Whilst newer kernels can work with the SDK, there may be unpredictable consequences in regard to stability.
If you are unable to use a kernel other than 5.13.0-40-generic then you can build the SDK from source code with the RSUSB backend.  This installation method bypasses the kernel, so the SDK is not dependent on Linux versions of kernel versions and does not require patching.

I will need until next week to try the build from source option or find a PC with 5.4 kernel. Will keep you updated. Thanks!

That's no problem at all.  Good luck!

Hi @Ahmadgafer  Do you have an update about this case that you can provide, please?  Thanks!

Hi @Ahmadgafer  Do you require further assistance with this case, please?  Thanks!

Case closed due to no further comments received.


Fix handling of DST jumps in Brazilian timezones in startOf/endOf

Fixes #3132
The approach taken here is a bit different than previous ideas (e.g. #3716) where startOf was called twice in endOf. Here we apply endOf much like startOf is done, so that startOf does not have to be called in endOf. Then in startOf it also checks for DST failures where some browsers return the previous or next day when they are set to a midnight that does not exist due to the DST jump. This is handled only for those time units which require it to avoid performance issues, but overall the performance impact should be very low as it only does a couple extra comparison in most cases.
The patch is demonstrated in https://jsfiddle.net/1gpr1fys/7/ in case you want to play with it and do your own tests. It logs all true in the console if you have the correct timezone (Brazil/Sao Paulo or Brasilia). Works in both Firefox and Chrome.
If you have another timezone that does the DST switch not at midnight, then tests 1 and 4 in the demo fail because they return midnight instead of 1am, that's normal. The test suite of moment though passes as it always mimicks the Brazil timezone in the tests checking for this behavior.

Tagging @mj1856 as the most likely person to be able to shepherd this along.

@Seldaek can you explain which case are you fixing (not "brazillian" but put more technical perspective). Also I'm a bit against doing twice the work in endOf. Can you elaborate more on why it is needed.

@ichernev The case is that some timezones (Brazil/Sao_Paolo is one) switch DST at midnight, which means that midnight does not exist but it switches from 23:59:59 to 01:00:00 on the DST switch date. Due to this, and some different ways Firefox and Chrome handle dates, momentjs ends up jumping to the wrong date when using startOf/endOf. The problem is also present when doing things like adding an hour if you are at 23:00:00 of course, but that's less common and way harder to fix, so it is not in the scope here.
I don't know exactly what else you want, the PR description and jsfiddle have a lot of info already.

I made a PR too, didn't saw this one. It solves just the problem of daylight saving time.
https://github.com/moment/moment/pull/4254

Seems like the problem is fixed in current version. @Seldaek

This problem still persists in current version.

@ichernev anything I can do to help get this in? We've been running with it in production since september without any issues.

Coverage increased (+0.05%) to 94.7% when pulling b359ec2364ae9ea3c4869e65e17e2c6c2d8a42e5 on Seldaek:GH3132 into 2e2a5b35439665d4b0200143d808a7c26d6cd30f on moment:develop.

@Seldaek - Thanks for this. Sorry it never got merged. Can you check if #4338 will solve your issue?

With our code (https://github.com/Seldaek/moment/commits/integration) I get this:
With CET timezone:
moment('2018-11-04').endOf('day').format()
"2018-11-04T23:59:59+01:00"

Then I switched to Brasilia timezone:
moment('2018-11-04').endOf('day').format()
"2018-11-04T23:59:59-02:00"

Seems fixed to me..

@Seldaek the branch integration is ok. The GH3132 is not.

Did you build momentjs though? If you just check out the branch without building then you're not getting any of the fixes.

I don't. Sorry. I just pointed my package.json to the git branch.

@marwahaha I'm sorry for that. As the @Seldaek has mentioned, I forgot the build it.
The #4338 solves this issue. I have just tested now.

closing in favor of #4338


New-TssSession issue on 0.32.0-beta

After updating to the 0.32.0-beta module, New-TssSession failed with the following error:

To test, I re-installed 0.12.0-beta and New-TssSession works just fine. I also tested it on 0.25.0-beta and it works. It failed on 0.30.0-beta version.

Wondering if anyone else is seeing this issue?
Thanks!
Harry

What version of secret server are you running this against?

@jagger It is running 10.9.000002. I am unable to find the version reporting setting in admin -> configuration. I might not have full admin rights to Thycotic to see this setting. I found "Hide Secret Server Version Numbers" in Admin -> Configuration -> Security and it is set to "No".

Can you provide the verbose output

@harrychandrapdx New-TssSession was reworked with version 0.30.0 in order to add Windows Authentication and then later adding Client SDK integration. We will need more details on your environment and the verbose output in order to assist.
Please open a new issue and provide the details in the bug template.


create sample error

I try to run "create sample of lineitem" in a tpc-h benchmark data set.
Debug information displays that the system is about to run  : SELECT count(*) AS "c_23", count(distinct "l_orderkey") AS "c_24", count(distinct "l_partkey") AS "c_25", count(distinct "l_suppkey") AS "c_26", count(distinct "l_linenumber") AS "c_27", count(distinct "l_quantity") AS "c_28", count(distinct "l_extendedprice") AS "c_29", count(distinct "l_discount") AS "c_30", count(distinct "l_tax") AS "c_31", count(distinct "l_returnflag") AS "c_32", count(distinct "l_linestatus") AS "c_33", count(distinct "l_shipdate") AS "c_34", count(distinct "l_commitdate") AS "c_35", count(distinct "l_receiptdate") AS "c_36", count(distinct "l_shipinstruct") AS "c_37", count(distinct "l_shipmode") AS "c_38", count(distinct "l_comment") AS "c_39" FROM lineitemuniform0.21n/a_does_not_exist AS vt9.
There is a program running error.
(1) I feel confused about the FROM clause. What is table "lineitemuniform0.21n/a_does_not_exist" for ?
(2) What sample tables will be generated after running "create sample of lineitem" statement ?
Thanks a lot. @pyongjoo @barzan

I recall this error occurs when the table does not exist in the current
schema (we will throw a more explicit error in the future).
Can you include your schema (e.g., "myschema" or "test") with "uniform"
keyword (to save time for now)? For example, "create uniform sample of
myschema.lineitem".
Without the "uniform" keyword, all three types of samples are created:
uniform, stratified, and hashed.
On Wed, Jul 4, 2018 at 9:35 PM, yunyadbis<EMAIL_ADDRESS>wrote:

I try to run "create sample of lineitem" in a tpc-h benchmark data set.
Debug information displays that the system is about to run : SELECT
count(*) AS "c_23", count(distinct "l_orderkey") AS "c_24", count(distinct
"l_partkey") AS "c_25", count(distinct "l_suppkey") AS "c_26",
count(distinct "l_linenumber") AS "c_27", count(distinct "l_quantity") AS
"c_28", count(distinct "l_extendedprice") AS "c_29", count(distinct
"l_discount") AS "c_30", count(distinct "l_tax") AS "c_31", count(distinct
"l_returnflag") AS "c_32", count(distinct "l_linestatus") AS "c_33",
count(distinct "l_shipdate") AS "c_34", count(distinct "l_commitdate") AS
"c_35", count(distinct "l_receiptdate") AS "c_36", count(distinct
"l_shipinstruct") AS "c_37", count(distinct "l_shipmode") AS "c_38",
count(distinct "l_comment") AS "c_39" FROM lineitemuniform0.21n/a_does_not_exist
AS vt9.
There is a program running error.
(1) I feel confused about the FROM clause. What is table
"lineitemuniform0.21n/a_does_not_exist" for ?
(2) What sample tables will be generated after running "create sample of
lineitem" statement ?
Thanks a lot. @pyongjoo https://github.com/pyongjoo @barzan
https://github.com/barzan
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mozafari/verdictdb/issues/160, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABQYCnU6LSCTvBi6cb582kOGK9FWfAPAks5uDW1pgaJpZM4VDIqI
.

--
Yongjoo Park, Ph.D.
Research Fellow
Computer Science and Engineering
University of Michigan
2260 Hayward St.
Ann Arbor, MI 48109-2121
Office: 4957 Beyster
Phone:<PHONE_NUMBER>
Website: yongjoopark.com

Thank you.
The table is actually in the schema. It works when I  run “create  uniform sample of lineitem ”. I wanna see which sample table is created when I run create sample of lineitem .
.When the user is not sure which type of sample table to create, he/she can run “create sample of tablename”, this is what the document says.
I notice that this is the default sample creation method. You mean that it will create a sample table of each attribute in the table？
Can you list all the sample tables after running “create sample of lineitem ”?
Thanks!

Sorry for my late response. I wanted to get back to you with concrete
answers, but I had to work on other stuff. And I don't have Hive with TPCH
right now, which makes me a little hard to answer this.
In general, however, current VerdictDB create samples exactly as described
in the paper:

It creates a uniform random sample.
for high cardinality columns (count-distinct is larger than 1%), it
creates universe (or hashed) samples.
for medium-cardinality columns, it creates stratified samples.

Note that we are in the process of deprecating this heuristic approach
since a more robust physical designer will be used.
On Thu, Jul 5, 2018 at 12:29 AM, yunyadbis<EMAIL_ADDRESS>wrote:

Thank you.
The table is actually in the schema. It works when I run “create uniform
sample of lineitem ”. I wanna see which sample table is created when I run
create sample of lineitem .
.When the user is not sure which type of sample table to create, he/she
can run “create sample of tablename”, this is what the document says.
I notice that this is the default sample creation method. You mean that it
will create a sample table of each attribute in the table？
Can you list all the sample tables after running “create sample of
lineitem ”?
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mozafari/verdictdb/issues/160#issuecomment-402603344,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABQYCmKQfVU_WQOkZ3o43UvE0fSBfLNAks5uDZYpgaJpZM4VDIqI
.

--
Yongjoo Park, Ph.D.
Research Fellow
Computer Science and Engineering
University of Michigan
2260 Hayward St.
Ann Arbor, MI 48109-2121
Office: 4957 Beyster
Phone:<PHONE_NUMBER>
Website: yongjoopark.com


ForEach<_StoreCollection<String, State, Action>, ObjectIdentifier, SingleTaskView>: the ID ObjectIdentifier(0x0000600003fe8b40) occurs multiple times within the collection, this will give undefined results!

Description
I have studied the latest code of ToDos and tried to improve my project. But the unexpected issue occured. I am not sure if I did something wrong.
I replace Array<Task> with IdentifiedArrayOf<Task> and replace
ForEachStore(
  store.scope(
    state: \.tasks,
    action: \.tasks
  )
) { (store) in
   SingleTaskView(store: store)
}

with
List {
      ForEach(store.scope(state: \.tasks, action: \.tasks)) { store in
        SingleTaskView(store: store)
      }
}

Then the issue occured.
Checklist

[X] I have determined whether this bug is also reproducible in a vanilla SwiftUI project.
[X] If possible, I've reproduced the issue using the main branch of this package.
[X] This issue hasn't been addressed in an existing GitHub issue or discussion.

Expected behavior
Can someone help me, Thanks
Actual behavior
ForEach<_StoreCollection<String, State, Action>, ObjectIdentifier, SingleTaskView>: the ID ObjectIdentifier(0x0000600003fe8b40) occurs multiple times within the collection, this will give undefined results!
Steps to reproduce
I tried to reassgin the value of state.todos.
The Composable Architecture version information
1.10.0
Destination operating system
macos 14.3
Xcode version information
Version 15.2 (15C500b)
Swift Compiler version information
Swift version 5.9.2

I logged state.todos and there were no identical ids.

@zhangpeibj01 In the upgrade guide we note that the 1:1 migration requires you to explicitly select the id from store state, otherwise ForEach will take the child store's object identifier:
https://pointfreeco.github.io/swift-composable-architecture/main/documentation/composablearchitecture/migratingto1.7#Replacing-ForEachStore-with-ForEach
So you should update your code for a true comparison:
 ForEach(
-  store.scope(state: \.tasks, action: \.tasks)
+  store.scope(state: \.tasks, action: \.tasks), id: \.state.id
 ) { store in
   SingleTaskView(store: store)
 }

I'm going to convert this to a discussion since it doesn't appear to be a bug with the library, but if you do think you've encountered a bug, please provide a sample project that reproduces the issue. Without it we won't be able to troubleshoot the problem.


update gradle and android gradle plugin versions

Task/Issue URL: https://app.asana.com/0/414730916066338/1200759779300446/f
Tech Design URL:
CC:
Description:
Updates Gradle version, as well as the AGP version.
ℹ  Requires >= JDK 11 to be used when building the app. This is bundled by default in newer Android Studio versions but might require configuring on the command line
Steps to test this PR:

Build the project in Android Studio
Build the project from command line: ./gradlew clean assemblePD

Internal references:
Software Engineering Expectations
Technical Design Template

@CDRussell FYI CI failed here

Reminder that we're waiting on stable IntelliJ support for AGP 7 before merging this (status tracked in this task)


ModPagespeedFilters in_place_optimize_for_browser

hai.
https://github.com/pagespeed/mod_pagespeed/blob/dba56f4b1338a12ba52cbb75da309ac8fb835eb5/install/modpagespeed.com-configuration-example.conf#L209
STR: uncomment it, save file and try apache2ctl -t
shouldn't it be # ModPagespeedEnableFilters in_place_optimize_for_browser?

Yes; exactly right.  Good catch.


MacApp: add site-packages to jedi configuration

Description of Changes

[x] Wrote at least one-line docstrings (for any new functions)
[x] Added unit test(s) covering the changes (if testable)

[x] Included a screenshot or animation (if affecting the UI, see Licecap)

When launching Spyder from non-conda environments, jedi does not add site-packages for target conda environments properly (see davidhalter/jedi#1540).
I've added the site-package for the target environment to the extra_paths configuration for jedi.
Issue(s) Resolved

Fixes #12259
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct:
@mrclary

Great work finding the problem for this one @mrclary!
Please rebase this and all your other pending PRs so you can get the fixes to our tests.

Hello @mrclary! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/plugins/completion/languageserver/plugin.py:

Line 610:17: E129 visually indented line with same indent as next logical line

In the file spyder/utils/programs.py:

Line 146:13: E129 visually indented line with same indent as next logical line

Hi @mrclary thanks for working on this. After 4.1.3 is release we are working to get all these PRs merged so we can start working also on installers on our side ;-)
Sorry for the lack of response in the past weeks. Cheers!

@mrclary is there any testing we could add for these changes?

@goanpeca , thanks for reviewing the code and I'll be happy to address your suggestions. However, before I do, let me ask how 'future proof' do we want to be? This PR is just a kluge for a bug in jedi (davidhalter/jedi#1540) which is already fixed. I did not expect the changes in this PR to be permanent, but to be removed as soon as python-language-server adopts the next latest version of jedi (>0.17.0)

@mrclary so, anything that is temporal please let's add a TODO:  or FIXME:  tags. Also please open issue to keep track of the fix that we need to revert once jedi is updated?
For the rest that is not patch work on jedi, let's add tests :-)

@mrclary so, anything that is temporal please let's add a TODO:  or FIXME:  tags. Also please open issue to keep track of the fix that we need to revert once jedi is updated?
For the rest that is not patch work on jedi, let's add tests :-)

Got it. I really don't see any use for get_python_site_packages outside of this kluge, so I will forgo tests for that.

I think this is ready

I think this is ready @ccordoba12, should we create the 4.1.x branch and merge this to 4.x ?

This PR is obsolete with the advent of Jedi 0.17.1


Gradients are not kept in intermediate unreferenced variables even when Variable.backward() is called with retain_grad=True

Target Chainer version: v3.3.0, v4.0.0b3
According to the document of [Variable.backward](file:///Users/oonokenta/dev/chainer2/docs/build/html/reference/core/generated/chainer.Variable.html#chainer.Variable.backward), gradients of intermediate variables should be kept when retain_grad option is True. But they are not in some case:
import chainer
import chainer.functions as F
import numpy as np

print(chainer.__version__)
x = chainer.Variable(np.ones((5, 5), np.float32))
y = x + 1  # (1)
# (2)
y = F.sum(y)
y.backward(retain_grad=True)
target = y.creator.inputs[0]  # Note that target is VariableNode, not Variable.

assert target.get_variable_or_none() is None
assert target.grad is None
assert float(x.grad.sum()) == 25.0  # Gradient of the input variable is computed correctly.

I guess it is because Variable made in the line (1) is not referenced any more when backward is called and is freed. Actually when we insert z = y in (2), the first assertion is violated. Note that Variable.creator and FunctionNode.inputs have documents, although it is not registered in RTD. Therefore, it seems to me y.creator.inputs[0] should be considered as a valid operation.

bump

Hi! I also had a situation where I want to get grads of an intermediate Variable(Node) from a computational graph.
Ideally I do think we should modify or extend the network implementation so that we can get activations (intermediate Variable) like what chainer's ImageNets and chainercv's PickableSequentialChain do.
In case I don't want to modify the code of the network (e.g. it's from pip-installed library or very complicated implementation etc), that could be infeasible.

I feel we should explicitly note how to retrieve the retained gradients after calling backward(retain_grad=True).

Does this mean that the gradients are actually kept somewhere regardless of Variables' lifetime, although currently the document just doesn't explain how to do that?


support also action servers and clients

enables behavior trees from Nav2 to be access by Pilot

At the moment, we are dropping the plans to bridge Nav2 and Pilot. The focus now would be bridge the communication between the frameworks. Later when the situation arises, then we'll take a look at it once again.
But the issue is still valid, since other hardware like Elite arms requires ROS actions for the goals to be set from the application code. A demo of that would be idle to showcase that Pilot can be also used for mobile manipulators.


README link to documentation Broken

In the Documentation section of README.rst, the link to online help is broken. It's currently pointing to:
https://github.com/RobotLocomotion/director/blob/master/tree/master/docs/director/README.md

GitHub changed their URL scheme, but we've also deprecated this Markdown README (cf. #120, #121).  I've updated the link to reflect - cf. https://github.com/RobotLocomotion/director/pull/267


Docs link from datahub cloud should open relevant page

At the moment, if i click on "Read the guide" link on the left bottom, it goes to https://datahub.io/docs which then has 3 links. This is confusing because I'm not sure which one to click next... I believe it is obvious that I'm interested in DataHub Cloud docs since I'm coming from DataHub Cloud dashboard so I want to land on https://datahub.io/docs/DataHub+Cloud
Screenshot of the link (see the bottom):

FIXED


Upgrade guide for pixel sizes

Background
Update docs for https://github.com/uber/deck.gl/pull/1699
Change List

What's new
Upgrade guide

Looks like a similar Travis CI failure to https://github.com/uber/kepler.gl/pull/71 , something seems to be up with Travis CI's apt .


Project files can't be open from search results

Repro:

Create .NET Core App
Use VS search in files to search for "SDK" in the .csproj file
Double-click on the search result in "Find Results" window

---------------------------
Microsoft Visual Studio
---------------------------
The document '...\ConsoleApp38\ConsoleApp38\ConsoleApp38.csproj' is already open as a project or a solution and cannot be opened in an editor at this time.
---------------------------
OK
---------------------------

Dup'ing against https://github.com/dotnet/roslyn-project-system/issues/35.


Remove Ruby 1.8.7 from Travis CI

See https://github.com/boxen/puppet-boxen/commit/2abbcaac4bc64d5c15ccc08a913005c48eb44d2f for reference.
Is there any reason we want to keep 1.8.7, and should dive into why the tests are failing?
/cc @rafaelfranca @mikemcquaid

Ruby is used 1.8.7 because it's the Ruby version used by OS X 10.8. I think Boxen should (like Homebrew does) endeavour to support the current and previous two versions of OS X. I may be in the minority here and am happy to have other folks disagree.

I'm with @mikemcquaid. I'm not using 10.8 but I know some folks in my team that are still on this version. I think it is better to keep tests running against 1.8.7

Then should we add it back to puppet-boxen?

@tarebyte :+1:


Add toJSON to vnodes

I wanted to be able to send vnodes to the server and needed to convert them to JSON. The elm properties creates circular references that break JSON.stringify. This pr adds the needed method.

Hi @hath995, I believe you could implement this function as a thisless function, taking the vnode as argument and returning the jsonvnode. Additionally, it doesn't need to be in snabbdom proper, you could make it be its own library.

Could you elaborate more, I was under the impression that toJSON is a magic method which is used by JSON.stringify on objects and is therefor mandatory. I also tried to make this update initially by directly patching vnode externally but that didn't work, probably because other snabbdom components had a reference to the original function which did not have the toJSON method.

I was under the impression that toJSON is a magic method which is used by JSON.stringify on objects and is therefor mandatory

Oh, I didn't know about that.
I'll let other people comment on this pull request, then.

An alternative that might have better performance.
export type Key = string | number;
export type JsonVNode = Pick<VNode, Exclude<keyof VNode, "elm" | "toJSON">>;

export interface VNode {
  sel: string | undefined;
  data: VNodeData | undefined;
  children: Array<VNode | string> | undefined;
  elm: Node | undefined;
  text: string | undefined;
  key: Key | undefined;
}

export interface VNodeData {
  props?: Props;
  attrs?: Attrs;
  class?: Classes;
  style?: VNodeStyle;
  dataset?: Dataset;
  on?: On;
  hero?: Hero;
  attachData?: AttachData;
  hook?: Hooks;
  key?: Key;
  ns?: string; // for SVGs
  fn?: () => VNode; // for thunks
  args?: Array<any>; // for thunks
  [key: string]: any; // for any other 3rd party module
}

class VNodeC implements VNode {

  constructor(public sel: string | undefined,
              public data: any | undefined,
              public children: Array<VNode | string> | undefined,
              public text: string | undefined,
              public elm: Element | Text | undefined,
              public key: Key) {}

  toJSON(this: VNode): JsonVNode {
    return {
      sel: this.sel,
      data: this.data,
      children: this.children,
      text: this.text,
      key: this.key,
    };
  }
}

export function vnode(sel: string | undefined,
                      data: any | undefined,
                      children: Array<VNode | string> | undefined,
                      text: string | undefined,
                      elm: Element | Text | undefined): VNode {
  let key = data === undefined ? undefined : data.key;
  return new VNodeC(sel, data, children, text, elm, key);
}

export default vnode;

Although this was handy I found another way to do this with json.stringify resolvers.


Ipfs bazaar shop

Addition of upload/download of shops (name, description and image) possibility directly from the app.
Image and json including name, description and image hash are stored on local ipfs server. Ipfs hash of json file is then uploaded to blockchain. App users can view uploaded shops with the json hash stored within the blockchain.

@haerdib please also supply a PR for pallet so I can test

HowTo test the PR:
First, run a local IPFS node on your system. The node must have a writeable gateway node.
Step by step:

Install IPFS on your system (https://docs.ipfs.io/install/)
Change the node settings (https://docs.ipfs.io/how-to/configure-node/#addresses):

(depending on where you run your apllication): Make gateway accessible from outside:
Change "Gateway": "/ip4/<IP_ADDRESS>/tcp/8080" to: "Gateway": "/ip4/<IP_ADDRESS>/tcp/8080"
Allow POST and PUT commands:

 "Gatway": { ..
 "HTTPHeaders": {
 ...
"Access-Control-Allow-Methods": [
 				"GET",
 				"POST",
 				"PUT"
			],
		..

And change "Writable": false to  "Writable": true
Second, run a local development blockchain. The current PR is set to listen to localhost (AVD) on port 9994, AVD only. You can change the settings in lib/common/consts/settings  in function
EndpointData networkEndpointEncointerGesellDev = EndpointData.fromJson(const { ... });
Third, run the application on a mobile or AVD. In case you run it on an AVD, only change the port. <IP_ADDRESS> is the localhost for the AVD. In case you run it on a mobile, ensure that the mobile can access the hosted dev blockchain and make gateway accessible from outside (ip <IP_ADDRESS>, see above)

To test with the new master, one needs to uptdate the js types as account has been changed from AccountId -> MultiAddress


Class org.apache.spark.SparkConf is missing. Make sure that Spark and RubySpark is assembled. (Spark::JavaBridgeError)

I followed the installation steps, but got the following error when running tests. Is there anything I have missed? Thanks!
git clone ...
bundle install
rake compile
rake
bin/ruby-spark build
rake

/Users/david/.rvm/rubies/ruby-2.2.1/bin/ruby -I/Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib:/Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-support-3.3.0/lib /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb
Coverage report generated for RSpec to /Users/david/gitrepos/ruby-spark/coverage. 316 / 458 LOC (69.0%) covered.
/Users/david/gitrepos/ruby-spark/lib/spark/java_bridge/base.rb:198:in `raise_missing_class': Class org.apache.spark.SparkConf is missing. Make sure that Spark and RubySpark is assembled. (Spark::JavaBridgeError)
	from /Users/david/gitrepos/ruby-spark/lib/spark/java_bridge/rjb.rb:20:in `rescue in import'
	from /Users/david/gitrepos/ruby-spark/lib/spark/java_bridge/rjb.rb:18:in `import'
	from /Users/david/gitrepos/ruby-spark/lib/spark/java_bridge/base.rb:53:in `block in import_all'
	from /Users/david/gitrepos/ruby-spark/lib/spark/java_bridge/base.rb:52:in `each'
	from /Users/david/gitrepos/ruby-spark/lib/spark/java_bridge/base.rb:52:in `import_all'
	from /Users/david/gitrepos/ruby-spark/lib/spark.rb:214:in `load_lib'
	from /Users/david/gitrepos/ruby-spark/spec/spec_helper.rb:9:in `<top (required)>'
	from /Users/david/gitrepos/ruby-spark/spec/lib/collect_spec.rb:1:in `require'
	from /Users/david/gitrepos/ruby-spark/spec/lib/collect_spec.rb:1:in `<top (required)>'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/configuration.rb:1327:in `load'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/configuration.rb:1327:in `block in load_spec_files'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/configuration.rb:1325:in `each'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/configuration.rb:1325:in `load_spec_files'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/runner.rb:102:in `setup'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/runner.rb:88:in `run'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/runner.rb:73:in `run'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib/rspec/core/runner.rb:41:in `invoke'
	from /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/exe/rspec:4:in `<main>'
/Users/david/.rvm/rubies/ruby-2.2.1/bin/ruby -I/Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/lib:/Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-support-3.3.0/lib /Users/david/.rvm/gems/ruby-2.2.1/gems/rspec-core-3.3.1/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed

What about bin/ruby-spark shell?
If there will be the same problem please paste output from bin/ruby-spark build.

@ondra-m When trying ruby-spark before, I didn't installed spark, I only use ruby-spark build. Now I install spark again from http://spark.apache.org/ and try again, now it is working.


Minimalistic cmake infra.

This pr is more like a conversation piece. I don't expect it to get merged without changes, for that somebody needs to use cmake-init to create a nice cmake infra setup.

closing this pr because it is merged implicitly by the Linux support pr


allow blaze client to disable ssl verification

verifies the cert by default; however, we want to disable this
Side note: we might want to think about making ssl the default. There is no downside really and it helps people who might not have thought about the fact that they will be streaming potentially sensitive data over the interned.
note: wait for #1172 and then change the .get to .post

we might want to think about making ssl the default.

isn't that what you've implemented here?

or do you mean use https:// by default?

or do you mean use https:// by default?

yeah, this just makes it so that if it uses ssl with a custom cert that it doesn't check the cert. I imagine most production setups will want to serve their data with https.

@llllllllll this can be merged after fixing up conflicts and passing