Concurrent transactions with the sqlite mutexes?

I'm writing a server for a collaborative todo list. My server has to answer multiple clients through a publish/subscribe service.
For example, here is the code that updates the text of a todo entry :
db.run("BEGIN;");
var version = undefined;
try
{
    db.get("SELECT version FROM todos WHERE id = ?", [msg.id], function (err, row)
    {
        if (err) throw err;
        console.log("version : " + row.version);
        version = row.version + 1;

        db.run("UPDATE todos SET title = ?, version = ? WHERE id = ?", [msg.title, version, msg.id], function(err){
            if (err) throw err;
            db.run("COMMIT;");
            publish("broadcast", {cmd: "edit", todo: {id: msg.id, title: msg.title, version: version}});
        });
    });
}
catch (err)
{
    db.run("ROLLBACK;");
    console.log(err);
    publish(msg.sender, {err: err, request: msg});
}

The issue is this :
whenever a thread is updating a todo, a second update request can arrive and trigger the start of a new transaction, which results in an error : "cannot start a transaction from within a transaction".
It seems the easiest way to solve this would be to acquire a mutex before starting a transaction.
I didn't find a simple, convincing, way of using mutexes with node, and I'm wondering whether it would be possible to extend the node API to wrap the sqlite3_mutex_enter() and related functions?

First, I guess node.js use a single thread for this code, the main thread. The worker threads will run the SQL commands, wait for completion and then signal the main thread.
While the worker thread is waiting for a completion a new request can arrive and then it will be processed  in the main thread, that will call db.run("BEGIN") again. This causes the error.
I am wondering here whether using synchronous calls would not solve this, because this whole block would be executed and onlu
I am wondering here whether using synchronous calls would not make the code behave almost the same way as using a mutex. The whole block

Thank you for your answer.
The code I gave as an example is executed in a handler when a request is received through the network. I would therefore expect it to be executed in a worker thread...
Why wouldn't a global mutex solve the problem?
"If a new request arrives and it is in the middle of a transaction then it could save the msg in the queue"
I don't see how to do such an implementation without a mutex. You need to be able to read the state and enqueue atomically. How to watch the state of the queue?

Node.js is event loop based. Only the main thread will use your code, so there is no need to use mutex for nothing. Indeed a non-reentrant mutex could make node.js to block waiting to acquire a lock while it cannot be released by the same thread.
So you can handle the queue normally.
Suggested readings:
http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/
http://abdelraoof.com/blog/2015/10/28/understanding-nodejs-event-loop/

You can use node-mutex as it is not exactly a mutex. You can see it uses a callback.
Or push-queue.

Solution...
 Since all the operations on the db are asynchronous, the try catch up there is useless.
I discussed the matter with a colleague of mine, and it appeared I could simply get rid of the transaction :
    db.get("SELECT version FROM todos WHERE id = ?", [msg.id], function (err, row)
    {
        if (err)
        {
            console.log(err);
            publish(msg.sender, {cmd: "err", err: err, request: msg});
            return;
        }
        var newVersion = row.version + 1;
        db.run("UPDATE todos SET title = ?, version = ? WHERE id = ? AND version = ?", [msg.title, newVersion, msg.id, row.version], function(err){
            if (err)
            {
                console.log(err);
                publish(msg.sender, {cmd: "err", err: err, request: msg});
                return;
            }
            if (this.changes)
                publish("broadcast", {cmd: "edit", todo: {id: msg.id, title: msg.title, version: newVersion}});
        });


Customize event color

Would be really nice if you can add a event color in the json maybe, so each event can have their own color.

you can handle that yourself with the eventPropGetter prop 👍

When i'm using eventPropGetter it is showing error like, event.hexColor is not defined.
eventStyleGetter({event, start, end, isSelected}) {
var backgroundColor = '#' + event.hexColor;
var style = {
backgroundColor: 'green',
borderRadius: '0px',
opacity: 0.8,
color: 'black',
border: '0px',
display: 'block'
};
return {
style: style
};
}

that is because your event object needs to have an hexColor attribute to it.


Rename test option to test-framework

To avoid a confusion with the activity testing we should prolly rename the long option to testing-framework, also aligns it with the used configuration key.

What do you mean with "activity testing"?
I think we can add testing-framework as another way of saying test (like an alias)

I mean that the option test might get confused with actually running the tests though it's meant to choose a testing framework.

Sorry for the inconsistency. Fixed the option name / alias now to test-framework. See #98.


../../secrets not found

https://github.com/Berry-Pool/spacebudz/blob/73f22982f510f11a58ae83d51628aa8a7e6b78e6/src/templates/spacebud.js#L31

add secrets.js to the root folder
`const secrets = {
PROJECT_ID: 'your api key from blockfrost.io/',
}
export default secrets`


node-sass v4 compatibility

I'm using node-sass-asset-functions in one of my projects. When I upgrade node-sass to version 4.0.0 or higher, I get the following errors in my console, when I compile my .scss files:
undefined:0
TypeError: undefined is not a function
Segmentation fault: 11

I see that node-sass-asset-functions is using "node-sass": "^3.2.0" in its package.json. Are you planning to upgrade to version 4?

Wasn't planning yet, but I can check if it maybe has an easy fix. Or if you want to submit a PR for it, that's cool too :)

I cloned the node-sass-asset-functions repo and bumped up the node-sass version number to 4.5.0 in package.json, then used npm-link to test it locally with my project. Everything worked fine. So there are no issues, as long as you use the same major version of node-sass in both node-sass-asset-functions itself, as well as the project that imports the node-sass-asset-functions package.
I was planning to submit a PR, but I'm not sure what to do, since upgrading package.json to node-sass version 4.0.0 or higher would cause things to break for people who are still using 3.x in their projects... I may have to fork this repo for the time being. Any ideas?

You could allow this to have a dependency range on node-sass, like >=3.x,
which can be made more specific to exclude later versions if users report
bugs with them.
On Tue, 7 Feb 2017 at 18:17, Mark Plewis<EMAIL_ADDRESS>wrote:

I cloned the node-sass-asset-functions repo and bumped up the node-sass
version number to 4.5.0 in package.json, then used npm-link to test it
locally with my project. Everything worked fine. So there are no issues, as
long as you use the same major version of node-sass in both
node-sass-asset-functions itself, as well as the project that imports the
node-sass-asset-functions package.
I was planning to submit a PR, but I'm not sure what to do, since
upgrading package.json to node-sass version 4.0.0 or higher would cause
things to break for people who are still using 3.x in their projects... I
may have to fork this repo for the time being. Any ideas?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fetch/node-sass-asset-functions/issues/11#issuecomment-278091320,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABXOImHRelNEuYAO4AkPQlUMweBP9wtMks5raLUogaJpZM4L5Bti
.

I would go for >= 3.x < 5

Should I create a PR for this then?

Yes please 👍

I tested this locally using npm link, with the project that I'm currently working on, and it seems to be working. I tried to push my branch, but I don't have permission. The change is incredibly simple:
In package.json:
-    "node-sass": "^3.2.0"
+    "node-sass": ">= 3.x < 5"

@markplewis have a look at: https://help.github.com/articles/fork-a-repo/

I'd suggest >= 3.2 to match the current dependency as minimum :)
On Sun, 12 Feb 2017 at 11:36, Koen Punt<EMAIL_ADDRESS>wrote:

@markplewis https://github.com/markplewis have a look at:
https://help.github.com/articles/fork-a-repo/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fetch/node-sass-asset-functions/issues/11#issuecomment-279212522,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABXOIokT8uj7PTX_u2SfYoeWRwJkKmq-ks5rbu7HgaJpZM4L5Bti
.

Pull request: https://github.com/fetch/node-sass-asset-functions/pull/12

Thanks for merging my PR! Shouldn't the package be bumped up to 0.0.10 and republished to NPM though?

You're right. Released as 0.1.0


cmd/go,x/build: illumos-amd64 builder consistently failing

The illumos-amd64 builder has timed out testing cmd/go in every run since CL 473697.
Since the code involved in that change has literally no effect on illumos-amd64, I suspect that something has changed in either the builder itself or its configuration in cmd/coordinator to cause the test to become much slower.

Looking at a few of the failures, it's not just cmd/go — there have also been timeouts in at least runtime and testing.

As an initial note on this: nothing about the builder has changed to the best of my knowledge, unless AWS have moved it onto a defective or noisy host somehow.

I will investigate!

I believe disk space exhaustion was caused by the build-up of files in $HOME/.cache/gopls...
ncdu 1.15.1 ~ Use the arrow keys to navigate, press ? for help
--- /home/gobuild/.cache -------------------------------------------------------
                         /..
   18.1 GiB [##########] /gopls
  133.7 MiB [          ] /staticcheck
   40.8 MiB [          ] /go-build
   17.0 KiB [          ] /screentest

 Total disk usage:  18.3 GiB  Apparent size:   6.0 GiB  Items: 1406542

Should these files be deleted automatically after the job completes?  Can I delete them now?

NB: in the interim I have activated the warm standby VM here which obviously doesn't (yet!) have a full disk, and appears to be processing jobs OK.

@jclulow, it appears that the illumos-amd64 builder is completely disconnected from the coordinator at the moment.

@jclulow, it appears that the illumos-amd64 builder is completely disconnected from the coordinator at the moment.

Oh no!
I'm looking at it now, and the issue appears to be that the buildlet user has consumed all 10G of its quota.  (I set the quota to less than the VM disk size on this one, after the last builder filled the entire disk in the machine making it harder to manage.)
I'm running ncdu at the moment, which is taking a while because there are a lot of tiny files.  They are once again concentrated in /home/gobuild/.cache/gopls like last time.
@bcmills What is responsible for managing the contents of $HOME/.cache/gopls?  Should these files be deleted automatically after the job completes?  Can I delete them now?

@heschi I thought we already did this in https://go.dev/cl/494297? Does that miss something?

Hm. Forgot about that. @jclulow, does this machine auto-update the buildlet?

Hm. Forgot about that. @jclulow, does this machine auto-update the buildlet?

We run the stage0 binary under our service manager, so, if that auto-updates the buildlet then it should do that yes.  Indeed it was, when I looked at it, trying to do that but the disk was full so it was unable.  It's also been offline for a while, it seems, so maybe that fix happened after the outage started?
I'm currently clearing out .cache/gopls to make room and I'll kick it off after that and we'll see!

I have re-enabled the thing and it obtained a new buildlet and is ostensibly doing work now.


After BEGIN goroutine 2 bt gdb starts eating all memory quickly. After killing gdb, I get fatal error: runtime: split stack overflow
MemTotal:        3954352 kB
Linux pebbe.xs4all.nl 2.6.32-5-amd64 #1 SMP Sat Jul 12 16:47:57 UTC 2014 x86_64 GNU/Linux
go version devel +6b24da6 Sun Jun 14 01:52:54 2015 +0000 linux/amd64
GNU gdb (GDB) 7.6

Thanks for the report. The out of control memory use really smells like a bug in gdb, but I'll dig in to this a bit to see if I can figure out anything more concrete.

After killing gdb, I get fatal error: runtime: split stack overflow

This part isn't surprising. "goroutine 2 bt" works by temporarily modifying the thread's PC and SP registers to trick gdb into generating the backtrace we want. It's supposed to set them back after the backtrace, but if gdb dies before that happens, the Go process will resume with one thread's PC and SP and all other state (including the expected stack bounds) from another thread. As soon as it reaches a stack growth check, it will detect an "out of bounds" SP. It could easily die in more spectacular ways, too.

@peterGo, @pebbe: Can either of you run gdb in gdb and find out where it is when it's spiraling out of control? I spent several hours bringing up an Ubuntu VM with an old enough kernel to reproduce this and now that I have one that works, gcc is crashing in it when I try to bootstrap the Go build. I think I should quit while I still have some hair left.

I have no idea how to do that.

I was able to bring up a 3.2.0 kernel and gdb 7.4 in a VM, but unfortunately I wasn't able to reproduce this problem.
@pebbe, @peterGo, I believe the following sequence should get the backtrace of gdb I requested. If possible, please install debug symbols for gdb first. Unfortunately (and ironically), it looks like Ubuntu doesn't ship debug symbols for gdb. @pebbe, I'm not sure what you're running, so I wasn't able to check.
cat >/tmp/test.go <<EOF
package main
import "fmt"
func main() {
	mapvar := make(map[string]string,5)
	mapvar["abc"] = "def"
	mapvar["ghi"] = "jkl"
	strvar := "abc"
	ptrvar := &strvar
	fmt.Println("hi") // line 10
	_ = ptrvar
}
EOF
go build /tmp/test.go
gdb -ex run --args gdb -nx -ex "br test.go:10" -ex run -ex "goroutine 2 bt" test

When this starts spiraling out of control (presumably almost immediately), hit Ctrl-c. This should drop into the outer gdb. Do a "bt" to get the stack trace of the inner gdb and paste in the output.

I'm using Debian 6.
go version devel +d16c7f8 Thu Jul 2 03:43:34 2015 +0000 linux/amd64
(peter) ~ gdb -ex run --args gdb -nx -ex "br test.go:10" -ex run -ex "goroutine 2 bt" test
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /my/opt/gdb-7.6/bin/gdb...done.
Starting program: /my/opt/gdb-7.6/bin/gdb -nx -ex br\ test.go:10 -ex run -ex goroutine\ 2\ bt test
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/peter/test...done.
warning: File "/my/opt/go/src/runtime/runtime-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
        add-auto-load-safe-path /my/opt/go/src/runtime/runtime-gdb.py
line to your configuration file "/home/peter/.gdbinit".
To completely disable this security protection add
        set auto-load safe-path /
line to your configuration file "/home/peter/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
        info "(gdb)Auto-loading safe path"
Breakpoint 1 at 0x400e60: test.go:10. (2 locations)
Starting program: /home/peter/test

Breakpoint 1, main.init () at /tmp/test.go:11
11      }
Undefined command: "goroutine".  Try "help".
(gdb) quit
A debugging session is active.

        Inferior 1 [process 20505] will be killed.

Quit anyway? (y or n) y
[Inferior 1 (process 20500) exited normally]
(gdb) quit
(peter) ~

This is my .gdbinit :
set auto-load safe-path /
add-auto-load-safe-path /my/opt/go/src/runtime/runtime-gdb.py

@pebbe, sorry, remove the "-nx" from that command line. That told gdb not to load ~/.gdbinit.

(peter) ~ gdb -ex run --args gdb -ex "br test.go:10" -ex run -ex "goroutine 2 bt" test
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /my/opt/gdb-7.6/bin/gdb...done.
Starting program: /my/opt/gdb-7.6/bin/gdb -ex br\ test.go:10 -ex run -ex goroutine\ 2\ bt test
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/peter/test...done.
Loading Go Runtime support.
Breakpoint 1 at 0x400e60: test.go:10. (2 locations)
Starting program: /home/peter/test

Breakpoint 1, main.init () at /tmp/test.go:11
11      }
^C
Program received signal SIGINT, Interrupt.
0x00007ffff6715e4e in ?? () from /lib/libc.so.6
(gdb) bt
#0  0x00007ffff6715e4e in ?? () from /lib/libc.so.6
#1  0x00007ffff6716f72 in calloc () from /lib/libc.so.6
#2  0x0000000000682109 in xcalloc (number=1, size=136) at ./common/common-utils.c:91
#3  0x0000000000544863 in allocate_value_lazy (type=0x1211130) at value.c:663
#4  0x0000000000544ead in value_from_contents_and_address (type=0x1211130, valaddr=0x0, address=859530504024)
    at value.c:3141
#5  0x000000000054fbc6 in get_value_at (type=0x1211130, addr=859530504024, lazy=1) at valops.c:916
#6  0x000000000054fe9d in value_ind (arg1=<optimized out>) at valops.c:1768
#7  0x0000000000551d24 in value_struct_elt (argp=0x7fffffffc758, args=0x0, name=0x10eec60 "tab",
    static_memfuncp=0x0, err=0x0) at valops.c:2352
#8  0x00000000004f984c in valpy_getitem (self=<optimized out>, key=<optimized out>) at ./python/py-value.c:532
#9  0x00007ffff6d1ef02 in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#10 0x00007ffff6d22fb0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#11 0x00007ffff6d212eb in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#12 0x00007ffff6d22fb0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#13 0x00007ffff6ca8c30 in ?? () from /usr/lib/libpython2.6.so.1.0
#14 0x00007ffff6c7b383 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#15 0x00007ffff6c7f4d6 in PyObject_CallFunctionObjArgs () from /usr/lib/libpython2.6.so.1.0
#16 0x00000000004f2033 in search_pp_list (list=0x7ffff7eaa2d8, value=0x7ffff7eb4b70)
    at ./python/py-prettyprint.c:79
#17 0x00000000004f20fe in find_pretty_printer_from_objfiles (value=<optimized out>)
    at ./python/py-prettyprint.c:115
#18 find_pretty_printer (value=0x7ffff7eb4b70) at ./python/py-prettyprint.c:191
#19 0x00000000004f283c in apply_val_pretty_printer (type=<optimized out>, valaddr=0x10eecf0 "x",
    embedded_offset=<optimized out>, address=<optimized out>, stream=0x10ef090, recurse=<optimized out>,
    val=0x10ef1e0, options=0x7fffffffd080, language=0x7df9a0 <go_language_defn>)
    at ./python/py-prettyprint.c:732
#20 0x000000000055a340 in val_print (type=<optimized out>, valaddr=<optimized out>,
    embedded_offset=<optimized out>, address=<optimized out>, stream=<optimized out>, recurse=<optimized out>,
    val=0x10ef1e0, options=0x7fffffffd080, language=0x7df9a0 <go_language_defn>) at valprint.c:761
#21 0x000000000055a968 in common_val_print (val=0x10ef1e0, stream=0x10ef090, recurse=2,
    options=0x7fffffffd080, language=0x7df9a0 <go_language_defn>) at valprint.c:840
#22 0x000000000058ddd4 in print_frame_arg (arg=<optimized out>) at stack.c:283
#23 0x000000000058f004 in print_frame_args (func=<optimized out>, frame=<optimized out>, num=<optimized out>,
    stream=<optimized out>) at stack.c:647
#24 0x000000000058ff1d in print_frame (frame=<optimized out>, print_level=1, print_what=LOCATION,
    print_args=1, sal=...) at stack.c:1171
#25 0x0000000000590315 in print_frame_info (frame=0xbf0f90, print_level=1, print_what=LOCATION, print_args=1)
    at stack.c:826
#26 0x00000000005908e5 in backtrace_command_1 (count_exp=<optimized out>, show_locals=0, from_tty=0)
    at stack.c:1730
#27 0x0000000000590cc3 in backtrace_command (arg=0x0, from_tty=<optimized out>) at stack.c:1819
#28 0x0000000000656108 in execute_command (p=0x13a22b2 "", from_tty=0) at top.c:484
#29 0x00000000004e6f5f in execute_gdb_command (self=<optimized out>, args=<optimized out>, kw=<optimized out>)
---Type <return> to continue, or q <return> to quit---
    at ./python/python.c:554
#30 0x00007ffff6d21270 in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#31 0x00007ffff6d22fb0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#32 0x00007ffff6ca8c30 in ?? () from /usr/lib/libpython2.6.so.1.0
#33 0x00007ffff6c7b383 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#34 0x00007ffff6c8cd6f in ?? () from /usr/lib/libpython2.6.so.1.0
#35 0x00007ffff6c7b383 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#36 0x00007ffff6c7f182 in PyObject_CallMethodObjArgs () from /usr/lib/libpython2.6.so.1.0
#37 0x00000000004eba0c in cmdpy_function (command=<optimized out>, args=<optimized out>, from_tty=1)
    at ./python/py-cmd.c:148
#38 0x0000000000656108 in execute_command (p=0x7fffffffe394 "t", from_tty=1) at top.c:484
#39 0x0000000000594eef in catch_command_errors (command=<optimized out>, arg=<optimized out>,
    from_tty=<optimized out>, mask=<optimized out>) at exceptions.c:573
#40 0x00000000005971de in captured_main (data=<optimized out>) at main.c:1017
#41 0x0000000000594f8b in catch_errors (func=<optimized out>, func_args=<optimized out>,
    errstring=<optimized out>, mask=<optimized out>) at exceptions.c:546
#42 0x00000000005964a4 in gdb_main (args=0x88) at main.c:1050
#43 0x000000000046072e in main (argc=<optimized out>, argv=0x88) at gdb.c:34
(gdb) quit
A debugging session is active.

        Inferior 1 [process 3763] will be killed.

Quit anyway? (y or n) y
(peter) ~ runtime: newstack sp=0xc82002a780 stack=[0xc820040000, 0xc820041fc0]
        morebuf={pc:0x428828 sp:0xc82002a790 lr:0x0}
        sched={pc:0x4153b0 sp:0xc82002a788 lr:0x0 ctxt:0x0}
runtime: gp=0xc820000180, gp->status=0x4
 runtime: split stack overflow: 0xc82002a780 < 0xc820040000
fatal error: runtime: split stack overflow

runtime stack:
runtime.throw(0x5207a0, 0x1d)
        /my/opt/go/src/runtime/panic.go:527 +0x96
runtime.newstack()
        /my/opt/go/src/runtime/stack1.go:746 +0x8de
runtime.morestack()
        /my/opt/go/src/runtime/asm_amd64.s:330 +0x82

goroutine 1 [stack growth, locked to thread]:
runtime.startGC(0x1)
        /my/opt/go/src/runtime/mgc.go:785 fp=0xc82002a790 sp=0xc82002a788
runtime.forcegchelper()
        /my/opt/go/src/runtime/proc.go:157 +0xf8 fp=0xc82002a7c0 sp=0xc82002a790
runtime.goexit()
        /my/opt/go/src/runtime/asm_amd64.s:1696 +0x1 fp=0xc82002a7c8 sp=0xc82002a7c0

(peter) ~

Thanks @pebbe. Could I get you to try another thing? Run the gdb-in-gdb again, but after the backtrace, run the "finish" gdb command repeatedly until it freezes again. This will cause gdb to run to the completion of each function in the backtrace, one at a time. Once you've unwound far enough, you'll reach whatever function is going off the deep end, which won't return from the "finish".

I think we should simply disable the test in the release.  This test may possibly help Go developers but it's useless for people building Go.  We can re-enable it for Go 1.6.

Breakpoint 1, main.init () at /tmp/test.go:11
11      }
^C
Program received signal SIGINT, Interrupt.
0x00007ffff66d3190 in sigprocmask () from /lib/libc.so.6
(gdb) finish
Run till exit from #0  0x00007ffff66d3190 in sigprocmask () from /lib/libc.so.6
0x00007ffff66d2cd5 in ?? () from /lib/libc.so.6
(gdb) finish
Run till exit from #0  0x00007ffff66d2cd5 in ?? () from /lib/libc.so.6
0x0000000000665f7c in value_rtti_type (v=<optimized out>, full=<optimized out>, top=<optimized out>,
    using_enc=<optimized out>) at cp-abi.c:118
118     cp-abi.c: Bestand of map bestaat niet.
(gdb) finish
Run till exit from #0  0x0000000000665f7c in value_rtti_type (v=<optimized out>, full=<optimized out>,
    top=<optimized out>, using_enc=<optimized out>) at cp-abi.c:118
value_full_object (argp=0x7e111630, rtype=<optimized out>, xfull=<optimized out>, xtop=<optimized out>,
    xusing_enc=<optimized out>) at valops.c:3607
3607    valops.c: Bestand of map bestaat niet.
Value returned is $1 = (struct type *) 0x0
(gdb) finish
Run till exit from #0  value_full_object (argp=0x7e111630, rtype=<optimized out>, xfull=<optimized out>,
    xtop=<optimized out>, xusing_enc=<optimized out>) at valops.c:3607
0x0000000000551d24 in value_struct_elt (argp=0x7fffffffc748, args=0x0, name=0x10ef2a0 "tab",
    static_memfuncp=0x0, err=0x0) at valops.c:2352
2352    in valops.c
Value returned is $2 = (struct value *) 0x7e111630
(gdb) finish
Run till exit from #0  0x0000000000551d24 in value_struct_elt (argp=0x7fffffffc748, args=0x0,
    name=0x10ef2a0 "tab", static_memfuncp=0x0, err=0x0) at valops.c:2352
^C
Program received signal SIGINT, Interrupt.
0x00007ffff6715e4e in ?? () from /lib/libc.so.6
(gdb) bt
#0  0x00007ffff6715e4e in ?? () from /lib/libc.so.6
#1  0x00007ffff6716f72 in calloc () from /lib/libc.so.6
#2  0x0000000000682109 in xcalloc (number=1, size=240) at ./common/common-utils.c:91
#3  0x0000000000594e32 in exceptions_state_mc_init (exception=0x7fffffffc660, mask=240) at exceptions.c:89
#4  0x0000000000665f6f in value_rtti_type (v=<optimized out>, full=<optimized out>, top=0x0,
    using_enc=0x9ac53030) at cp-abi.c:118
#5  0x000000000054fd94 in value_full_object (argp=0x9ac52eb0, rtype=<optimized out>, xfull=<optimized out>,
    xtop=<optimized out>, xusing_enc=-157290616) at valops.c:3604
#6  0x0000000000551d24 in value_struct_elt (argp=0x7fffffffc748, args=0x0, name=0x10ef2a0 "tab",
    static_memfuncp=0x0, err=0x0) at valops.c:2352
#7  0x00000000004f984c in valpy_getitem (self=<optimized out>, key=<optimized out>) at ./python/py-value.c:532
#8  0x00007ffff6d1ef02 in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#9  0x00007ffff6d22fb0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#10 0x00007ffff6d212eb in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#11 0x00007ffff6d22fb0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#12 0x00007ffff6ca8c30 in ?? () from /usr/lib/libpython2.6.so.1.0
#13 0x00007ffff6c7b383 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#14 0x00007ffff6c7f4d6 in PyObject_CallFunctionObjArgs () from /usr/lib/libpython2.6.so.1.0
#15 0x00000000004f2033 in search_pp_list (list=0x7ffff7eaa2d8, value=0x7ffff7eb4b70)
    at ./python/py-prettyprint.c:79
#16 0x00000000004f20fe in find_pretty_printer_from_objfiles (value=<optimized out>)
    at ./python/py-prettyprint.c:115
#17 find_pretty_printer (value=0x7ffff7eb4b70) at ./python/py-prettyprint.c:191
#18 0x00000000004f283c in apply_val_pretty_printer (type=<optimized out>, valaddr=0x10ef330 "x",
    embedded_offset=<optimized out>, address=<optimized out>, stream=0x10ef230, recurse=<optimized out>,
    val=0x10ef430, options=0x7fffffffd070, language=0x7df9a0 <go_language_defn>)
    at ./python/py-prettyprint.c:732
#19 0x000000000055a340 in val_print (type=<optimized out>, valaddr=<optimized out>,
    embedded_offset=<optimized out>, address=<optimized out>, stream=<optimized out>, recurse=<optimized out>,
    val=0x10ef430, options=0x7fffffffd070, language=0x7df9a0 <go_language_defn>) at valprint.c:761
#20 0x000000000055a968 in common_val_print (val=0x10ef430, stream=0x10ef230, recurse=2,
    options=0x7fffffffd070, language=0x7df9a0 <go_language_defn>) at valprint.c:840
#21 0x000000000058ddd4 in print_frame_arg (arg=<optimized out>) at stack.c:283
#22 0x000000000058f004 in print_frame_args (func=<optimized out>, frame=<optimized out>, num=<optimized out>,
    stream=<optimized out>) at stack.c:647
#23 0x000000000058ff1d in print_frame (frame=<optimized out>, print_level=1, print_what=LOCATION,
    print_args=1, sal=...) at stack.c:1171
#24 0x0000000000590315 in print_frame_info (frame=0xbf0f90, print_level=1, print_what=LOCATION, print_args=1)
    at stack.c:826
#25 0x00000000005908e5 in backtrace_command_1 (count_exp=<optimized out>, show_locals=0, from_tty=0)
    at stack.c:1730
#26 0x0000000000590cc3 in backtrace_command (arg=0x0, from_tty=<optimized out>) at stack.c:1819
#27 0x0000000000656108 in execute_command (p=0x10f2a92 "", from_tty=0) at top.c:484
#28 0x00000000004e6f5f in execute_gdb_command (self=<optimized out>, args=<optimized out>, kw=<optimized out>)
---Type <return> to continue, or q <return> to quit---
    at ./python/python.c:554
#29 0x00007ffff6d21270 in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#30 0x00007ffff6d22fb0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#31 0x00007ffff6ca8c30 in ?? () from /usr/lib/libpython2.6.so.1.0
#32 0x00007ffff6c7b383 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#33 0x00007ffff6c8cd6f in ?? () from /usr/lib/libpython2.6.so.1.0
#34 0x00007ffff6c7b383 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#35 0x00007ffff6c7f182 in PyObject_CallMethodObjArgs () from /usr/lib/libpython2.6.so.1.0
#36 0x00000000004eba0c in cmdpy_function (command=<optimized out>, args=<optimized out>, from_tty=1)
    at ./python/py-cmd.c:148
#37 0x0000000000656108 in execute_command (p=0x7fffffffe38e "t", from_tty=1) at top.c:484
#38 0x0000000000594eef in catch_command_errors (command=<optimized out>, arg=<optimized out>,
    from_tty=<optimized out>, mask=<optimized out>) at exceptions.c:573
#39 0x00000000005971de in captured_main (data=<optimized out>) at main.c:1017
#40 0x0000000000594f8b in catch_errors (func=<optimized out>, func_args=<optimized out>,
    errstring=<optimized out>, mask=<optimized out>) at exceptions.c:546
#41 0x00000000005964a4 in gdb_main (args=0xf0) at main.c:1050
#42 0x000000000046072e in main (argc=<optimized out>, argv=0xf0) at gdb.c:34
(gdb) quit

I have (had) the same.
uname -a: Linux shuttle 3.13-1-amd64 #1 SMP Debian 3.13.7-1 (2014-03-25) x86_64 GNU/Linux
Updating gdb from GNU gdb (GDB) 7.6.2 (Debian 7.6.2-1.1+b1) to GNU gdb (Debian 7.7.1+dfsg-5) 7.7.1 'fixed' this. Kernel stayed the same. This is Debian jessie/sid.


figure out ember-template-import integration (gts,gjs)

https://github.com/ember-template-imports/ember-template-imports

fixed here: https://github.com/lifeart/demo-ember-vite/commit/867f0ecf5c7aa08a4d29b8d2bb173c844ffc6e0d

Nice 👍


Hover won't work on custom extension after 1.59.1 on Linux

Issue Type: Bug
I am actually trying to make a VSCode extension (yales2)  that will provide hover functionality. I had managed to make it work but since the last release of VSCode (1.59.1) it doesn't work anymore on Linux computers (I have tested on Ubuntu and CentOS), but it still works on Windows and MacOS. I tried to downgrade VSCode on Ubuntu (installed 1.58.2) and once again it was working perfectly.  Here is my client js file (./client/extension.js):
const vscode = require('vscode');

function activate(context) {

    console.log('Congratulations, your extension of YALES2 is now active!');
    console.warn('Congratulations, your extension of YALES2 is now active!')
    let disposable = vscode.commands.registerCommand('extension.mamar', () => {
        vscode.window.showInformationMessage("Hover");
    });

    context.subscriptions.push(disposable);

    disposable = vscode.languages.registerHoverProvider('yales2', {
        provideHover(document, position, token) {

            const range = document.getWordRangeAtPosition(position);
            const word = document.getText(range);
            if (word=="wordTriggeringHover") {
                return new vscode.Hover({ language: "yales2", value: 'Message to show on Hover'});
            }
        }
    });

    context.subscriptions.push(disposable)
}

function deactivate() { }

module.exports = {
    activate,
    deactivate
}

And on my package.json I have writen:
"activationEvents": [
        "onCommand:extension.mamar",
        "onLanguage:yales2"
     ],
     "main": "./client/extension.js",
     "contributes": {
        "capabilities": {
            "hoverProvider": "true"
        }

VS Code version: Code 1.58.2 (c3f126316369cd610563c75b1b1725e0679adfb3, 2021-07-14T22:30:16.440Z)
OS version: Linux x64 5.11.0-31-generic
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (12 x 2200)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onrasterization: disabled_softwareskia_renderer: enabled_onvideo_decode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
0, 0, 0

Memory (System)
7.61GB (2.02GB free)

Process Argv
--unity-launch --crash-reporter-id ca2799ce-c36c-47ec-9353-c09c16714e50

Screen Reader
no

VM
0%

DESKTOP_SESSION
ubuntu

XDG_CURRENT_DESKTOP
Unity

XDG_SESSION_DESKTOP
ubuntu

XDG_SESSION_TYPE
x11

Extensions (27)

Extension
Author (truncated)
Version

vscode-log-viewer-gb2312
And
0.9.1

npm-intellisense
chr
1.4.0

yales2
COR
0.0.1

vscode-html-css
ecm
1.10.2

matlab
Gim
2.0.1

h5-code
gre
0.0.4

fortran-ls
han
0.6.2

latex-workshop
Jam
8.20.2

plantuml
jeb
2.15.1

linter-gfortran
krv
2.3.0

scilab
mam
0.0.2

python
ms-
2021.8.1159798656

vscode-pylance
ms-
2021.8.2

jupyter
ms-
2021.8.1236758218

cpptools
ms-
1.6.0

hexeditor
ms-
1.8.2

vsliveshare
ms-
1.0.4761

java
red
0.81.0

open-in-browser
tec
2.0.0

html-preview-vscode
tht
0.2.5

vscodeintellicode
Vis
1.2.14

vscode-java-debug
vsc
0.35.0

vscode-java-dependency
vsc
0.18.6

vscode-java-pack
vsc
0.18.4

vscode-java-test
vsc
0.31.3

vscode-maven
vsc
0.33.0

JavaScriptSnippets
xab
1.8.0

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383:30185418
vspyt653:30270858
pythonvspyt602:30300191
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyt639:30300192
pythontb:30283811
pythonvspyt551cf:30345471
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
pythonvsuse255:30340121
vscod805:30301674
pythonvspyt200:30340761
vscextlangct:30333562
binariesv615:30325510
pythonvssor306:30344512
bridge0708:30335490
vstre464cf:30350173
bridge0723:30353136
vsdyn321cf:30356811

Does this mean that the problem comes from my extension? And if yes would you have references for which would be the right way to make hover for language extensions?

For me the problem is everywhere, not just extensions

I still haven't found a solution so if someone has something to propose I would be grateful!

Hover issue LSP implementation on vscode - client side implementation
Can someone help me with this issue?

@atsetoglou I have tried with the initial steps in a fresh xubuntu 20.04 install and the following works for me:

package.json:

{
    "name": "131667",
    "publisher": "alex",
    "version": "0.0.1",
    "engines": {
        "vscode": "^1.22.0"
    },
    "activationEvents": ["onLanguage:fooLang"],
    "main": "main.js",
    "contributes": {
        "languages": [{
            "extensions": [
                ".foo"
            ],
            "id": "fooLang"
        }]
    }
}

main.js:

const vscode = require('vscode');

exports.activate = function(context) {
    vscode.languages.registerHoverProvider('fooLang', {
        provideHover(document, position, token) {
            const range = document.getWordRangeAtPosition(position);
            const word = document.getText(range);
            if (word=="wordTriggeringHover") {
                return new vscode.Hover({
                    language: "fooLang",
                    value: 'Message to show on Hover'
                });
            }
        }
    });
};

creating a file test.foo with the word wordTriggeringHover works for me:

I am closing the issue cause I found the problem. The problem was that I was proposing multiple hovers depending on the detected word and I was doing that by using if else if so at the end I had memory issues.


Error - file extension not supported & Mandatory column(s) {'Reel'} not found in csv file.

@arjunprakash027
@samplue Reports the following issue with 1.3.2 when he is trying to upload a data set to his Notion Database.
INFO: CSV2Notion Neo version 1.3.2
INFO: Validating csv & csv2notion_neo.notion DB schema
WARNING: Inconsistent number of columns detected. Excess columns will be truncated.
ERROR: Error at division
Traceback (most recent call last):
  File "csv2notion_neo/cli.py", line 53, in cli
  File "csv2notion_neo/cli_steps.py", line 53, in convert_csv_to_notion_rows
  File "csv2notion_neo/notion_preparator.py", line 43, in prepare
  File "csv2notion_neo/notion_preparator.py", line 81, in _validate_mandatory_columns
csv2notion_neo.utils_exceptions.NotionError: Mandatory column(s) {'Reel'} not found in csv file.

From his .sh Script:
"$TOOL_PATH" --workspace "$NOTION_WORKSPACE" --token $NOTION_TOKEN --url $NOTION_URL --mandatory-column "Reel" --max-threads 10 --merge --log "$UPLOAD_LOG" --verbose "$UPLOAD_PAYLOAD"
Interestedly I am getting a different error when attempting reproduce his error.
2024-11-09 08:57:58,956 [INFO    ] CSV2Notion Neo version 1.3.2
2024-11-09 08:57:58,957 [INFO    ] Validating  & csv2notion_neo.notion DB schema
2024-11-09 08:57:58,957 [ERROR   ] Error at division
Traceback (most recent call last):
  File "csv2notion_neo/cli.py", line 35, in cli
  File "csv2notion_neo/local_data.py", line 113, in __init__
  File "csv2notion_neo/local_data.py", line 34, in data_read
csv2notion_neo.utils_exceptions.CriticalError:  file extension not supported!

@samplue -  The problem was due to your csv delimited by ; instead of ,
Fixed the problem by letting you mention the delimiter in the command itself.
Please download the latest version and try out this command
$TOOL_PATH --token $NOTION_TOKEN --url $NOTION_URL --mandatory-column "Reel" --delimiter ";" --max-threads 5 --merge --verbose --workspace "$NOTION_WORKSPACE" "$UPLOAD_CSV"


Drag drop with virtual scroll reverses order of items

What is the expected behavior?
Adding cdkDrag to an item in a cdkVirtualFor should not reverse the list order
What is the current behavior?
Adding cdkDrag to an item in a cdkVirtualFor reverses the list order
What are the steps to reproduce?
https://angular-qcyrur.stackblitz.io
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular: 7.2.9
Angular Material: 7.3.4
OS: any
Browser: any
Is there anything else we should know?

We are seeing this too after upgrading Angular Material: 7.3.7 from 7.3.3.
Any new on the cause or workaround is appreciated.

Is there an update on that ? Also we are noticing that for huge data sizes the data is shown in wrong order when using the cdkVirtualFor for  After closing and reopening the select the items 'sometimes' show up in a correct order.

Hi, we have the same problem. The workaround from @Halt001 not working for us. I found this example: https://stackblitz.com/edit/drag-drop-virtual-scroll

Any update on this? We are seeing the same behaviour as shown in @entilzah example.

Same issue, tried wrapping in ng-container or on the item. No difference. https://stackblitz.com/edit/drag-drop-virtual-scroll as posted by entlizah best example of this. Remove the cdkDrag attributes and it works.
Currently stopping me from using virtual scroll, which is a real pain.

This is fixed if you upgrade to angular 8 and the latest angular material.

Closing this old issue since it has been fixed


feat: implement network encoding for blob transactions

This implements network encoding and decoding methods for the BlobTransaction method. The type is refactored to include a BlobSidecar type.
TODO:

[ ] refactor arbitrary impls
[ ] replace TransactionSigned in PooledTransaction
[ ] add RLP test data from geth (https://github.com/ethereum/go-ethereum/pull/27841)

some of the changes here seem like they'd be useful for https://github.com/paradigmxyz/reth/issues/4170


Custom JacocoRunner scripts fail

If you run these scripts as is, you will get a few problems.

The bazel master branch is now much further ahead.  This causes the patch to be irrelevant, because the existing jacoco 0.8.6 jars in the bazel target directory are the ones used to build the JAR.
The coverage_local_jacocorunner/test.sh script assumes that tests are in the coverage directory.  The code that is tested has since moved.
The expected-coverage.dat file in the same folder needs to be updated for the new test directory, as well.

Fixes:

Change the bazel portion of the compilation script to check out the 4.1.0 tag instead of master.
Change the test_coverage_with_local_jacocorunner() function in coverage_local_jacocorunner/test.sh  to use //test/coverage_scalatest:test-scalatest instead.
Change all references to coverage in expected-coverage.dat to coverage_scalatest.

I have fixes for this, PR incoming.

fixed in #1278


spec.spec_f90wrapped is missing

I have just installed simsopt using pip install simsopt on a fresh conda environment and am on main branch (version 1.3.0).
I am trying to run the SPEC example in the "Optimizing an equilibrium code" (https://simsopt.readthedocs.io/en/latest/example_vmec_only.html).
When I come to this line:
equil = Spec('2DOF_targetIotaAndVolume.sp')
I am getting the following error:
File ~/anaconda3/envs/SIMSOPT/lib/python3.11/site-packages/simsopt/mhd/spec.py:100, in Spec.__init__(self, filename, mpi, verbose, keep_all_files, tolerance)
     92 def __init__(self,
     93              filename: Optional[str] = None,
     94              mpi: Optional[MpiPartition] = None,
     95              verbose: bool = True,
     96              keep_all_files: bool = False,
     97              tolerance: float = 1e-12):
     99     if spec is None:
--> 100         raise RuntimeError(
    101             "Using Spec requires spec python wrapper to be installed.")
    102     if py_spec is None:
    103         raise RuntimeError(
    104             "Using Spec requires py_spec to be installed.")

spec is None because when spec.py in ~/anaconda3/envs/SIMSOPT/lib/python3.11/site-packages/simsopt/mhd is called, it runs this (Lines=25-29):
try:
    import spec.spec_f90wrapped as spec
except ImportError as e:
    spec = None
    logger.debug(str(e))

However, it cannot find spec_f90wrapped which is a Fortran module that is wrapped for Python using f2py (specifically, Numpy). I have numpy version 1.26.4.
How can I get this fortran wrapper installed in the mhd folder?

Thank you very much for the quick reply. I haven't installed it separately and will check it out!

Hi @cctutum, I can help with getting SPEC installed. Contact me if you need, for now closing the issue.


Define different < 0 error codes for internal functions

We only have -1 to signal errors. This can be better.

Closing this very old issue.
(Agreed it could be better but amazingly it's sufficed thus far)


Add a noddy script to get a freshly turned up etcd initialised.

LGTM (and not like this is likely to break Travis!).


feat: upgrade package

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)

Closing as we're directly using the plugin in our codebase


SPARK-3357 [CORE] Internal log messages should be set at DEBUG level instead of INFO

Demote some 'noisy' log messages to debug level. I added a few more, to include everything that gets logged in stanzas like this:
15/03/01 00:03:54 INFO BlockManager: Removing broadcast 0
15/03/01 00:03:54 INFO BlockManager: Removing block broadcast_0_piece0
15/03/01 00:03:54 INFO MemoryStore: Block broadcast_0_piece0 of size 839 dropped from memory (free 277976091)
15/03/01 00:03:54 INFO BlockManagerInfo: Removed broadcast_0_piece0 on localhost:49524 in memory (size: 839.0 B, free: 265.1 MB)
15/03/01 00:03:54 INFO BlockManagerMaster: Updated info of block broadcast_0_piece0
15/03/01 00:03:54 INFO BlockManager: Removing block broadcast_0
15/03/01 00:03:54 INFO MemoryStore: Block broadcast_0 of size 1088 dropped from memory (free 277977179)
15/03/01 00:03:54 INFO ContextCleaner: Cleaned broadcast 0

as well as regular messages like
15/03/01 00:02:33 INFO MemoryStore: ensureFreeSpace(2640) called with curMem=47322, maxMem=278019440

WDYT? good or should some be left alone?
CC @mengxr who suggested some of this.

Test build #28135 has started for   PR 4838 at commit d9b784d.

This patch merges cleanly.

Test build #28135 has finished for   PR 4838 at commit d9b784d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

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

Chimed in in a few places. I think overall, a good goal is that when we are doing our normal GC of RDD's and broadcasts, we don't want to be so verbose. This cleaning occurs asynchronously and it's confusing for users to see these messages.
When dropping blocks due to cache contention though, I'm not so sure we want silence these messages.

Test build #28145 has started for   PR 4838 at commit dce75c1.

This patch merges cleanly.

Test build #28145 has finished for   PR 4838 at commit dce75c1.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

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


out of memory?

While training the process stops and I'm getting a "tensorflow terminate called after throwing an instance of 'std::bad_alloc'" error.
Is this due to lack of sufficient memory?
How much memory is needed to train on the full UCF-101 dataset?
thanks

@binhhoangtieu sorry just saw your message now.
I confirmed my computer was too low in ram and generally low performance. I'm closing this issue. thanks


Fix error msg in case no image produced

Fix #458 - Change fallback error message for non OCI images/results
In case task run does not produce an image, like git-clone, produce currently the oci logic an error message, which results in a wrong annotation chains.tekton.dev/signed: failed
This PR fix the error handling.

/ok-to-test


Give nicer error messages when json doesn't parse in create-job and create-pipeline

This fix has been merged


[Mutator] Adds music to XMP games. Change which tracks play by editing [XMPMusic.XMPMusic] entries in your U2XMP.ini file.

The current name would be better suited as a description due to its length.
Would XMPMusic be a better fit for the name?
From the XMPMusic.int file XMPMusic.XMPMusic is used for the name:
[Public]
Object=(Class=Class,MetaClass=Engine.Mutator,Name=XMPMusic.XMPMusic,Description="Adds music to XMP games. Change which tracks play by editing [XMPMusic.XMPMusic] entries in your U2XMP.ini file.")

URL: https://unrealarchive.org/mutators/unreal-tournament-2004/A/adds-music-to-xmp-games-change-which-tracks-play-by-editing-xmpmusicxmpmusic-entries-in-your-u2xmpini-file_39d096f5.html
Hash: 39d096f55fa347ea9ca5b48024d512bc6c7266d7
Current name: Adds music to XMP games. Change which tracks play by editing [XMPMusic.XMPMusic] entries in your U2XMP.ini file.

Indeed, fixed. Also moved it to Unreal 2 section.
:+1:


Client crashing on bootup 'net.minecraft.class_2535 failed'

I've been using Quilt for a small while now without issues. Unfortunately, that all recently changed when I started working on my own mod, (which I've not even compiled yet). I decided to pause on working on it to play a little in my ongoing survival world, when I discovered my client was now crashing on startup, despite not changing my mod list. The error 'net.minecraft.class_2535 failed' stood out to me when reading through the crash log (provided below).
crash-2024-03-14_00.39.27-client.txt
I'm deeply confused, and a little concerned, since this only started happening after I installed a Java Development Kit to begin working on my own mod, and would like to find a solution that doesn't involve me having to stop working on my own mod project.

Appears to be an issue with "allthetrims". I would make sure you have the right and latest version for your minecraft version

So it is. I seem to have the correct version (3.4.2 Fabric 1.20.1), so I'm not sure what's going on there. Maybe a specific thing it doesn't like with Quilt?

Ah ok it appears to be using fabric internals for some reason. That would cause the issue.

if I'm reading the code right it does a mixin into FAPI implementation classes to improve error handling? seems like it should be easy for the dev to disable the mixin on quilt
I may make a PR later


Why latest version pod not installing?

I am using pod 'TwilioVideo' for installing TwilioVideo,but it installing version(2.10.2).I am using Xcode 11.2.1.Please tell me solution.Thanks in advance.

 We recommend that you use the latest version but you must raise your deployment target to iOS 11.0 to do so. Checkout the Podfile in this repo for an example supporting version 3.5.
// ... snip

  pod 'TwilioVideo', '~> 3.5'

  target 'ARKitExample' do
    platform :ios, '11.0'
    project 'ARKitExample.xcproject'
  end

// ...

Let me know if you were able to get it working.
Thanks,
Chris

I'm assuming you got past this based upon the other issue that you filed. If you're still having trouble please re-open and I can assist further.


Unable to paste images on win10

In settings i am setting the path property to "pasteImage.path": "${currentFileDir}\\assets"
However when i enter the paste command, the "assets" folder is created but the image is not.

GIF link

Hello, I try it in my windows 10, and it's ok

You can do a test. First save this powershell script to a file named "ps.pc1":
param($imagePath)

# Adapted from https://github.com/octan3/img-clipboard-dump/blob/master/dump-clipboard-png.ps1

Add-Type -Assembly PresentationCore
$img = [Windows.Clipboard]::GetImage()

if ($img -eq $null) {
    "no image"
    Exit 1
}

if (-not $imagePath) {
    "no image"
    Exit 1
}

$fcb = new-object Windows.Media.Imaging.FormatConvertedBitmap($img, [Windows.Media.PixelFormats]::Rgb24, $null, 0)
$stream = [IO.File]::Open($imagePath, "OpenOrCreate")
$encoder = New-Object Windows.Media.Imaging.PngBitmapEncoder
$encoder.Frames.Add([Windows.Media.Imaging.BitmapFrame]::Create($fcb)) | out-null
$encoder.Save($stream) | out-null
$stream.Dispose() | out-null

$imagePath

And then you copy a image, open a powershell window, run this script: powershell -f ps.pc1 "D:\\test.png", observe the output.

After selecting "open with Paint" it keep showing this.
I will try on my other windows 10 device maybe this is a problem related to my system.

It just prints out the argument given.

I have found the issue;

It turns out that if  powershell is not added into the system environmental variables the code required for paste will throw an exception since it is not able to launch the powershell script

I am doing a pull request to fix this issue. Adding the full powerscript path into the variable powershell should fix this problem in case users dont have powershell.exe added to system env. vars

Very very thank you for you experiment!
I update plugin, fix this bug and enhance the log system. You can try it.


Bone Re-Ordering Feature Request

I don't mean to come off entitled or punching above my weight, but I had an idea to make bone re-ordering a bit more convenient.

The arrows on the right-hand side work well enough to swap bones, but moving specific sets of bones a long way across the list takes a long time and is actively quite difficult to focus your eyes on doing.
My idea is to add 2 things, maybe just one of them or maybe both:

Put text entry indexes to the left of each bone name. If you change the number in the field, the list readjusts to the new index you typed in for that bone.

Make it so that when you click the arrows on the right whilst holding shift, the bone those arrows belong to moves either all the way to the top of the list or all the way to the bottom of the list respectively.

This is related to #85. The real issue is that we don't have a good understanding of what the requirements are for ordering bones in custom skeletons. Bone ordering should ideally be handled at export time from applications like Blender. Manually ordering entries isn't a big priority at the moment.

Oh okay, thanks for the insight. And yeah, as of a few hours ago, Carlos' tool has ben rectified to export swing bones where they ought to be, so it is significantly of less importance. Do consider my design if the priority and reason presents itself to be implemented, but I consider this issue closed now.


Bug: not working anymore (typo @ line 303 + more)

There is a typo at line 303:
always_retrun
should read
always_return
But even with that solved, I still have an error:

What was your input?

Several variables (loop on list in attribute in a markdown card), for example with a value of 2024-03-25 09:59:56+01:00.
Installing the former version v1.3.2 solved it for the moment.
I'm not a seasoned dev, but here https://github.com/TheFes/relative-time-plus/blob/485636929b6eb6865a1c03f6863546be746f5ba3/relative_time_plus.jinja#L322 shouldn't error existence be tested first (is defined)?

Fixed in https://github.com/TheFes/relative-time-plus/releases/tag/v2.0.1
Thanks for letting me know, and spotting the typo!


Can't drag window with touchscreen on linux

[x] I am on the latest Hyper.app version
[x] I have searched the issues of this repo and believe that this is not a duplicate

OS version and name: Ubuntu 17.10
Hyper.app version: Hyper 2.0.0 canary
Link of a Gist with the contents of your .hyper.js: https://gist.github.com/AskAlice/fa4e7cf248018911d896a2142b04875e
Relevant information from devtools (CMD+ALT+I on macOS, CTRL+SHIFT+I elsewhere):
The issue is reproducible in vanilla Hyper.app: Vanilla

Issue
i use a touchscreen a lot on my ubuntu 17.10 laptop. I can tap and drag gnome-terminal but not hyper.  This is a bug!!!


Fix key access for collections with spaces in the keys

Fixes # .
Changes proposed in this pull request:

Use double quotes to encase strings for collection access with keys. More details at https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-powershell-1.0/ee692792(v=technet.10)

How to test this code:

Use a report server with a space in the namespace
Open a proxy connection
Invoke New-RsFolder with a new folder
Expected: Folder is added
Actual: Line:91 in New-RsFolder will break: $additionalProperties = New-Object System.Collections.Generic.List[$propertyDataType] as there will be a space in the key.

Has been tested on (remove any that don't apply):

Powershell 5 and above
Windows 10 and above
SQL Server 2008 R2 and above

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: Rhohand sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@Rhohand just waiting for you to sign the license/cla to merge


Add arbitrary np functions to process_over

Describe the solution you'd like
Currently only mean, median and quantile are implemented, but in reality any numpy (or pandas/xarray) function could be used.
Describe alternatives you've considered
Using the existing groupby functionality, but currently always returns ScmRun's and the negative groupby is useful. That isn't great as often aggregation across required columns resulting in missing columns. op_cols functionality similar to that in ops could be added in future too.

Closed by #159 @lewisjared ?


chore: migrate from disallowed registries

Reason for Change:

AZP has started auto-injecting a registry scan that has flagged some of our container refs
Issue Fixed:

Requirements:

[ ] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] relevant PR labels added

Notes:

/azp run CNI Load Test

LGTM, doing additional smoke testing and will then approve.


error:1408E0F4:SSL routines:ssl3_get_message:unexpected message:s3_both.c:408:

i am building kafka cluster with ssl, when I check ssl configuration with
openssl s_client -connect kafka-server1:9093 -tls1_2 -servername kafka-server1

it shows that:
CONNECTED(00000003)
depth=1 emailAddress =<EMAIL_ADDRESS>verify error:num=19:self signed certificate in certificate chain
140231283939216:error:1408E0F4:SSL routines:ssl3_get_message:unexpected message:s3_both.c:408:
---
Certificate chain
 0 s:/C=CN/ST=./L=./O=./OU=./CN=kafka-server1
<EMAIL_ADDRESS> 1<EMAIL_ADDRESS><EMAIL_ADDRESS>---
Server certificate
-----BEGIN CERTIFICATE-----
... ...

I don't know what it means. Please help me.

Which OpenSSL version do you use?
 openssl version
Use the command line to get more information
openssl s_client -connect kafka-server1:9093 -tls1_2 -servername kafka-server1 -msg

I suggest you try openssl-1.1.1 or later, you're probably using 1.0.x.

yes, my openssl version info is 'OpenSSL 1.0.2k-fips  26 Jan 2017', I will try new version later

I suggest you try openssl-1.1.1 or later, you're probably using 1.0.x.

yes, my openssl version info is 'OpenSSL 1.0.2k-fips  26 Jan 2017'. I will try new version later.

I suggest you try openssl-1.1.1 or later, you're probably using 1.0.x.

well,I try:
openssl s_client -connect kafka-server1:9093 -tls1_2 -servername kafka-server1 -msg

it shows:
CONNECTED(00000003)
>>> ??? [length 0005]
    16 03 01 00 d3
>>> TLS 1.2, Handshake [length 00d3], ClientHello
    ... ... some codes ... ...
<<< ??? [length 0005]
    00 00 00 00 00
140536276289344:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:ssl/record/ssl3_record.c:332:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 5 bytes and written 216 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID:
    Session-ID-ctx:
    Master-Key:
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time:<PHONE_NUMBER>
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
---

and openssl version is :
OpenSSL 1.1.1m  14 Dec 2021

>>> ??? [length 0005]
    16 03 01 00 d3

That's a TLS record header.  Type handshake(22, 0x16), version 0x0301, length 0xd3.
>>> TLS 1.2, Handshake [length 00d3], ClientHello
    ... ... some codes ... ...

That's the payload of the handshake record.
<<< ??? [length 0005]
    00 00 00 00 00

That's supposed to be the record header of the server's reply, but it's malformed (all zeros).  ContentType 0 is explicitly invalid, the protocol version 0x0000 is invalid, and the length is zero.
The server is not speaking any version of TLS.

>>> ??? [length 0005]
    16 03 01 00 d3

That's a TLS record header. Type handshake(22, 0x16), version 0x0301, length 0xd3.
>>> TLS 1.2, Handshake [length 00d3], ClientHello
    ... ... some codes ... ...

That's the payload of the handshake record.
<<< ??? [length 0005]
    00 00 00 00 00

That's supposed to be the record header of the server's reply, but it's malformed (all zeros). ContentType 0 is explicitly invalid, the protocol version 0x0000 is invalid, and the length is zero.
The server is not speaking any version of TLS.

Howevery, I checked kafka-server1 starting logs and it shows:
 ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
        ssl.endpoint.identification.algorithm =
        ssl.engine.factory.class = null
        ssl.key.password = [hidden]
        ssl.keymanager.algorithm = SunX509
        ssl.keystore.certificate.chain = null
        ssl.keystore.key = null
        ssl.keystore.location = /usr/local/kafka_2.13-3.0.0/ssl/server.keystore.jks
        ssl.keystore.password = [hidden]
        ssl.keystore.type = JKS
        ssl.principal.mapping.rules = DEFAULT
        ssl.protocol = TLSv1.2

I think I have set TLS version settings. Is there any other settings should be written?

I think I have set TLS version settings. Are there any other settings should be written?

I'd recommend asking on Kafka issue tracker.

I think I have set TLS version settings. Are there any other settings should be written?

I'd recommend asking on Kafka issue tracker.

yes, sorry for my rudeness


Feature request: Add Profiles

Simple feature request, you should be able to add profiles which function as saved login messages and switch through them.

Seems like a cool idea, I'll consider it for 1.2!

Pushed to later release


Unnecessary warnings are printed if given configurable type is not supported via cli args and value is not provided via clia arg

Description:
Steps to reproduce
Define array type configurable variable
configurable int[] & readonly array = ?;

Provide the value using toml.
array=[1,2,3]

Result
The program runs fine but there is an unnecessary warning.
warning: value for configurable variable 'array' with type 'int[] & readonly' is not supported as a command line argument
	at waruna/configProject:0.1.0(main.bal:9)

If the user has not provided the value for a given variable that is not supported with cli, then only we should print the warning.


Add frozen_string_literal: true to all files

I see that the option is enabled in .travis.yml for loading ruby but this doesn't help when including the gem in a project.

The magic comment was added to a few generated files, I'm curious how you did this (maybe with https://github.com/Invoca/magic_frozen_string_literal) and whether you considered how those generated files would stay updated?

Yeah, I used magic_frozen_string_literal. I see that lib/nokogiri/css/tokenizer.rb and lib/nokogiri/css/parser.rb have comments indicating they are auto generated. I did not notice this until you pointed it out. Are there any others I missed? Where can I go to edit the auto generator script to include the pragma?

Hi, @oniofchaos. Sorry for the delay here. I've updated the test suite to have RuboCop add the magic comment to all lib files, to future-proof the concept in this PR. I've credited you in the changelog, but won't be merging this commit since it's been superseded by the RuboCop automation.
Thanks so much for your work here, I wouldn't have gotten around to this without your help.


MainTabsScreen: Use white text in unread-PMs badge

See discussion at
https://chat.zulip.org/#narrow/stream/243-mobile-team/topic/unread.20count.20is.20not.20visible.20properly.20in.20overlay.2E/near/1300099

Thanks! Looks good; merging.


Update the Controller which was pointing to invalid variable.

The Controller is using an invalid reference to redirectToRoute. It should be the protected class property, and not the local variable.

@lunetics Please merge... the entire Bundle becomes almost useless without this patch. ;)

thanks for the fix!


tikv have not logs saved in k8s

Bug Report

What version of TiKV are you using?
/ # ./tikv-server -V
TiKV
Release Version: 5.4.0-alpha
Edition: Community
Git Commit Hash: 99b3436
Git Commit Branch: heads/refs/tags/v5.4.0-nightly
UTC Build Time: 2022-01-04 01:15:55
Rust Version: rustc 1.56.0-nightly (2faabf579 2021-07-27)
Enable Features: jemalloc mem-profiling portable sse test-engines-rocksdb cloud-aws cloud-gcp cloud-azure
Profile: dist_release
What operating system and CPU are you using?
8core 16G
Steps to reproduce
no matter
What did you expect?
tikv logs can be saved
What did happened?
tikv have not logs saved in k8s

/type bug

/found automation

/severity major

/assign ethercflow


stats: AggregationData and Aggregation should match for ViewData

For example, if a View has Sum aggregation, and a ViewData is created from this View, then all AggregationData associated with this ViewData should be SumData.

This is already what's happening but we don't have generics or union types in Go. It is not possible for the types to express this. Do you have any suggestions what the APIs should look like?

I see, just noted in Go Rows are generated from Collectors. If users could create Rows manually, I think it's useful to validate the types of Row.AggregationData and View.Collector.Aggregation when creating ViewData, to prevent issues like https://github.com/census-instrumentation/opencensus-go/issues/146.


🌱 Opt for a more inclusive Other PR category

What this PR does / why we need it:
This PR changes the emoji used for the "Other" PR category to make it more inclusive
Aligns with CAPM3 emojis. Borrowed from CAPM3#129

/assign @maelk

/test-integration

/cc @kashifest @jan-est  @fmuyassarov

/lgtm


refactor(ts): Linter & Formatter

Fixes #427 - hopefully this was what you guys were going for. Majority of the files were changed by the formatter, to explain why so much all at once.

[x] Tests and linter pass
[x] Code coverage does not decrease (if any source code was changed)
[x] Appropriate docs were updated (if necessary)

@callmehiphop hey, should I be doing something with this? 😅

@JustinBeckwith Thanks! :)


Device connection indicator at instances stays green even if device is not reachable

Indicator is not changing to red if device is not reachable.

will be fixed/implemented in next release

fixed in release v0.2.3 (fixes #13)


Deployment Update Flow

Hey
Just wondering what the best workflow is for when i need to update a deployment without wiping out the image? Right now i need to call:
kubectl get deployment app -o yaml

Copy the whole image into into my deployment.yaml file, and then i can do kubectl apply
Basically my question is: is there a better way to handle all of this, and to make it play nice with gitkube?

@scottrobertson You're just in time with this question. We just released v0.2.0 and ti supports such workflows.
You can set
  manifests:
    path: k8s

in your Remote Spec and when you push to the remote now, all kubernetes yaml files in k8s directory of your git repo will be kubectl apply-ed.
So, if you want to update a deployment, make the change, commit and push and gitkube will take care of building and setting the right image.
You can find more details about manifests in the docs.

That looks awesome thanks! It will work really nicely for most of my projects 👍
However, for some projects it wont work (specifically open source projects that i do not want to push Kubernetes configs to). I will have to try and think of a way around this without having to copy the image every time i want to update things.

k8s conf is kept separate from code and you need to update the conf, right?
A kubectl apply flag that can ignore certain fields (image) would have been awesome.

@scottrobertson Another way to solve this issue is to make the controller watch all the deployments that it is responsible for and when the image key changes (say from a kubectl apply), it goes and patch the deployment with latest build tag.
Now, controller will need to track that latest build tag, which can be done by adding a new key to the Remote's status.


Drop Python 2.6 support

Yesterday marks 3 years since the last release of Python 2.6! 🎉
To celebrate, I'm attempting to drop support for it from 156 prominent Python packages (one for every week it's past end-of-life)--including this one!
I've tried my best to remove as much 2.6-specific cruft as I can, but at the very least, this PR will remove the 'Programming Language :: Python :: 2.6' trove classifier from this projects setup.py.

Thanks, but no thanks. Unless we have an absolute valid reason for dropping 2.6, we aren't. Lots of people still use 2.6 and it's not our agenda to push. Going out of our way to drop support is counter productive for a library such as ours.


Add 大型语言模型与生成模型 section and update related courses

This pull request introduces a new section titled "大型语言模型与生成模型" and adds the following courses under this section:

CMU CS11-667: Large Language Models Methods and Applications
Stanford CS324: Large Language Models
UCB CS194/294-267: Understanding Large Language Models

Additionally, it updates the structure of the document to improve clarity and organization. All links point to their respective markdown files for better reference.

Thanks for your contribution. I am also working on a similar PR on this topic and will merge your PR later together.


Add Quote Garden

Thank you for taking the time to work on a Pull Request for this project!
To ensure your PR is dealt with swiftly please check the following:

[x] Your submissions are formatted according to the guidelines in the contributing guide
[x] Your additions are ordered alphabetically
[x] Your submission has a useful description
[x] The description does not end with punctuation
[x] Each table column should be padded with one space on either side
[x] You have searched the repository for any relevant issues or pull requests
[ ] Any category you are creating has the minimum requirement of 3 items
[x] All changes have been squashed into a single commit

You closed your PR and deleted your fork. Can you do it again so that I can merge? :smile:


Temperature increments are calculating incorrectly for Celsius

I am seeing that I can select in increments of .5 - which is right - but the issue is that they are offset.
Expected result

20.5
20.0
19.5
19.0

Actual result

20.7
20.2
19.7
19.2

Hey @codyc1515 thanks for the report. I'm not quite sure what you mean. You mention results, but could you fill more detail the process you followed to reach those results? (Where are you selecting increments of .5? etc)
If it helps, the device actually sends temperature data over MQTT in Kelvin, which this integration converts to °C by subtracting  273.15.

It should not be possible to have temperature set to 19.7, as shown in HA. When I check the Dyson app I can only set by whole numbers (19/20/21) but when I look in HA it's 19.2.

Aha, now I understand. I thought you were talking about the thermometer sensor, but you're actually talking about the thermostat? I'm actually not too familiar with that area yet - it was created long before I adopted the project.
I'll try to figure out what's going on here.

Affirmative. I can take a look too.

Dug around for a few minutes in the target-temperature logic. Interestingly, it's using 273 instead of 273.15 for the C-to-K calculation. If it's also rounding .15 to .2 to show the value with a single decimal digit, that would explain why you're seeing 19.7 instead of 19.5, for example.
I'll do some testing and see if "fixing" that C-to-K value causes any other issues.

While the 273 values are incorrect I'm finding that it appears to still be rounding the digits. I think we should make use of the official HA function for Kelvin to Celsius.

I 100% agree on using HA Core utils as much as possible. That said...

       "uses temperature utility. This is deprecated since 2022.10 and will "
       "stop working in Home Assistant 2023.4, it should be updated to use "
       "unit_conversion.TemperatureConverter instead"

So let's use the new one instead.

Okay, I found the actual reason - it's a limitation from the Dyson device itself: After receiving the command with a new target temperature,, the device sends an MQTT "STATE-CHANGE" message over the status queue. In the message, it sends the device's (new) target temperature in Kelvin with a resolution of .1K.
After a short series of repeated rounding quirks, the target temp stabilizes at +0.2C.
So this means, weirdly enough, it's not calculating incorrectly at all! It's a weird user experience though, to be sure. What I think I'll wind up doing is round the (displayed) target temperature to the nearest 0.5c.

Example of how the 0.1K rounding causes this:

Setting Chagnge
Target Temp
Converts to K
Rounds to K
Converts to C
Rounds to C (displayed by Home Assistant)

Initial
21
294.15
294.2
21.05
21.1

21.05 - 0.5
20.65
293.8
293.8
20.65
20.7

20.65 - 0.5
20.15
293.3
293.3
20.15
20.2

20.15 - 0.5
19.65
292.8
292.8
19.65
19.7

@codyc1515 Sorry to be a bother here. Just wanted to make sure you'd seen the above message. I'm not quite able to reproduce the behavior you're seeing.

Thank you for the reminder. I appreciate it (lots going on). Curiously, setting the temperature via the service in HA worked okay, same with changing in 0.5c increments with the clicker in HA. Going back to the Dyson app, however, brings us back to 0.2c and 0.7c increments, so it appears the issue is when setting a temperature in the Dyson app and the Dyson reporting that temperature back to HA.
I will need to do some research on how to use your tool as I recently moved from the Container install to HAOS method.

lots going on

Dude I totally understand, thanks for following up!

Going back to the Dyson app, however, brings us back to 0.2c and 0.7c increments

Iiiiinteresting. I'll try to reproduce it that way.

I will need to do some research on how to use your tool as I recently moved from the Container install to HAOS method.

Sure thing. It should be pretty easy in theory: You can even just download the .exe (or the executable for whatever OS you use) from the github release and just run it in cmd., But getting the credentials might be a bit trickier if your device is a more recent variant.
Anywho I'm happy to help (and feedback on the tool is welcome too! It's very slapped-together right now)

Thanks for the patience. The tool worked well. I didn't have Python installed, so obtained my credentials from the HA .storage folder. I managed to work out the tool parameters reasonably quickly.
Here is the results:
19:40:24: Connected to device...
19:40:24: Subscribed to 527E/XXX-XX-XXXXXXXX/status/current
19:40:24: Subscribed to 527E/XXX-XX-XXXXXXXX/command
19:40:24: Press Ctrl+C to exit.
19:40:39|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"CURRENT-STATE","time":"2023-07-12T07:40:40.000Z","mode-reason":"PRC","state-reason":"MODE","rssi":"-39","channel":"149","fqhp":"103944","fghp":"70816","product-state":{"fpwr":"ON","auto":"ON","oscs":"ON","oson":"ON","nmod":"OFF","rhtm":"ON","fnst":"FAN","ercd":"32U2","wacd":"NONE","nmdv":"0004","fnsp":"AUTO","bril":"0002","corf":"ON","cflr":"INV","hflr":"0044","cflt":"NONE","hflt":"GCOM","sltm":"OFF","osal":"0146","osau":"0236","ancp":"0180","hmod":"OFF","hmax":"2932","tilt":"OK","hsta":"OFF","psta":"CLNG","fdir":"ON"},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:40:43|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"STATE-CHANGE","time":"2023-07-12T07:40:44.000Z","mode-reason":"NONE","state-reason":"MODE","product-state":{"fpwr":["ON","ON"],"auto":["ON","ON"],"oscs":["ON","ON"],"oson":["ON","ON"],"nmod":["OFF","OFF"],"rhtm":["ON","ON"],"fnst":["FAN","FAN"],"ercd":["32U2","32U2"],"wacd":["NONE","NONE"],"nmdv":["0004","0004"],"fnsp":["AUTO","AUTO"],"bril":["0002","0002"],"corf":["ON","ON"],"cflr":["INV","INV"],"hflr":["0044","0044"],"cflt":["NONE","NONE"],"hflt":["GCOM","GCOM"],"sltm":["OFF","OFF"],"osal":["0146","0146"],"osau":["0236","0236"],"ancp":["0180","0180"],"hmod":["OFF","HEAT"],"hmax":["2932","2932"],"tilt":["OK","OK"],"hsta":["OFF","OFF"],"psta":["CLNG","CLNG"],"fdir":["ON","OFF"]},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:40:45|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"STATE-CHANGE","time":"2023-07-12T07:40:46.000Z","mode-reason":"NONE","state-reason":"MODE","product-state":{"fpwr":["ON","ON"],"auto":["ON","ON"],"oscs":["ON","ON"],"oson":["ON","ON"],"nmod":["OFF","OFF"],"rhtm":["ON","ON"],"fnst":["FAN","FAN"],"ercd":["32U2","32U2"],"wacd":["NONE","NONE"],"nmdv":["0004","0004"],"fnsp":["AUTO","AUTO"],"bril":["0002","0002"],"corf":["ON","ON"],"cflr":["INV","INV"],"hflr":["0044","0044"],"cflt":["NONE","NONE"],"hflt":["GCOM","GCOM"],"sltm":["OFF","OFF"],"osal":["0146","0146"],"osau":["0236","0236"],"ancp":["0180","0180"],"hmod":["HEAT","HEAT"],"hmax":["2932","2942"],"tilt":["OK","OK"],"hsta":["OFF","HEAT"],"psta":["CLNG","CLNG"],"fdir":["OFF","ON"]},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:40:48|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"STATE-CHANGE","time":"2023-07-12T07:40:49.000Z","mode-reason":"RAPP","state-reason":"MODE","product-state":{"fpwr":["ON","ON"],"auto":["ON","ON"],"oscs":["ON","ON"],"oson":["ON","ON"],"nmod":["OFF","OFF"],"rhtm":["ON","ON"],"fnst":["FAN","FAN"],"ercd":["32U2","32U2"],"wacd":["NONE","NONE"],"nmdv":["0004","0004"],"fnsp":["AUTO","AUTO"],"bril":["0002","0002"],"corf":["ON","ON"],"cflr":["INV","INV"],"hflr":["0044","0044"],"cflt":["NONE","NONE"],"hflt":["GCOM","GCOM"],"sltm":["OFF","OFF"],"osal":["0146","0146"],"osau":["0236","0236"],"ancp":["0180","0180"],"hmod":["HEAT","HEAT"],"hmax":["2942","2932"],"tilt":["OK","OK"],"hsta":["HEAT","HEAT"],"psta":["CLNG","CLNG"],"fdir":["ON","ON"]},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:41:04|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"STATE-CHANGE","time":"2023-07-12T07:41:05.000Z","mode-reason":"LAPP","state-reason":"MODE","product-state":{"fpwr":["ON","ON"],"auto":["ON","ON"],"oscs":["ON","ON"],"oson":["ON","ON"],"nmod":["OFF","OFF"],"rhtm":["ON","ON"],"fnst":["FAN","FAN"],"ercd":["32U2","32U2"],"wacd":["NONE","NONE"],"nmdv":["0004","0004"],"fnsp":["AUTO","AUTO"],"bril":["0002","0002"],"corf":["ON","ON"],"cflr":["INV","INV"],"hflr":["0044","0044"],"cflt":["NONE","NONE"],"hflt":["GCOM","GCOM"],"sltm":["OFF","OFF"],"osal":["0146","0146"],"osau":["0236","0236"],"ancp":["0180","0180"],"hmod":["HEAT","HEAT"],"hmax":["2932","2937"],"tilt":["OK","OK"],"hsta":["HEAT","HEAT"],"psta":["CLNG","CLNG"],"fdir":["ON","ON"]},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:41:08|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"STATE-CHANGE","time":"2023-07-12T07:41:09.000Z","mode-reason":"LAPP","state-reason":"MODE","product-state":{"fpwr":["ON","ON"],"auto":["ON","ON"],"oscs":["ON","ON"],"oson":["ON","ON"],"nmod":["OFF","OFF"],"rhtm":["ON","ON"],"fnst":["FAN","FAN"],"ercd":["32U2","32U2"],"wacd":["NONE","NONE"],"nmdv":["0004","0004"],"fnsp":["AUTO","AUTO"],"bril":["0002","0002"],"corf":["ON","ON"],"cflr":["INV","INV"],"hflr":["0044","0044"],"cflt":["NONE","NONE"],"hflt":["GCOM","GCOM"],"sltm":["OFF","OFF"],"osal":["0146","0146"],"osau":["0236","0236"],"ancp":["0180","0180"],"hmod":["HEAT","HEAT"],"hmax":["2937","2932"],"tilt":["OK","OK"],"hsta":["HEAT","HEAT"],"psta":["CLNG","CLNG"],"fdir":["ON","ON"]},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:41:10|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"CURRENT-STATE","time":"2023-07-12T07:41:11.000Z","mode-reason":"LAPP","state-reason":"MODE","rssi":"-46","channel":"149","fqhp":"103944","fghp":"70816","product-state":{"fpwr":"ON","auto":"ON","oscs":"ON","oson":"ON","nmod":"OFF","rhtm":"ON","fnst":"FAN","ercd":"32U2","wacd":"NONE","nmdv":"0004","fnsp":"AUTO","bril":"0002","corf":"ON","cflr":"INV","hflr":"0044","cflt":"NONE","hflt":"GCOM","sltm":"OFF","osal":"0146","osau":"0236","ancp":"0180","hmod":"HEAT","hmax":"2932","tilt":"OK","hsta":"HEAT","psta":"CLNG","fdir":"ON"},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}
19:41:12|527E/XXX-XX-XXXXXXXX/status/current: {"msg":"STATE-CHANGE","time":"2023-07-12T07:41:13.000Z","mode-reason":"LAPP","state-reason":"MODE","product-state":{"fpwr":["ON","ON"],"auto":["ON","ON"],"oscs":["ON","ON"],"oson":["ON","ON"],"nmod":["OFF","OFF"],"rhtm":["ON","ON"],"fnst":["FAN","FAN"],"ercd":["32U2","32U2"],"wacd":["NONE","NONE"],"nmdv":["0004","0004"],"fnsp":["AUTO","AUTO"],"bril":["0002","0002"],"corf":["ON","ON"],"cflr":["INV","INV"],"hflr":["0044","0044"],"cflt":["NONE","NONE"],"hflt":["GCOM","GCOM"],"sltm":["OFF","OFF"],"osal":["0146","0146"],"osau":["0236","0236"],"ancp":["0180","0180"],"hmod":["HEAT","HEAT"],"hmax":["2932","2937"],"tilt":["OK","OK"],"hsta":["HEAT","HEAT"],"psta":["CLNG","CLNG"],"fdir":["ON","ON"]},"scheduler":{"srsc":"0000000064618f8d","dstv":"0001","tzid":"0001"}}

Lastly, it looks like the app always sets X.2 whereas HA allows half-increments (X.2 then X.7). Is there a way to forbid this in HA (so they have to be whole increments, X.2 or X.0 ideally)?

I didn't have Python installed, so obtained my credentials from the HA .storage folder.

Oh nice! Those json files can be a bit monstrous, so I wondered whether or not I should suggest looking at them. Glad you got it!

Are we looking at the hmax value?

Yep!

It looks like, for example, 2937 would become 293.7 which itself becomes 20.05 then as you said becomes rounded to 20.1 in *C

Yep!

The most baffling thing to me is that the Dyson app itself does not support half-degrees, so not sure where this comes in.

Whaaaa... So the Dyson app only supports full-degree increments?
Funny enough, I'm not even able to test this on my device. Apparently regulations on movable heaters force compliance to UL 1278, preventing that feature from functioning in the US. So big thanks for sharing your MQTT data.
I'm trying to think of the best way to handle this...

Funny enough, I'm not even able to test this on my device. Apparently regulations on movable heaters force compliance to UL 1278, preventing that feature from functioning in the US

It's not possible to enable heat mode remotely, however, if you use your physical remote to turn heat mode on, I think you can then use the app to change the temperature if that helps.

Still an issue. Did not have any luck fixing myself. I am able to enable heat mode remotely. If someone would like to access my account, I can share details over email.

Frustratingly, I am still facing this issue.


Auto detect color scheme sets one theme for all open windows despite different preferred schemes set in workspaces

VSCode Version: 1.49.2
OS Version: macOS 10.15.7 (19H2)

Steps to Reproduce:

Open two different workspaces
Edit the corresponding workspace settings to with different themes for workbench.preferredDarkColorTheme and workbench.preferredLightColorTheme
Enable window.autoDetectColorScheme
Switch to/from dark mode

Expected behavior: each window switches to the theme specified in the workspace settings. This is how it used to be before updating to the last version.
Actual behavior: both windows switch to a theme specified in one of the workspace settings (the one of the foregrounded window). The workbench.colorTheme for user is changed to the theme.

Does this issue occur when all extensions are disabled?: Yes

Related: https://github.com/microsoft/vscode/issues/105715


Decomm

Hello @gwenchee! Thanks for opening this PR.


Improve the dlang.org changelog setup

fix edit links from the beta release page (should point to stable)
disallow deprecations and fix them (they should be fixed by the one introducing the deprecation in the future)
Fix changelog links from the stable page pointing to the beta release (see e.g. https://dlang.org/changelog/2.082.1.html)

(fixed the build)

As the beta is currently out in the open it would be nice to get this merged.
CC @CyberShadow @ZombineDev
The diff looks good:
diff --git a/web/changelog/2.082.1.html b/web/changelog/2.082.1.html
index ac346a2..d0ae371 100644
--- a/web/changelog/2.082.1.html
+++ b/web/changelog/2.082.1.html
@@ -225,7 +225,7 @@ Log</option>

previous version: 2.082.0
-– next version: 2.083.0_pre

+– next version: 2.083.0

Download D 2.082.1

@@ -271,7 +271,7 @@ Log</option>

previous version: 2.082.0
-– next version: 2.083.0_pre

+– next version: 2.083.0

Copyright © 1999-2018 by the D Language Foundation | Page generated by

diff --git a/web/changelog/2.083.0.html b/web/changelog/2.083.0.html
index 046a319..b046e9e 100644
--- a/web/changelog/2.083.0.html
+++ b/web/changelog/2.083.0.html
@@ -266,7 +266,7 @@ Log</option>

Compiler changes

Add CppRuntime_* version identifiers.
-

+

In order to link against C++ code, it is important to know what C++ runtime the ABI targets.

@@ -285,7 +285,7 @@ This is contrast to the C runtime, which generally depends on the target system.

Deprecated CLI switch -gc have been removed
-

+

This switch was deprecated in v2.075.0 and is now removed,
 meaning DMD will complain about an unrecognized switch.
 -gc used to pretend to be C, but debuggers have been
@@ -294,7 +294,7 @@ D-aware for around a decade.

Expose __traits(isZeroInit, T)
-

+

Takes one argument which must be a type. If the type's
 default initializer has no non-zero
 bits then true is returned, otherwise false. isZeroInit will
...


read options from configuration file

This includes the port number and PEM file names; see also #3, which should already be configurable from there.

implementation idea: file:consult/1


Bump propeller to v0.5.12

TL;DR
Bump propeller to v0.5.12
Type

[x] Bug Fix
[ ] Feature
[ ] Plugin

Are all requirements met?

[x] Code completed
[ ] Smoke tested
[ ] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
Ran go get

Codecov Report

Merging #146 (68acfe2) into master (aa420b1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #146   +/-   ##
=======================================
  Coverage   61.79%   61.79%
=======================================
  Files         105      105
  Lines        7534     7534
=======================================
  Hits         4656     4656
  Misses       2286     2286
  Partials      592      592

Flag
Coverage Δ

unittests
61.79% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out 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 aa420b1...68acfe2. Read the comment docs.

Codecov Report

Merging #146 (68acfe2) into master (aa420b1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #146   +/-   ##
=======================================
  Coverage   61.79%   61.79%
=======================================
  Files         105      105
  Lines        7534     7534
=======================================
  Hits         4656     4656
  Misses       2286     2286
  Partials      592      592

Flag
Coverage Δ

unittests
61.79% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out 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 aa420b1...68acfe2. Read the comment docs.


List event class

One of the main features of InternBuddy is the ability to manage Events related to a company.
##Background
The added command to add event to addressbook has been implemented.
The delete command to delete event will be implemented in https://github.com/AY2122S2-CS2103T-W14-3/tp/pull/43
Therefore, https://github.com/AY2122S2-CS2103T-W14-3/tp/pull/43 must be approved first before approving this.
Command Format
list_event
Let's:

Implement the list_event command
Make sure that the current implementation does not ruin the original list command (for listing person)

Screenshots
Opening the app for the first time with dummy data

Using find will not break list_event too

There are several things to note:

String validation for Event's company, date, time, and platform attributes is still not yet implemented

Codecov Report

Merging #44 (90c75be) into master (d7d6f7d) will decrease coverage by 1.98%.
The diff coverage is 1.66%.

@@             Coverage Diff              @@
##             master      #44      +/-   ##
============================================
- Coverage     56.91%   54.93%   -1.99%
  Complexity      403      403
============================================
  Files            82       87       +5
  Lines          1613     1673      +60
  Branches        191      197       +6
============================================
+ Hits            918      919       +1
- Misses          655      714      +59
  Partials         40       40

Impacted Files
Coverage Δ

...main/java/seedu/address/commons/core/Messages.java
0.00% <ø> (ø)

...rc/main/java/seedu/address/logic/LogicManager.java
71.42% <0.00%> (-3.58%)
:arrow_down:

...edu/address/logic/commands/DeleteEventCommand.java
0.00% <0.00%> (ø)

...seedu/address/logic/commands/ListEventCommand.java
0.00% <0.00%> (ø)

.../seedu/address/logic/parser/AddressBookParser.java
76.19% <0.00%> (-8.03%)
:arrow_down:

...address/logic/parser/DeleteEventCommandParser.java
0.00% <0.00%> (ø)

src/main/java/seedu/address/ui/EventCard.java
0.00% <0.00%> (ø)

src/main/java/seedu/address/ui/EventListPanel.java
0.00% <0.00%> (ø)

src/main/java/seedu/address/ui/MainWindow.java
0.00% <0.00%> (ø)

...u/address/storage/JsonSerializableAddressBook.java
63.63% <100.00%> (+1.13%)
: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 d7d6f7d...90c75be. Read the comment docs.


rng.js Buffer use causes PhantomJS failure

I recently began seeing the following error while running tests in a React application:
PhantomJS 1.9.8 (Mac OS X 0.0.0) ERROR
  TYPE_MISMATCH_ERR: DOM Exception 17: The type of an object was incompatible with the expected type of the parameter associated to the object.
  at /path/to/my/test.js <- webpack:///~/node-libs-browser/~/crypto-browserify/rng.js:20:0

After some experimenting, I was able to resolve this error by updating rng.js to replace this...
var bytes = new Buffer(size); //in browserify, this is an extended Uint8Array

...with this...
var bytes = new Uint8Array(size); //in browserify, this is an extended Uint8Array

I don't understand (based on the comment) why Buffer was used in the first place instead of just Uint8Array but it seems to cause problems for PhantomJS. Is this something that could be changed?

see crypto-browserify/randombytes#3

the tl;dr is that buffer is a modified u8intarray but there is a bug in phantomjs that incorrectly rejects it

Hotness. Thanks for the prompt response, Calvin.

I also updated node-uuid so that it will test the rng function that it creates before assuming that it works. https://github.com/broofa/node-uuid/commit/7bb3cb6218dd60fa7334c10fe8d3a8a481ba6154


Correct 2024.5 warning and error

As of HA 2024.5, the following two issues appear in the Home Assistant log:
WARNING (ImportExecutor_0) [homeassistant.helpers.typing] ServiceCallType was used from stream_assist, this is a deprecated alias which will be removed in HA Core 2025.5. Use homeassistant.core.ServiceCall instead, please report it to the author of the 'stream_assist' custom integration
RuntimeError: Detected that custom integration 'stream_assist' calls async_write_ha_state from a thread at custom_components/stream_assist/sensor.py, line 47: self.async_write_ha_state(). Please report it to the author of the 'stream_assist' custom integration.
This PR updates these two items to the latest standard.

Confirmed working for me.  Thanks!

Thanks!

https://github.com/AlexxIT/StreamAssist/releases/tag/v2.1.0


Maintain visual area when adding cursors in visual mode

For issue #51
The visual area is maintained when adding virtual cursors with an up/down motion, searching for matches, or incrementally adding to matches.

This works perfectly. Awesome job!


Git ignore auto-generated code

+1 for this in general. We do need to include the dist files currently to support bower.

Would it be possible to point bower at https://dagrejs.github.io/project/dagre instead?
Unrelated, it might be better to use https://dagrejs.github.io/dagre/dist to drop dist bits. Repos can provide their own gh-pages and GitHub will automatically mesh them together. Would be future proof in case we're trying to switch?

If bower supports absolute links that would be great. Even better might be to deprecate the bower release if it is not used by many people. I don't see any easy way to get stats tho.
I'm OK with changing the location of the published dist files. We can leave the old ones for backwards compatibility. If we do change the location we also need to update the wiki links.

There is a better way to provide people with prebuilt files<EMAIL_ADDRESS>As long as we update NPM package, https://unpkg.com/dagre/ will be updated automatically.

Sounds good to me. I think we're getting pulled in from cdnjs in a similar way. Happy to drop bower support. Any volunteers? If not, I should be able to do this over the weekend.


Initial import of git-bisect article

Short article on using git bisect for discovering bad commits.

I'll let this sit for any more feedback. I'll merge the PR on Thursday morning.


Feat/plugin testing

Add a go-pdk/test sublibrary to allow a plugin developer to easily test a plugin in a natural and Golang idiomatic way.
Trivial example:
package main

import (
	"testing"

	"github.com/Kong/go-pdk/test"
	"github.com/stretchr/testify/assert"
)

func TestPlugin(t *testing.T) {
	env, err := test.New(t, test.Request{
		Method: "GET",
		Url:    "http://example.com?q=search&x=9",
		Headers: map[string][]string{ "X-Hi": {"hello"}, },
	})
	assert.NoError(t, err)

	env.DoHttps(&Config{})
	assert.Equal(t, 200, env.ClientRes.Status)
	assert.Equal(t, "Go says Hi!", env.ClientRes.Headers.Get("x-hello-from-go"))
}

in short:

Create a test environment passing a test.Request{} object to the test.New() function.
Create a Config{} object (or the appropriate config structure of the plugin)
env.DoHttps(t, &config)  will pass the request object through the plugin, exercising each event handler and return (if there's no hard error) a simulated response object.  There are other env.DoXXX(t, &config) functions for HTTP, TCP, TLS and individual phases.
3.5 The http and https functions assume the service response will be an "echo" of the request (same body and headers) if you need a different service response, use the individual phase methods and set the env.ServiceRes object manually.
Do assertions to verify the service request and client response are as expected

PS: it also fixes #60

@javierguerragiraldez are there any plans to ship this feature soon?