Resume fails after setting an initial breakpoint using AddBreak

This time I'm almost positive the issue isn't with the client.  I'm finding that issuing AddBreak requests causes the debugger to stop at the first executable statement in the script, and any further attempts to step or resume have no effect.
Here's my code to set up breakpoints:
                            string relativePath = filename;
                            string rootPath = Path.Combine(_project.RootPath, @"scripts") + @"\";
                            if (filename.Substring(0, rootPath.Length) == rootPath)
                                relativePath = filename.Substring(rootPath.Length).Replace('\\', '/');
                            _tcp.Client.Send(new byte[] { 0x01, 0x98 });  // REQ 18h
                            _tcp.Client.SendDValue(relativePath);  // <str: filename>
                            _tcp.Client.SendDValue(lineNumber);  // <int: line>
                            _tcp.Client.Send(new byte[] { 0 });  // EOM

I've checked in the C# debugger, and the filename sent is main.js (matching the filename passed to Duktape in the target) with line number 33.  Duktape instead stops at line 6 (the first executable line in the script) and I am then unable to advance.

Can you replicate this issue with the debugger web UI? There are no known (somewhat basic) known breakpoint issues, and it's difficult for me to do anything if I can't reproduce the issue.
Btw, when you attach the debugger execution will initially be paused automatically, so do you first send an AddBreak and then a Resume to (try to) get started? Can you provide a binary log of the debug messages sent in each direction?

I'll have to get node.js set up properly to test out the web UI.  For now I could probably set up some logging of messages.
And yes, I'm aware that I have to issue an explicit Resume on attach.  What I'm currently doing is this: attach debugger, add breakpoints via REQ 18h, Resume.  If no AddBreaks are sent, execution starts normally.  If even one breakpoint is set, execution stops at the very first statement and advancing is impossible (step and resume do nothing).

What you mean by "do nothing" in more detail? Does Duktape debug log that it has received the commands (or does it read them through the read callback)?

I can only tell you that the messages are being sent out by the client, and the target hasn't frozen, as forcibly closing the transport causes execution to resume.  So Duktape just isn't responding to the requests for some reason, including the initial Resume.
I'll have to add some sort of logging mechanism to the target.  Most of my logging there is done to the console, so doing that for the transport would be too noisy for everyday use.
I suppose it's possible my AddBreak requests are malformed, but then wouldn't Duktape drop the session outright?

How do I enable debug logging for Duktape?

Here's a JSON debug proxy sequence with a similar test sequence. Arrows and comments added manually (to telnet output):
<-- {"notify":"_Connected","args":["1 10299 v1.2.0-234-gbdd02a0 duk command built from Duktape repo"]}
<-- {"notify":"Status","command":1,"args":[1,"test.js","global",1,0]}
--> {"request":"AddBreak","args":["test.js",3]}
<-- {"reply":true,"args":[0]}
--> {"request":"Resume"}
<-- {"reply":true,"args":[]}
# Here's the place you're having issues, but in this setup Resume works as expected.
<-- {"notify":"Status","command":1,"args":[0,"test.js","global",1,0]}
<-- {"notify":"Print","command":2,"args":["1\n"]}
<-- {"notify":"Print","command":2,"args":["2\n"]}
<-- {"notify":"Status","command":1,"args":[1,"test.js","global",3,9]}
# Here we've executed line 1 and 2, breakpoint on line 3 hit and Duktape is paused.
--> {"request":"Resume"}
<-- {"reply":true,"args":[]}
<-- {"notify":"Status","command":1,"args":[0,"test.js","global",3,9]}
<-- {"notify":"Print","command":2,"args":["3\n"]}
<-- {"notify":"Print","command":2,"args":["4\n"]}
<-- {"notify":"_Disconnecting"}

Input source is, breakpoint is for line 3:
print(1);
print(2);
print(3);
print(4);

To enable debug, just compile Duktape with -DDUK_OPT_DEBUG -DDUK_OPT_DPRINT.

To be a bit pedantic, "client has sent a message" doesn't really compute - it's all pulled in by Duktape using the read callback, and what matters for diagnosing the issue is whether Duktape has read the bytes or not.

Oh, I know that, I was just pointing out that I ran the client through the debugger and it got through the Send calls, so the client's responsibility of sending the bytes out was taken care of.  I'm reasonably certain the .NET sockets implementation isn't bugged. :)
Believe me, I'm doing everything in my power to make sure the client isn't at fault here.
I'll set up a test harness of some sort later and then report back.

Hmm, so the debug client is talking to the target using plain old TCP? If so, can you Wireshark the traffic? :)

Wireshark won't tell whether Duktape is getting the data in the read callback but it'd be an easy starting point. Also, debug prints from read/write callbacks on the target would be very useful (= for each call, bytes read/written).

Yeah, it's just a plain TCP connection via loopback.  That seemed like the easiest way to go to get cross-process communication.

That also means that if you have access to a Linux VM, you could run the debugger web UI there if that's any easier than the node setup on Windows.

Or if your target has a public IP address, I could connect to the target remotely ;)

The way my engine is set up right now, you'd only get one shot--I can't run it unattended because once the debugger is detached, that's it--the port is closed.  I should probably change that...

I have to go to sleep anyway, let me know what you find out :)

Wireshark can't capture loopback traffic on Windows, apparently.  So that's a no-go unless I modify minisphere to allow remote debugging (i.e. keep the port open at all times) and connect from another machine.
Looks like I'll have to implement logging.

Transport log below, starting from initial attach up to the Resume attempt.  Right arrow is outbound (write callback), left arrow is inbound (read callback)
--> 26 bytes  31 20 31 30 32 30 32 20 76 31 2e 32 2e 32 20 6d 69 6e 69 73 70 68 65 72 65 0a
--> 1 bytes  04
--> 1 bytes  81
--> 1 bytes  81
--> 1 bytes  67
--> 7 bytes  6d 61 69 6e 2e 6a 73
--> 1 bytes  64
--> 4 bytes  65 76 61 6c
--> 1 bytes  86
--> 1 bytes  80
--> 1 bytes  00
<-- 1 bytes  01
<-- 1 bytes  98
<-- 1 bytes  11
<-- 4 bytes  10 00 00 00
<-- 17 bytes  07 6d 61 69 6e 2e 6a 73 10 00 00 00 21 00 01 93 00

# At this point Duktape is paused on line 6.  The breakpoint is set for line 33.

# After clicking Resume twice in the client:
<-- 3 bytes  01 93 00
<-- 3 bytes  01 93 00

Note the eerie silence from Duktape...

Do you implement a peek callback, and do you have the transport callbacks somewhere online that I could check?
The next useful things would be:

Running the test with -DDUK_OPT_ASSERTIONS enabled to see if that catches anything
Running the test with -DDUK_OPT_DEBUG and -DDUK_OPT_DPRINT enabled and correlate debug prints with transport log

The debug log looks something like:
[D] <110016502931311> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110016510307997> duk_debugger.c:938 (duk__debug_handle_basic_info): debug command version
[D] <110016519557873> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110016570323754> duk_debugger.c:1013 (duk__debug_handle_list_break): debug command listbreak
[D] <110016573298846> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110016579312764> duk_debugger.c:1199 (duk__debug_handle_get_locals): varmap is not an object in GetLocals, ignore
[D] <110016581490908> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110016596081469> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110199687117690> duk_debugger.c:994 (duk__debug_handle_step): debug command stepinto/stepover/stepout: 21
[D] <110199696131460> duk_debugger.c:1654 (duk_debug_process_messages): processing debug message, peek indicated no data, stop processing
[D] <110199700858476> duk_js_executor.c:1674 (duk__interrupt_handle_debugger): processed debug messages, restart execution to recheck possibly changed breakpoints
[D] <110199735483423> duk_js_executor.c:1547 (duk__interrupt_handle_debugger): STEP STATE TRIGGERED PAUSE at line 105
[D] <110199738484063> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110199738785067> duk_debugger.c:1013 (duk__debug_handle_list_break): debug command listbreak
[D] <110199739207639> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110199739694315> duk_debugger.c:1199 (duk__debug_handle_get_locals): varmap is not an object in GetLocals, ignore
[D] <110199740050323> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110199741207759> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110204748278655> duk_debugger.c:994 (duk__debug_handle_step): debug command stepinto/stepover/stepout: 20
[D] <110204750101767> duk_debugger.c:1654 (duk_debug_process_messages): processing debug message, peek indicated no data, stop processing
[D] <110204750465517> duk_js_executor.c:1674 (duk__interrupt_handle_debugger): processed debug messages, restart execution to recheck possibly changed breakpoints
[D] <110204759537640> duk_js_executor.c:1547 (duk__interrupt_handle_debugger): STEP STATE TRIGGERED PAUSE at line 106
[D] <110204760863196> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110204762529429> duk_debugger.c:1013 (duk__debug_handle_list_break): debug command listbreak
[D] <110204762958717> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110204763397035> duk_debugger.c:1199 (duk__debug_handle_get_locals): varmap is not an object in GetLocals, ignore
[D] <110204763708453> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110204764822980> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110205228902841> duk_debugger.c:994 (duk__debug_handle_step): debug command stepinto/stepover/stepout: 20
[D] <110205230618817> duk_debugger.c:1654 (duk_debug_process_messages): processing debug message, peek indicated no data, stop processing
[D] <110205230848545> duk_js_executor.c:1674 (duk__interrupt_handle_debugger): processed debug messages, restart execution to recheck possibly changed breakpoints
[D] <110205235639551> duk_js_executor.c:1894 (duk__executor_handle_debugger): STEP INTO ACTIVE, FORCE PAUSED
[D] <110205237111498> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110205238724394> duk_debugger.c:1013 (duk__debug_handle_list_break): debug command listbreak
[D] <110205239160360> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110205290190891> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary
[D] <110205291570515> duk_debugger.c:1659 (duk_debug_process_messages): paused, process debug message, blocking if necessary

It's not terribly useful but it shows what commands Duktape has successfully read.

I think your problem might be here:
[...]
<-- 1 bytes  01
<-- 1 bytes  98
<-- 1 bytes  11
<-- 4 bytes  10 00 00 00   <=== PROBLEM
<-- 17 bytes  07 6d 61 69 6e 2e 6a 73 10 00 00 00 21 00 01 93 00
[...]

Because the debug protocol is network (big) endian, that string length is 0x10000000, not 0x00000010, and Duktape will be reading for a 256 megabyte string.

Btw, when debugging read/write callbacks, it's useful to log how much Duktape requested and how much was provided -- here you'd probably have seen that Duktape requested for 256 megabytes in the read callback (in one go) which would have been unusual :-)

https://github.com/fatcerberus/minisphere/blob/master/src/debugger.c#L65-L106
Note that the peek callback simply calls peek_socket(), which returns the number of bytes in the socket's receive buffer (socket reads are done in the background and buffered).

Actually looking at the bytes, it almost seems the 0x10 might be an extra byte - if you remove that, the read calls indicate a string of length 0x00000007 and the rest of the message is fine:
01 98 11 10 00 00 00 07 6d 61 69 6e 2e 6a 73 10 00 00 00 21 00 01 93 00
      ============== problem

# Remove the 0x11 and we have

01 | 98 | 10 00 00 00 07 6d 61 69 6e 2e 6a 73 | 10 00 00 00 21 | 00 | 01 | 93 | 00 |
REQ  0x18 "main.js"                             33               EOM  REQ  0x13 EOM

Based on this I'd guess that _tcp.Client.SendDValue(relativePath); will send an incorrectly formatted string dvalue, probably sending the length field as dvalue uint32 (11 10 00 00 00 07 ...) inside the string dvalue, rather than sending the length as a plain 4-byte field (11 00 00 00 07 ...).

Binary stuff is hard and tedious to work with :(
I dislike binary protocols quite a bit but for the debugger direct support for a JSON protocol was not an option for low memory clients. That's why there's a JSON proxy BTW, and I'd rather people integrate with that because it's much easier to work with.
One interesting option would be to include a transport example with Duktape which would parse binary debug messages from Duktape, encode them into the JSON mapping, and call out to a user callback which would get a full JSON debug message. Similarly it would parse incoming JSON mapped debug messages and write them out to Duktape in binary form. Because it would be optional it'd leave the low memory targets alone, and it would allow most people to work directly with something text based. (It'd have more memory churn than optimal but this doesn't matter for many targets.)

Another useful generic transport example would be something that mapped debug messages into a stream of already parsed dvalues, and accepted inbound dvalues. The transport would do automatic buffering needed to parse those dvalues.
And yet another would work with full debug messages mapped into a C array of dvalues, so that user code could concentrate on working with the debug message contents. Surprisingly many people want to embed the protocol decoder on the target (which I find odd).

Sorry to send you on a wild goose chase, this is quite embarassing for me because the DValue formats are the one part of the debugger documentation that I really made sure to study closely.
As for the JSON protocol, I initially wanted to use it (or something like it), but TCP being a dumb streaming protocol makes it very hard to write a proxy, and my preference is for a simple conversation of client-target with no middleman (the Node-based JSON proxy is a hefty dependency, especially since one of minisphere's design goals is compactness).
That said, I don't do any decoding on the C side, as you can see by my callbacks.  It was easier to write the DValue decoder in C# than C.

Added #251.

No worries, I'm glad the issue was found :)
The issues that crop up also reflect on how easy various things are to work with. The current debug binary protocol isn't easy to work with as small issues like these are usual when integrating with it, so even wild goose chases are useful input in that respect.
Not sure what to do about that while working well with low memory targets. One candidate is to keep a binary protocol but make it more regular (and less compact), including generic length framing. This would be worse for low memory targets which also had a slow serial link - but that's probably a reasonable tradeoff still; other clients with a slow link can just employ compression and take the memory hit.

Difficult to work with or not, the Duktape protocol is exactly the type of thing I have the most fun working with, stupid issues and all. :)

By the way, what is the limit for number of breakpoints?  I noticed Duktape had an error condition for when too many are set, but no mention of what the limit specifically is.

It's just an arbitrary define here:

https://github.com/svaarala/duktape/blob/master/src/duk_heap.h#L261

Breakpoints are implemented as a simple array of a fixed size which simplifies things. They're always processed only up to the last actually used one, so making that define much larger wouldn't slow down the debugger when the extra breakpoints were not in use. For this too, there's no DUK_USE_xxx flag now.


Change motor spinning direction

Hello!
I've tried to use CLI ti change motor spinning direction from N to R (set output_0 M R 1000 1500 2000). But It has no effect.
I also try to play with limits like change 1000-2000 to 2000-1000 and have same result.
Maybe I do something in a wrong way ?

Hi @Lisanderl,
this function is intended to reversing servos, not motors. To change motor direction you have two options

use spare fc or 4way interface to programm ESC, this firmware doesn't support this function yet
swap two motor wires

Oh, I see. Going to swap motor wires, thanks!


New about-us page to be created

Feature Title
New about-us page
Description
We need to add new about us page inside nextjs page folder with below content

Our website motivation - refer: https://github.com/jsvigneshkanna/tailwind_ui_components#motivation
Solution we are providing - refer: https://github.com/jsvigneshkanna/tailwind_ui_components#solution
Build by contributors for contributors
Contributors image - refer: https://github.com/jsvigneshkanna/tailwind_ui_components#contributors-

Design

follow https://tailwindcsscomponents.vercel.app/components page background gradient
text color should be white
horizontal padding should be same as navbar
mobile friendly
Exclusively styled with tailwindCSS

The new page should have navbar and footer component
Motivation
About us page makes the project cooler 😎
Issue Type
Frontend
Screenshot of the feature if done ?
nill
Are you taking this fetaure implementaion
Up for grabs

can you assign it to me?

Welcome back @deepaksuthar40128 , please go ahead
Add your own creativity on this page additional to mentioned stylings (need to be in tailwindCSS as the website itself for tailwindCSS components 🤪)

can i update the existing about us page and add above features?

Yes @deepaksuthar40128 that would work

@deepaksuthar40128 , we dont have existing aboutus page. We need to create new one


MathJax support

Hello,
I'm looking for a light-weight but powerful npm markdown plugin and happend to see this one.
After giving it a try it looks the best for me. But the only problem I come across is that I'm not able to embeded MathJax just like what I did using hexo-renderer-marked or hexo-renderer-pandoc .
It seems that this is a missing feature of markdown-it . Have you ever tried to use MathJax with hexo-renderer-markdown-it ?

with the help of this article I'm now able to write MathJax syntax now. Close this issue.

@wzpan could you please paste the steps for handle it.

install markdown-it-mathjax plugin for markdown it.

$ npm install markdown-it-mathjax --save

load mathjax in your layout files e.g.

<% if (page.math) { %>
<script type="text/x-mathjax-config">
   MathJax.Hub.Config({"HTML-CSS": { preferredFont: "TeX", availableFonts: ["STIX","TeX"], linebreaks: { automatic:true }, EqnChunk: (MathJax.Hub.Browser.isMobile ? 10 : 50) },
        tex2jax: { inlineMath: [ ["$", "$"], ["\\(","\\)"] ], processEscapes: true, ignoreClass: "tex2jax_ignore|dno",skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code']},
        TeX: {  noUndefined: { attributes: { mathcolor: "red", mathbackground: "#FFEEEE", mathsize: "90%" } }, Macros: { href: "{}" } },
        messageStyle: "none"
    });
</script>
<script type="text/x-mathjax-config">
    MathJax.Hub.Queue(function() {
        var all = MathJax.Hub.getAllJax(), i;
        for(i=0; i < all.length; i += 1) {
            all[i].SourceElement().parentNode.className += ' has-jax';
        }
    });
</script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<% } %>


Does a render action have access to the previous state of the math object on a rerender?

Is your feature request related to a problem? Please describe.
As this is more of a question than anything else, the relation to a problem is described in additional context.
Describe the solution you'd like
Some way to identify what part of a math object had a certain attribute injected into it and reapply the same attribute on the element replacing the old one on a rerender.
Describe alternatives you've considered
None.
Additional context
We are using a custom plugin for Reveal.js that injects data to math formulas so they can be fragmented and displayed piece by piece.
When MathJax rerenders a formula if you for example activate the "Accessibility" from the Math Menu, the DOM elements get recreated. This removes any "data-fragment-index" attributes that former "fragment" items had. As such a rerender of Math Formulas causes the order of elements on a slide to appear in the wrong order. In order to fix this one would have to find out what elements had what "data-fragment-index" attribute before the rerender and apply the exact same attribute to the elements that correspond to their ancestor (in time, not in DOM). This can be arbitrarily deep inside a Math Object. We are only using the SVG renderer.

Does a render action have access to the previous state of the math object on a rerender?

I suppose the answer depends on where your renderAction is in the list of actions, and what part of the information you are interested in using.  For example, I suspect that the old typesetRoot is probably still in place when the current typeset action is called, but I would not count on that, as it could change in the future.
On the other hand, there are two properties that can be used to store arbitrary information for the MathItem:  inputData and outputData.  So you could use mathitem.inputdata.dataFragments to store your index information (it could be an object that collects the data on the individual fragments).
You don't say much about the renderAction that you have defined, and where it runs.  It sounds like it is running after the TYPESET state, and operates on the DOM elements themselves.  You might consider moving it earlier in the action list, and have it operate on the internal MathML rather than the DOM elements.  You can add data attributes to the MathML and those will be preserved in the output.  Since re-rendering the MathItem doesn't re-compile the internal MathML, any changes you made there will be retained during a rerender (an accessibility change doesn't recompile, if I remember correctly).
Alternatively, you could define your own TeX commands that insert the needed attributes (including the needed id numbers) into the internal MathML representation, and then they will not be lost on retypesetting.  You could insert them in a pre-processing step, via a TeX input jax pre-filter for example, or a renderAction that runs before the COMPILE state, which could update the MathItem's math property so they are always the same when retypeset.
Without more information, it is hard to give you something more precise.

There are two ways we add the fragment class to parts of formulas:
Either by surrounding parts of the formula in \fragment{} . I am not familiar enough with how MathJax resolves this but this works out of the box without us adding anything:
$$\begin{eqnarray}
    \dot{\vec{u}} &=&
    \fragment{-\vec{u}\cdot\grad\vec{u}}
    \fragment{\;-\; \frac{1}{\rho}\grad p}
    \fragment{\;+\; \nu \laplace \vec{u}}
    \fragment{\;+\; \vec{f}}
    \label{eq:momentum} \\[2mm]
    \grad \cdot \vec{u} &=& 0
  \end{eqnarray}$$

The other way is we embedd a formula inside a DOM element that has the .math-incremental class:
 [$$
  \begin{eqnarray*}
  a &=& b \\
  a^2 &=& ab \\
  2a^2 &=& a^2 + ab \\
  2a^2-2ab &=& a^2 - ab \\
  2a(a-b) &=& a (a-b) \\
  2a &=& a \\
  2 &=& 1
  \end{eqnarray*}
  $$]{ .math-incremental }

We then use a render action to attach the .fragment class to each line:
function incrementalItem(item, doc) {
  const root = item.typesetRoot;
  if (root && root.closest(".math-incremental")) {
    for (let mrow of root.querySelectorAll(
      'g[data-mml-node="mtable"]:first-of-type > g[data-mml-node="mtr"]'
    )) {
      mrow.classList.add("fragment");
    }
    for (let mrow of document.querySelectorAll(
      'g[data-mml-node="mtable"]:first-of-type g[data-mml-node="mlabeledtr"]'
    )) {
      mrow.classList.add("fragment");
    }
  }
}

The issue is far less the .fragment class, it is that after typesetting and when Reveal is ready, it adds the data-fragment-index" to the DOM elements with the .fragment` class. Therefore we can not modify the MML, because the addition of the index happens post typesetting by a system we do not have control over.

Thanks for the additional information.  If the addition of the index happens through a system you don't have control over, I'm not sure what you have in mind for resolving this.  Are you wanting to add the indices yourself and not mark the result with the fragment class?  Would that work, or does fragment have to be there?  And if so, will the system override your index when it process the fragment class.
I'm just not quite sure I understand what you want to be done.
Note that there are several reasons that an expression could be re-rendered, and some of them involve the expression being changed (e.g., via an maction node that selects a different part of the expression to be shown).  So trying to connect indices from previous HTML DOM nodes to the current ones may not be effective.  But if you are not using the action extension, it would probably work.
You could save the current DOM tree as item.outputData.oldRoot = item.typesetRoot at the end of your renderAction, and when it starts, it checks if item.outputData.oldRoot exists, and if so, walks both that three and item.typesetRoot node by node and if the oldRoot node has the index attribute, transfer it to the typesetRoot node.  You might want to do some checking that the number of children are the same in both cases, and the node types are the same, just to be sure, but that could be used to do it.


ColumnSnapshotGeneratorInformix.readDataType() wrongly sets colLength value with column size (for informix DATETIME datatype)

Environment
Liquibase Version: 4.1.0
Liquibase Integration & Version: apache-maven 3.3.9
Liquibase Extension(s) & Version: none
Database Vendor & Version: IBM Informix Dynamic Server Version 11.70.FC5W1GE
Operating System Type & Version: Red Hat Enterprise Linux Server release 7.8 (Maipo)
Description
I run a jar on the target system which executes the update() method of the liquibase.Liquibase class on the Informix target database.
While validating the datatypes, the program stumbles over the datatype DATETIME.
When determining the qualifiers, as described at https://www.ibm.com/support/knowledgecenter/SSGU8G_11.50.0/com.ibm.sqlr.doc/ids_sqr_027.htm, an exception occurs.
To determine the qualifier the collength value of the respective column is needed.
In Informix databases this value is stored in the table 'syscolumns' in the column 'collength'.
The method ColumnSnapshotGeneratorInformix.readDataType() incorrectly sets the column size in the variable colLenght.
In my case the column size 25 of the column with the datatype 'DATETIME YEAR TO FRACTION (5)' was used instead of the actual collength of 4879.
Steps To Reproduce
I have integrated liquibase via maven dependency.
Then I wrote a test class to make use of the liquibase update method.
try(Connection connection = DriverManager.getConnection( informixURL, informixUser, informixPw )) {
			JdbcConnection jdbcConn = new JdbcConnection(connection);
			InformixDatabase database = (InformixDatabase)DatabaseFactory.getInstance().findCorrectDatabaseImplementation(new JdbcConnection(connection));
			database.setDefaultSchemaName("master");

			ResourceAccessor resourceAccessor = new ClassLoaderResourceAccessor();
		       Liquibase liquibase = new Liquibase( "path/to/changelog", resourceAccessor, database);
		       liquibase.update(new Contexts());

Actual Behavior
When running the jar I get the following error message:
liquibase.exception.UnexpectedLiquibaseException: liquibase.exception.DatabaseException: Encountered unknown firstQualifier code (1) for column 'master.databasechangelog.dateexecuted', basic date type 'DATETIME', while trying to decipher information encoded in the column length (25)
In line 56 of the java class ColumnSnapshotGeneratorInformix the columnMetadataResultSet.getInt("COLUMN_SIZE") is wrongly set to the colLength  variable which leads to the exception above,
Expected/Desired Behavior
The colLength variable should be set with the actual collength value for the certain column.
This value can be found in the system table 'syscolumns'.
In my case for the 'dateexecuted' column of the table databasechangelog.
SELECT collength FROM syscolumns WHERE tabid = (SELECT tabid FROM systables WHERE tabname = "databasechangelog") AND colname = "dateexecuted";

Hi @ChairwaKKa Thank you for creating this issue.  We are going to add it to our list of issues to process.

@tati-qalified - could you use the Liquibase CLI to test the DATETIME datatype to see if it's supported?

Hello @ChairwaKKa, sorry for the late reply.
This issue has been reported before, around the time when you reported it, with a similar Informix version. Neither of those versions are available anymore, as they've been deprecated and taken down by IBM. I haven't been able to reproduce this bug with any available Informix version, so I'll be closing the ticket.
If you or anyone else faces this problem again, feel free to let me know and I'll reopen it.
Thank you,
Tatiana


WIP: Handle non-abstract methods

Fixes #24

I'm puzzled with why case None => q"$mods val $name : $returnType = $returnValue" returns final val <name>: <type> but without implementation. Removing $mods makes it work again val <name>: <type> = <impl>, but somehow the compiler still complains about only traits and abstract classes can have declared but undefined members.


Missing man page for deprecated public CMAC_* functions

After a fresh clone:
[murray@hgm openssl]$ grep CMAC doc/ -r
doc/man3/EVP_PKEY_CTX_ctrl.pod:and B<p2> is MAC key. This is used by Poly1305, SipHash, HMAC and CMAC.
[murray@hgm openssl]$

So there are at least 2 relevant stackoverflow questions related to this:
https://stackoverflow.com/questions/28354844/how-to-calculate-aes-cmac-using-openssls-cmac-xxx-functions
https://stackoverflow.com/questions/34990080/cmac-key-generation-with-openssl-evp-digestsign-fails
We also have an EVP_PKEY_new_CMAC_key(), which we should probably encourage to be used instead of the CMAC interface.

The new interface EVP_MAC can now be used.
See also EVP_MAC_CMAC.
There is documentation (.pod files) for these.

The new interface EVP_MAC can now be used.

Current this is master only - so not in any stable release.

Can this be closed now? There is a stable 3.0 release that contains the EVP_MAC_CMAC interface

Well... the CMAC_ public functions are deprecated but still there so the bug is still relevant although definitely not a priority to fix.

Can this be closed now? There is a stable 3.0 release that contains the
EVP_MAC_CMAC interface

I think so.
It would be nice if there was a web page discussing this area.  I assume the
lack of web pages was because it wasn't a good/clean API appropriate for
public use.  But I'm not the only one who found it and figured out how to use
it.  Explaining that whold area may take more than a simple web page or more
time to make it small/clean than is available.
Many many years ago, the group I worked with had 3 types of APIs.  In addition
to public and private, there was also friends.  Friends covered the case of a
legitimate use case that wasn't covered by the public APIs.  There were few
users and they were expected to modify their code if/when things changed.  It
was the sort of cooperative work that is much easier in small groups.
--
These are my opinions.  I hate spam.

@t8m I can create a PR that includes man pages for the deprecated functions, pointing to the new ones, if this is still desired.
In my experience, having these man pages significantly aids in the migration efforts of older code. To keep the effort low, I wouldn’t explain the functions in detail on these man pages, as the new functions are already sufficiently documented.

Yes, surely a PR adding the documentation even for deprecated functions would be welcome.


connect to windowd 10

How do i share internet from my android to windows 10. I havent found any instructions in github

Hi
There is an instruction page im the app and some deeper dive instructions here on github, but to summarize
Start the hotspot by clicking the button in the app
On your windows machine, go to the Network and Internet settings and setup a Manual Mode HTTP Proxy.
Take a peek at the wiki here on github which should include some simple screenshots

Hi
There is an instruction page im the app and some deeper dive instructions here on github, but to summarize
Start the hotspot by clicking the button in the app
On your windows machine, go to the Network and Internet settings and setup a Manual Mode HTTP Proxy.
Take a peek at the wiki here on github which should include some simple screenshots

Thanks it works


List of other font projects in Rust

https://github.com/google/font-rs

https://github.com/dylanede/rusttype


[CP] Update analytics message and carry forward legacy opt-outs

Commit(s) to merge
a6ebd6fa8e93a6b9754b34feaf322e2565eec718
Target
beta
Prepared changelist for beta/stable
https://dart-review.googlesource.com/c/sdk/+/295920
Issue Description
The PDD intended for analytics to actually substitute dart and flutter into the analytics message rather than using literally [dart|flutter].    Analytics does not import settings from the legacy analytics package.
What is the fix
String substitution, and a best effort attempt to carry forward the legacy analytics settings from dart or flutter into unified analytics.
Why cherry-pick
The string substitution is minor, but a lack of it could confuse users if they do not understand that [dart|flutter] in a command line is not to be taken literally.  The honoring of legacy analytics opt-outs should be cherrypicked as it will be more convenient for users.
Risk
low
Issue link(s)
https://github.com/dart-lang/tools/issues/74, https://github.com/dart-lang/tools/issues/82
Extra Info
As created, this cherry pick is built on top of https://dart-review.googlesource.com/c/sdk/+/295386 (https://github.com/dart-lang/sdk/issues/52044).   If that cherry pick is rejected, this cherry pick will need to be rebuilt based on a branch in the tools repository.

SGTM, it's critical that we take this pick


Missing config files?

Hey,
for the most recent dotfiles there only seems to be the eww config?
Is that intended or are some files missing?

Yes it is intended. I should have mentioned it but I forgot but you can use my configs from February. All configs are same and only the eww widgets are new.


Adds support for sub expressions

This PR adds support for passing in sub-expressions whether they export a basic result or a SafeString result. Allows you to nest your own helper and  do:
{{markdown-to-html markdown=(my-helper someStringOrWhatever)}}

Also needed to lock jquery versions in bower.json because was throwing "Assertion Failed: Ember Views require jQuery between 1.7 and 2.1." See https://github.com/emberjs/ember.js/pull/12787 for more info.

@rosschapman I'd be happy to accept this, can you rebase?


Is there support for the Salesforce Marketing Cloud?

I am interested in this topic as well. Does jsforce integrate Marketing Cloud as well?
Thanks for feedback

I'm also looking for answer to this, if someone knows/finds anything it would be appreciated if you could share it here.


Fix link blocks' positions

The position of a newly created link block was always 1 so you could have multiple link blocks with the same position.

The table that allows us to organise the link blocks wasn't updating the database...

Thanks @antoin-m


Drop support for 2.6

Since Python 2.6 is not supported by Python's core team anymore does it make sense to keep supporting it? Another nail in 2.6's coffin is the fact that currently the CI build for 2.6 is not even passing - dropping support for 2.6 is easier than fixing the build.
DEPRECATION: Python 2.6 is no longer supported by the Python core team, please upgrade
             your Python. A future version of pip will drop support for Python 2.6

People stuck with 2.6 can always install an older version of petl; it is 2018 and keeping support for 2.6 is not worth anymore.

Yep, I'm (more than) happy to drop support for 2.6.
On Wednesday, 16 May 2018, Paulo Scardine<EMAIL_ADDRESS>wrote:

Since Python 2.6 is not supported by Python's core team anymore does it
make sense to keep supporting it? Another nail in 2.6's coffin is the fact
that currently the CI build for 2.6 is not even passing - dropping support
for 2.6 is easier than fixing the build.
DEPRECATION: Python 2.6 is no longer supported by the Python core team, please upgrade your Python. A future version of pip will drop support for Python 2.6
People stuck with 2.6 can always install an older version of petl but it
is 2018 and keeping support for 2.6 is not worth anymore.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/alimanfoo/petl/issues/443, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAq8QlTvTkHV5SZjSoTVCLIbEt36b0khks5tzGe5gaJpZM4UBw2I
.

--
If I do not respond to an email within a few days, please feel free to
resend your email and/or contact me by other means.
Alistair Miles
Head of Epidemiological Informatics
Centre for Genomics and Global Health
Big Data Institute
Li Ka Shing Centre for Health Information and Discovery
Old Road Campus
Headington
Oxford
OX3 7LF
United Kingdom
Phone: +44 (0)1865 743596 or +44 (0)7866 541624
Email<EMAIL_ADDRESS>Web: http://a http://purl.org/net/alimanlimanfoo.github.io/
Twitter: @alimanfoo https://twitter.com/alimanfoo

Here's the pip installs for petl from PyPI for April 2018:

python_version
percent
download_count

2.7
73.39%
4,033

3.6
12.39%
681

3.5
6.77%
372

3.4
6.57%
361

2.6
0.86%
47

3.7
0.02%
1

Total

5,495

Source: pypinfo --start-date 2018-04-01 --end-date 2018-04-30 --percent --pip --markdown petl pyversion
Please see PR #444.


Make rev optional for fetchFromGit if useFetchGit is set to true

Motivation for this change
Fixes #146989
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[X] Fits CONTRIBUTING.md.

There are no proper checks implemented for rev being needed if useFetchGit is false, though.

There are no proper checks implemented for rev being needed if useFetchGit is false, though.

it will also probably fall apart if name or owner or repo is set to true/false.

In this case I think that another PR should address that, right?
If that's not the case, I could try to fix it but I'd need some advice on proper Nix-fu

In this case I think that another PR should address that, right?

I don't think we really need to do this. If nix had proper types this would be avoided but I don't think we should emulate proper types.

Yes, I am not doing any proper checks yet. I will address these issues soon, the PR is not ready to be merged yet

I wanted to add more sanity checks, I am unsure they are needed, though. If you feel this is ready to be merged, please do so.
(I removed the previous comment by mistake where I stated I wanted to add more checks)


Generic interface tests

With growing number of exchanges, noticing which exchanges currently "broke" in some way gets harder. I wonder if it wouldn't be easy to write some JUnit tests which instantiate every Exchange implementation and call the public xchange-core interface methods and assert that the output is a non-http error code and contains some data. Not sure this would be feasible for private methods, but it is much better than without it. Perhaps this could even be hooked up with github. What do you think? I know we had a similar discussion months ago but perhaps worth starting again.

I added a mechanism for this and one sample test class under ANX. I'll probably add more soon. Let me know if you see a problem with how I implemented this.

Done. Almost all of the modules now have a single integration test. See Step 9 at: https://github.com/timmolter/XChange/wiki/New-Implementation-Best-Practices

I have a problem with that. Now the build takes forever, and it fails on mercado due to missing certificate. Should really mvn clean install require meddling with jre cerificates?

You could add the "skip tests" maven flag if you want to make it go faster and skip the integration tests.
mvn test will run only the unit tests. mvn verify will run unit and integration tests, as well as mvn install of course.
You can also add CertHelper.whatever to the Mercado module integration test. I did that for another one that failed for me.


tool to format loop/pump status to upload to NS (still WIP)

Related to https://github.com/nightscout/cgm-remote-monitor/pull/1375

Me likey.

Any reason not to merge this?

The NS side isn't done yet, might move things around a little.  For example moving clock into the pump field.
Any other loop/pump info that we should include?  Maybe glucose since there could be multiple cgm sources in the mix?
Looks like this now:
 {
   "created_at": "2015-11-26T19:44:08.827Z",
   "pump": {
     "battery": {
       "status": "normal",
       "voltage": 1.55
     },
     "status": {
       "status": "normal",
       "timestamp": "2015-11-26T18:35:37.000Z",
       "bolusing": false,
       "suspended": false
     },
     "reservoir": 63.6
   },
   "_id": "56576108a2e465406b159089",
   "openaps": {
     "suggested": {
       "bg": 137,
       "temp": "absolute",
       "snoozeBG": 121,
       "timestamp": "2015-11-26T18:38:28.000Z",
       "reason": "Eventual BG 93<110, but Avg. Delta 1 > BGI -2.7 / 2; no temp to cancel",
       "eventualBG": 93,
       "tick": -1
     },
     "clock": "2015-11-26T11:16:54-08:00",
     "iob": {
       "timestamp": "2015-11-26T18:38:28.000Z",
       "activity": 0.006008522727272727,
       "iob": 0.6089677465487501,
       "bolusiob": 0.2070931420800001
     },
     "enacted": {
       "bg": 113,
       "temp": "absolute",
       "snoozeBG": 164,
       "recieved": true,
       "rate": 0,
       "reason": "Eventual BG 86<110, but Avg. Delta 12 > BGI -1.56 / 2; cancel",
       "eventualBG": 86,
       "timestamp": "2015-11-26T18:09:35.000Z",
       "duration": 0,
       "tick": "+7"
     }
   }
 }


Bump main spec version

Closes #655
A node will attempt to use its native runtime in substitute for the on-chain Wasm runtime if all of spec_name, spec_version, and authoring_version are the same between the Wasm and native binaries. This was causing nodes compiled from main to use a runtime slightly different compared to what is on-chain, and write invalid stuff to storage.
In the future, CI should prevent us from ever pushing to main a spec version that matches what is on-chain (cc @sam0x17)
See https://docs.substrate.io/maintain/runtime-upgrades/ for more.

damn legends, thanks for fixing this


Insecure session id creation

If the session identifier requested by the user was not found in the session repository, a session will be created with the identifier requested by the user.
For example, when requesting a non-existent session:
Request Headers:
cookie: s=auth_admin

a session will be created with the requested name auth_admin.
This is not secure, given that you can specify control characters in the name of the session identifier.
The correct behavior in the absence of the requested session identifier will be the assignment of a new identifier.

@mahovich sorry, I haven't got the secure problem. The session identifier is just used for comparison, is that have any problems?

Only for comparison??
For example, in your example using Redis, a new session identifier specified by the user is written directly to the database!

@mahovich I got it!  That is a problem! thank you so much! 👍


Corporate Console - Observed CORS error while loading projects during CLA signature process

Background

Launch https://corporate.dev.lfcla.com
Login as CLA Manager
Click on company
Click on SIGN NEW CLA
Page hangs while loading projects and observed CORS issue in console

Verified and observed that the issue is fixed


Add files via upload

https://ismis.bisu.edu.ph/
https://www.facebook.com/bisuofficial

URLs of the University's Official facebook page:
https://www.facebook.com/bisuofficial
Proof of enrollment:

@vamp-jjang Thank you for your patience while waiting for a review and processing your request. Pull request merged.
Please start requesting the licenses in about an hour, to let the changes to propagate through our system.

Thank you for your patience 🙏 honestly I have no idea how to use github,
hope everything goes well for my request.
On Wed, Oct 9, 2024, 8:33 PM Philip Torchinsky @.***>
wrote:

@vamp-jjang https://github.com/vamp-jjang Thank you for your patience
while waiting for a review and processing your request. Pull request merged.
Please start requesting the licenses in about an hour, to let the changes
to propagate through our system.
—
Reply to this email directly, view it on GitHub
https://github.com/JetBrains/swot/pull/24171#issuecomment-2402196592,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEAWMXHJ6WPQTT3CJOBXUNDZ2UPBLAVCNFSM6AAAAABPM2VZV6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBSGE4TMNJZGI
.
You are receiving this because you were mentioned.Message ID:
@.***>


[Usage]: RuntimeError: CUDA error: uncorrectable ECC error encountered

Your current environment
PyTorch version: 2.3.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A

OS: Ubuntu 20.04.6 LTS (x86_64)
GCC version: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
Clang version: Could not collect
CMake version: version 3.29.3
Libc version: glibc-2.31

Python version: 3.8.10 (default, Nov 22 2023, 10:22:35)  [GCC 9.4.0] (64-bit runtime)
Python platform: Linux-5.4.0-182-generic-x86_64-with-glibc2.29
Is CUDA available: True
CUDA runtime version: 12.4.131
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration: GPU 0: NVIDIA A100-SXM4-40GB
Nvidia driver version: 550.54.14
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Architecture:                       x86_64
CPU op-mode(s):                     32-bit, 64-bit
Byte Order:                         Little Endian
Address sizes:                      44 bits physical, 48 bits virtual
CPU(s):                             4
On-line CPU(s) list:                0-3
Thread(s) per core:                 2
Core(s) per socket:                 2
Socket(s):                          1
NUMA node(s):                       1
Vendor ID:                          AuthenticAMD
CPU family:                         25
Model:                              17
Model name:                         AMD EPYC 9354 32-Core Processor
Stepping:                           1
CPU MHz:                            3245.141
BogoMIPS:                           6490.28
Hypervisor vendor:                  Microsoft
Virtualization type:                full
L1d cache:                          64 KiB
L1i cache:                          64 KiB
L2 cache:                           2 MiB
L3 cache:                           32 MiB
NUMA node0 CPU(s):                  0-3
Vulnerability Gather data sampling: Not affected
Vulnerability Itlb multihit:        Not affected
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Not affected
Vulnerability Retbleed:             Not affected
Vulnerability Spec store bypass:    Vulnerable
Vulnerability Spectre v1:           Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; Retpolines, IBPB conditional, IBRS_FW, STIBP conditional, RSB filling, PBRSB-eIBRS Not affected
Vulnerability Srbds:                Not affected
Vulnerability Tsx async abort:      Not affected
Flags:                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 erms avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves xsaveerptr arat avx512vbmi avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid

Versions of relevant libraries:
[pip3] numpy==1.24.4
[pip3] nvidia-nccl-cu12==2.20.5
[pip3] torch==2.3.0
[pip3] triton==2.3.0
[conda] Could not collectROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: 0.4.3
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
GPU0    CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      0-3     0               N/A

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

How would you like to use vllm
I want to run inference of NousResearch/Meta-Llama-3-8B-Instruct. I am getting the following error:
WARNING 06-03 17:32:17 config.py:1155] Casting torch.bfloat16 to torch.float16.
WARNING 06-03 17:32:17 config.py:427] Possibly too large swap space. 4.00 GiB out of the 7.70 GiB total CPU memory is allocated for the swap space.
INFO 06-03 17:32:17 llm_engine.py:161] Initializing an LLM engine (v0.4.3) with config: model='NousResearch/Meta-Llama-3-8B-Instruct', speculative_config=None, tokenizer='NousResearch/Meta-Llama-3-8B-Instruct', skip_tokenizer_init=False, tokenizer_mode=auto, revision=None, rope_scaling=None, tokenizer_revision=None, trust_remote_code=False, dtype=torch.float16, max_seq_len=8192, download_dir=None, load_format=LoadFormat.AUTO, tensor_parallel_size=1, disable_custom_all_reduce=False, quantization=None, enforce_eager=False, kv_cache_dtype=auto, quantization_param_path=None, device_config=cuda, decoding_config=DecodingConfig(guided_decoding_backend='outlines'), seed=0, served_model_name=NousResearch/Meta-Llama-3-8B-Instruct)
Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.
Traceback (most recent call last):
File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/root/myenv/lib/python3.8/site-packages/vllm/entrypoints/openai/api_server.py", line 186, in
engine = AsyncLLMEngine.from_engine_args(
File "/root/myenv/lib/python3.8/site-packages/vllm/engine/async_llm_engine.py", line 386, in from_engine_args
engine = cls(
File "/root/myenv/lib/python3.8/site-packages/vllm/engine/async_llm_engine.py", line 340, in init
self.engine = self._init_engine(*args, **kwargs)
File "/root/myenv/lib/python3.8/site-packages/vllm/engine/async_llm_engine.py", line 462, in _init_engine
return engine_class(*args, **kwargs)
File "/root/myenv/lib/python3.8/site-packages/vllm/engine/llm_engine.py", line 222, in init
self.model_executor = executor_class(
File "/root/myenv/lib/python3.8/site-packages/vllm/executor/executor_base.py", line 41, in init
self._init_executor()
File "/root/myenv/lib/python3.8/site-packages/vllm/executor/gpu_executor.py", line 23, in _init_executor
self.driver_worker.init_device()
File "/root/myenv/lib/python3.8/site-packages/vllm/worker/worker.py", line 109, in init_device
self.init_gpu_memory = torch.cuda.mem_get_info()[0]
File "/root/myenv/lib/python3.8/site-packages/torch/cuda/memory.py", line 655, in mem_get_info
return torch.cuda.cudart().cudaMemGetInfo(device)
RuntimeError: CUDA error: uncorrectable ECC error encountered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.

This usually means a hardware error, and should be recovered by a new run. If it occurs in every run, it is likely that your hardware is broken.

You are right, this was caused due to a hardware failure, working perfectly fine on other hardware. Thank you.


CampFort - Check pokeballs before camping

Short Description:
I noticed that the bot doesn't move when camping at a lure, but had run
out of pokeballs. This will first check IF we have any pokeballs left.
If we have no pokeballs left, abandon the lure (to move to a fort to get
more pokeballs) when we got some pokeballs again, will move back to the
lure.

On top of my comment, I am wondering something. The CampFort is not staying at a specific fort but in the middle of a cluster, which makes it a good location to spin forts, lazily speaking.
I can image a scenario where you are always out of Pokeballs, and so the task would have no effect at all.
The original goal was to really stop walking, take at rest at a convenient place. That we agree would be less efficient than walking around whole day, but also much more human.
Did you notice that you run out of Pokeballs while activating the CampFort ?

I see what you mean. But my line of thought was; if I was outside, playing Pokemon Go, I'm sitting at a few lures, and I run out of Pokeballs... I would look around for other stops nearby (that might be the tweak here!) to spin and collect balls. As I would wander to other stops to get some balls, I would still come back to the lure "hotspot" when I got a few more balls.
What do you think? Is that a reasonable thing to argue here? Maybe with the distant tweak?

OK. Let's just move down a bit the code then, to avoid message spam.

@Anakin5 Okay, so I've move the check below the enabled check. I also added a boolean to check if we've announced that the bot is out of balls. What do you think?

@davidakachaos Actually it should go down a little bit more, after the check now < move_until. That is because we don't want to warn about not staying at the fort if were going to do so in the first place (because the timer moving is still under way).
To limit the output, you could also activate the move_until timer otherwise we are going to get 1 ball at a nearby pokestop and then come back to camp with only 1 ball. Would be better to walk for 10 minutes.

Thank you @Anakin5 for all the great advise :smile: Now the worker will move away from the lure for a set time after which it will check again for enough balls.

👍

I will do a little adjustement latter on to support move_time = 0 but it can wait a bit


Structs differentiate pointer / value?

Is it useful to differentiate between Gdk.ColorRef and Gdk.Color?
In this way ColorRef could have a method which converts its pointer in an actual struct.
If it is not useful it would be possible to use generated properties on the structs to access it fields without the need to introduce the actual struct to the user. The properties would hide the struct.

The content of this issue is now part of #622.


Cleaning up ruby extension code a bit.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Ruby is green.


📖 Add user-quickstart-test to packaging and versioning drawing

Summary
This PR updates the packaging and versioning drawing to include the test user quickstart.
Related issue(s)
Fixes #

/cc @clubanderson
/cc @francostellari
/cc @KPRoche


Update documentation for importing the package

Need to update the README to say:
import "github.com/gojektech/heimdall/httpclient"
instead of "github.com/gojektech/heimdall".

@warlck Thanks, can you plz raise a PR for this.


Parameterised testing using structure or variables

Hello,
I have been trying to use parameterised test using structure but without success.
Ceedling version
Welcome to Ceedling!
Ceedling:: 0.31.1
CMock:: 2.5.4
Unity:: 2.5.4
CException:: 1.3.3
Issue
I want to pass a structure via the parameterised test feature of unity
In my file test_xx.c
I have:
 #include "GeofenceCommon.h" // location of the definition of GeofenceCommon_Point_t

 /* RayCastingAlgorithm_IsPointInPolygon Tests Section */

 GeofenceCommon_Point_t TestPoint = {.latitude = 30.0f, .longitude = 30.0f};

 TEST_CASE(TestPoint)
void test_name(GeofenceCommon_Point_t mock_point)
{
	/* Mock variables */

	/* Variables */
	bool result;

	/* Mock function expectation */

	/* Function call */
	result = RayCastingAlgorithm_IsPointInPolygon(mock_squarePolygon, mock_point);

	/* Test assert call */
	TEST_ASSERT_TRUE(result);
}

The issue with this is when the test runner is generated it copies TestPoint into the test runner but does not have access to the definition. Which is fair.
Move definition of variable in header file
I then move TestPoint definition into its own header file
HeaderType.h
#ifndef HeaderType_H
#define HeaderType_H

#include "GeofenceCommon.h" // location of the definition of GeofenceCommon_Point_t

GeofenceCommon_Point_t TestPoint = {.latitude = 30.0f, .longitude = 30.0f};

#endif /* HeaderType_H */

I also add it to the test runner, so in project.yml add
:test_runner:
  :includes:
    - GeofenceCommon.h
    - ../../../HeaderType.h

I get the following error:
stderr:
/usr/bin/ld: build/test/out/c/test_RayCastingAlgorithm.o:/workspace/CeedlingTestFramework/test/../HeaderType.h:17: multiple definition of `TestPoint'; build/test/out/c/test_RayCastingAlgorithm_runner.o:/workspace/CeedlingTestFramework/build/test/runners/../../../HeaderType.h:17: first defined here
collect2: error: ld returned 1 exit status

Move definition of variable in Source file
I create a source fileHeaderType.C
#include "HeaderType.h"
GeofenceCommon_Point_t TestPoint = {.latitude = 30.0f, .longitude = 30.0f};

I modify fileHeaderType.h
#ifndef HeaderType_H
#define HeaderType_H
#include "GeofenceCommon.h"
extern GeofenceCommon_Point_t TestPoint;
#endif /* HeaderType_H */

I get the error:
stderr:
/usr/bin/ld: build/test/out/c/test_RayCastingAlgorithm_runner.o: warning: relocation against `TestPoint' in read-only section `.text.runner_args1_test_given_a_square_polygon_and_point_in_polygon_when_point_in_polygon_then_detect_point_in_polygon'
/usr/bin/ld: build/test/out/c/test_RayCastingAlgorithm_runner.o: in function `runner_args1_test_given_a_square_polygon_and_point_in_polygon_when_point_in_polygon_then_detect_point_in_polygon':
/workspace/CeedlingTestFramework/build/test/runners/test_RayCastingAlgorithm_runner.c:79: undefined reference to `TestPoint'

Reference
https://github.com/ThrowTheSwitch/Ceedling/issues/241#issuecomment-365348518
Final Question
How do I pass variables or structure to a parameterised test? Is that even possible using ceedling?

I just had the same issue.
I kept the definition of the variable in my test file.
And then in a header file had an extern.
i.e. extern GeofenceCommon_Point_t TestPoint
And included that header file in both my runner and test file.
Not sure how scalable this is approach will be though.... Really do need to be able to use structs, pointers to buffers, variables, etc in parameterised testing and having to have all of these as global variables feels rather hacky.

TestPoint should be in test file and extern in header like @jonyscathe mentioned. But that is just poor architecture. While sometimes global variables are needed (that is when they should be defined in test file as well), you will need to change them (clear them) in the setup/teardown of the test to ensure that various tests are not dependant on the order of the execution.

@Letme can you suggest a better way to architect this style of test?
There are times when it is very useful to set up parameterised testing with structs to improve readability and cut down on the amount of code required in the actual test itself.
But if this isn't possible without those structs being global variables then that isn't an ideal approach as this will get messy once a project has more than a handful of files.
Sorry if this is a bit basic, but this is my first attempt at using Unity/Ceedling so I do have a bit to learn.

What you usually do if you have too many function parameters is that you pass the pointer to structure (that test point) to the function as parameter. This enables you to have a structure in RAM (can be even local inside the test_function) and then manipulate the data over the pointer. If you decide to save on RAM you can also put it as a global variable and save it in FLASH (or somewhere else). Compiler handles stuff quite great and you gain the flexibility for global/local access.
Wherever you have it, the parametrized test will need to change it in setUp and preferably clear it in tearDown.


diff-pdf: init at 2017-12-30.

Looking for alternatives to diffpdf, found this :).

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

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

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Success on x86_64-linux (full log)
Partial log (click to expand)
make[1]: Leaving directory '/tmp/nix-build-diff-pdf-2017-12-30.drv-0/source'
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30
shrinking /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30/bin/diff-pdf
strip is /nix/store/5qj61lcvzlap87rf6blvf8p577d482bv-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30/bin
patching script interpreter paths in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30
checking for references to /tmp/nix-build-diff-pdf-2017-12-30.drv-0 in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30...
/nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30

Failure on x86_64-darwin (full log)
Partial log (click to expand)
build flags: SHELL=/nix/store/s8mff1kmnc63b21ybdid2ni0fw7mzy7r-bash-4.4-p12/bin/bash
  CXX      diff_pdf-diff-pdf.o
  CXX      diff_pdf-bmpviewer.o
  CXX      diff_pdf-gutter.o
  CXXLD    diff-pdf
ld: framework not found Cocoa
clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:413: diff-pdf] Error 1
builder for '/nix/store/bh68sz2lr6yn0hkzq386jh8biayj07az-diff-pdf-2017-12-30.drv' failed with exit code 2
error: build of '/nix/store/bh68sz2lr6yn0hkzq386jh8biayj07az-diff-pdf-2017-12-30.drv' failed

Success on aarch64-linux (full log)
Partial log (click to expand)
make[1]: Leaving directory '/build/source'
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30
shrinking /nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30/bin/diff-pdf
strip is /nix/store/xmpjypwjmp2qi1chs5kr0hacnh161ls4-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30/bin
patching script interpreter paths in /nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30
checking for references to /build in /nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30...
/nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30

Not sure if it'll rebuild after new commit, so:
@GrahamcOfBorg build diff-pdf

Failure on x86_64-darwin (full log)
Partial log (click to expand)
build flags: SHELL=/nix/store/s8mff1kmnc63b21ybdid2ni0fw7mzy7r-bash-4.4-p12/bin/bash
  CXX      diff_pdf-diff-pdf.o
  CXX      diff_pdf-bmpviewer.o
  CXX      diff_pdf-gutter.o
  CXXLD    diff-pdf
ld: framework not found Cocoa
clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:413: diff-pdf] Error 1
builder for '/nix/store/00q5awz9kigwqykqh2dxs5gfbky0y7nd-diff-pdf-2017-12-30.drv' failed with exit code 2
error: build of '/nix/store/00q5awz9kigwqykqh2dxs5gfbky0y7nd-diff-pdf-2017-12-30.drv' failed

Success on aarch64-linux (full log)
Partial log (click to expand)
make[1]: Leaving directory '/build/source'
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/2yk03bwx03pskk0vyl1ilyb6wra31pn3-diff-pdf-2017-12-30
shrinking /nix/store/2yk03bwx03pskk0vyl1ilyb6wra31pn3-diff-pdf-2017-12-30/bin/diff-pdf
strip is /nix/store/xmpjypwjmp2qi1chs5kr0hacnh161ls4-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/2yk03bwx03pskk0vyl1ilyb6wra31pn3-diff-pdf-2017-12-30/bin
patching script interpreter paths in /nix/store/2yk03bwx03pskk0vyl1ilyb6wra31pn3-diff-pdf-2017-12-30
checking for references to /build in /nix/store/2yk03bwx03pskk0vyl1ilyb6wra31pn3-diff-pdf-2017-12-30...
/nix/store/2yk03bwx03pskk0vyl1ilyb6wra31pn3-diff-pdf-2017-12-30

Success on x86_64-linux (full log)
Partial log (click to expand)
/nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30

Success on aarch64-linux (full log)
Partial log (click to expand)
/nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30

Failure on x86_64-darwin (full log)
Partial log (click to expand)
build flags: SHELL=/nix/store/s8mff1kmnc63b21ybdid2ni0fw7mzy7r-bash-4.4-p12/bin/bash
  CXX      diff_pdf-diff-pdf.o
  CXX      diff_pdf-bmpviewer.o
  CXX      diff_pdf-gutter.o
  CXXLD    diff-pdf
ld: framework not found Cocoa
clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:413: diff-pdf] Error 1
builder for '/nix/store/bh68sz2lr6yn0hkzq386jh8biayj07az-diff-pdf-2017-12-30.drv' failed with exit code 2
error: build of '/nix/store/bh68sz2lr6yn0hkzq386jh8biayj07az-diff-pdf-2017-12-30.drv' failed

Success on aarch64-linux (full log)
Partial log (click to expand)
/nix/store/38r9l9mgw5x42mj29sgpjii9qsrzpcc6-diff-pdf-2017-12-30

Success on x86_64-linux (full log)
Partial log (click to expand)
make[1]: Leaving directory '/tmp/nix-build-diff-pdf-2017-12-30.drv-0/source'
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30
shrinking /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30/bin/diff-pdf
strip is /nix/store/5qj61lcvzlap87rf6blvf8p577d482bv-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30/bin
patching script interpreter paths in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30
checking for references to /tmp/nix-build-diff-pdf-2017-12-30.drv-0 in /nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30...
/nix/store/06ckwnng0g0fb3fzaixpxq4dklyxak1w-diff-pdf-2017-12-30

Success on x86_64-darwin (full log)
Partial log (click to expand)
 /nix/store/pvwc2pkr54z8bnh65lmbrz0h5m3pzn2h-coreutils-8.29/bin/mkdir -p '/nix/store/19k7n1mfr9ib5jnajw53pahi5vj39j2r-diff-pdf-2017-12-30/bin'
  /nix/store/pvwc2pkr54z8bnh65lmbrz0h5m3pzn2h-coreutils-8.29/bin/install -c diff-pdf '/nix/store/19k7n1mfr9ib5jnajw53pahi5vj39j2r-diff-pdf-2017-12-30/bin'
make[1]: Nothing to be done for 'install-data-am'.
make[1]: Leaving directory '/private/tmp/nix-build-diff-pdf-2017-12-30.drv-0/source'
glibPreFixupPhase
post-installation fixup
strip is /nix/store/5a88zk3jgimdmzg8rfhvm93kxib3njf9-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/19k7n1mfr9ib5jnajw53pahi5vj39j2r-diff-pdf-2017-12-30/bin
patching script interpreter paths in /nix/store/19k7n1mfr9ib5jnajw53pahi5vj39j2r-diff-pdf-2017-12-30
/nix/store/19k7n1mfr9ib5jnajw53pahi5vj39j2r-diff-pdf-2017-12-30


Document stack's clipping behaviour better

Fixes https://github.com/flutter/flutter/issues/40216

You could also mention this:
https://github.com/flutter/flutter/issues/75731

You could also mention this: #75731

https://github.com/flutter/flutter/pull/130776


Add shebangs and shell options

shellcheck seems to recommend that we add shebangs to shell scripts. Doing so would make it clear what shell we're targeting.
@alxndrsn has also brought up the idea of using bash's -e and -o pipefail options. When we add shebangs, we could consider adding shell options as well.

Closed by #331.


FileAccess produces .tmp file when used inside EditorPlugin._build callback.

Godot version
v4.0.beta2.official [f8745f2f7]
System information
Windows 10
Issue description
When writing to a file in the _build callback of an EditorPlugin and afterwards printing the list of files in this directory, the file is not in the list. Instead a file with .tmp added is contained. The following code was used:
@tool
extends EditorPlugin

func _build() -> bool:
	var file = FileAccess.open("res://test.txt", FileAccess.WRITE)
	file.store_string("test")
	file.flush()
	print(DirAccess.get_files_at("res://"))
	return false

Output: [".gitattributes", ".gitignore", "icon.svg", "icon.svg.import", "project.godot", "test.txt.tmp"]
Using the old API's in beta1 this did not occure.
Code in beta1:
@tool
extends EditorPlugin

func _build() -> bool:
	var file = File.new()
	file.open("res://test.txt", File.WRITE)
	file.store_string("test")
	file.close()

	var dir = Directory.new()
	dir.open("res://")
	print(dir.get_files())
	return false

Output (beta1): [".gitattributes", ".gitignore", "icon.svg", "icon.svg.import", "project.godot", "test.txt"]
At first I thought it could have something to do with the removed close method. But the beta2 code works as expected, when used in a normal script. So this must be some edge case.
Steps to reproduce

Create an editor plugin with the code from above.
Try to run in beta1 and beta2
Observe the output

Minimal reproduction project
file_access_bug.zip

I'm not sure if this is a bug. If you add file = null after file.flush(), it will release the reference and the file will be created in the file objects destructor. This is supposed to be the "new" way to do this, but I find removing that FileAccess.close() method to be pretty confusing to many.
When when using "res://"-paths etc. the file access does some special handling, and sometimes that special handling is writing into a .tmp file and then renaming it when everything is ready. Previously that was when close() was called, now it is when all references to it are gone and the FileAccess object is destructed.
Also, after that fix get_files_at() will list both "test.txt" and ""test.txt.tmp", althoug that .tmp is cleaned up immediately afterwards. Not sure what to make of that.


Fix up GitHub workflows

@lmaxwell24 Thanks for finishing this.  Looks good to me

closing with 2+ approvals


Add Filter::try_new with validation

Which issue does this PR close?

Closes https://github.com/apache/arrow-datafusion/issues/3795
Rationale for this change

Filters should not use aliased expressions
What changes are included in this PR?

Implement Filter::try_new and make Filter attributes private to force the use of the constructor in other crates
Add accessor methods for Fitler attributes
Add check that filter predicate returns a boolean value
Remove aliases from filter predicate
Update all call sites
Update tests

Are there any user-facing changes?

Yes. Filter attributes are now pub(crate) but accessor methods have been added.

The CI test is unrelated: https://github.com/apache/arrow-datafusion/issues/3798


Repo has no licence file. We would like to use stm32-cc3000 in one of our projects.

Hi,
I was looking to use parts of this project (joeferner/stm32-cc3000) in one of our solutions that pairs a cc3000 with a CortexM3.
If your intention was that the stm32-cc3000 code be usable by the wider community, please consider adding a licence.md.
If none of the standard licences (MIT, Apache, Unlicence, etc.) fit what you want, I'd appreciate it if we could have an email discussion to see if there is a way we could privately licence your code for use in our project.
Kind regards,
Paul Geering
Village Software
paul.geering villagesoftware.co.uk

Done... https://github.com/joeferner/stm32-cc3000/commit/a430bc0968bdb4a9ffa4dfc5a3d079b07b365e87

Much Appreciated.


Default target language

Make it possible to select a default language to translate to. I don't know why, but mine is always set on german. I need to manually select my language every time (dutch).

Once you have changed the translation language and entered it, it will be set to that language from the next time you start the program.
It seems to work fine in my environment.

That feature does not work for me. Always in german.
Android 10
LineageOS (without google play services)

I see...
I'll let you know again when I find a way to reproduce it.

Tl;dr open main app and perform translation to desired default language
Hi, I can add some knowledge on this issue and how I was able to "solve" it:
How to reproduce it:
Reinstall the app and use the app in popup mode (by selecting from context menu), the default language is always German
What does NOT work:
-Changing the language in the popup, it will be still be German the next time
-Going to the main app and selecting a different target language
-Doing the above and restarting the app (by force quitting)
What works:
Going to the main app, selecting desired target language and actually make a translation towards it
In this way, the correcr target language is saved.
Expected behavior:
When you change the target language in the popup, it should store it like it does in the main app.
Hope this helps!:)

This worked! Thank you.

@GeoGlobber Thanks for the info!
The fix for this bug will be incorporated into the next version.


Update translated docs for Jade -> Pug

Need to update all translated docs with same changes as in #616.

Nice 🎱   & Hey if you need me to do for the other languages I'm in. Just not this week though.

Thanks @lordKnighton appreciate your help whenever you're able.  I just didn't have time to do these yet.... If you get to it before I do, that would be welcome! :-)

alright cool, no worries man :)


Automate the chromedriver binary

It would be nice to have at least a chromedriver binary ready to go on Pylenium install...
This looks promising:
https://pypi.org/project/chromedriver-binary/

What about using webdriver-manager?
https://github.com/SergeyPirogov/webdriver_manager

Automating the driver executables is definitely on the roadmap! Pylenium
requires you to have the drivers on your PATH, so this would be a great
step in making it easier. Right now, I mention webdriver-manager in the
Pylenium docs and other options so people can easily install them.
On Fri, Mar 27, 2020 at 6:44 AM Yaroslav Pernerovsky <
<EMAIL_ADDRESS>wrote:

What about using webdriver-manager?
https://github.com/SergeyPirogov/webdriver_manager
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ElSnoMan/pyleniumio/issues/43#issuecomment-604980630,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFQDCPK2EIDTIDTLV5JZQI3RJSNTVANCNFSM4LPZAS6A
.


Exclude macro model from coverage. This code is not used directly.

Macro-model code registers as untested because it is not actually executed code. Rather it is parsed by parser. Therefore it makes sense to exclude.

[ ] Unit test all changes
[ ] Update README.md if applicable
[ ] Add [WIP] to the pull request title if it's work in progress
[ ] Squash commits that aren't meaningful changes
[ ] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

Strange effect is decreased coverage. Closing for now.


fix(playground/cases): replace window.onmessage with self.onmessage in worker test case

Summary
This error was introduced by #7387 , which incorrectly used the global window object in a Web Worker context.

Checklist

[ ] Tests updated (or not required).
[ ] Documentation updated (or not required).

Can you check this lint error?
https://github.com/web-infra-dev/rspack/actions/runs/10231160609/job/28306794667?pr=7431#step:5:11

Can you check this lint error?
https://github.com/web-infra-dev/rspack/actions/runs/10231160609/job/28306794667?pr=7431#step:5:11

My negligence has been resolved. 👀

Thanks!


📙doc: Add prerequisite in the readme file

Add prerequisite after the How to contribute section?

points

Make sure you installed NodeJs in your system.
Also, you have installed pnpm

I want to work on this issue, can you please assign it to me?

I want to work on this issue, can you please assign it to me?

You can work on it 🤝

Completed. Thanks for your contributions 🎉 ❤

Thank you for providing this opportunity and looking forward to contributing more.


 breakpoint object passed as prop not updating on state change

I'm using a ternary with a state variable to change the value of the mb prop on the lg breakpoint.
code: <Box mb={{ xs: 2, lg: expanded ? 2 : 0 }}>
When expanded is true the corresponding div still have an mb of 0. The Box component is not recalculating it's value on the state change.

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
<Box mb={{ xs: 2, lg: expanded ? 2 : 0 }}>
When expanded is true the corresponding div still have an mb of 0. The Box component is not recalculating it's value on the state change.
Expected Behavior 🤔
The Box component should have an mb of 2 when expanded is true.
Steps to Reproduce 🕹
I tried to create a live example but the Box component's props aren't working in codesandbox.
Context 🔦
I'm trying to increase the bottom margin when the component is expanded.
Your Environment 🌎
I tested this on the latest release of MUI (4.11.2)

Tech
Version

Material-UI
v4.11.2

React
v.16.8.6

Browser
Firefox, Brave

TypeScript

etc.

The issue was fixe in v5.


Generator does not respect java_multiple_files option

The java_multiple_files option is described like this in the protobuf documentation:

... For each .proto file input, the compiler creates a wrapper .java file containing a Java class which represents the .proto file itself.
If the .proto file contains a line like the following:
option java_multiple_files = true;

Then the compiler will also create separate .java files for each of the classes/enums which it will generate for each top-level message, enumeration, and service declared in the .proto file.
Otherwise (i.e. when the java_multiple_files option is disabled; which is the default), the aforementioned wrapper class will also be used as an outer class, and the generated classes/enums for each top-level message, enumeration, and service declared in the .proto file will all be nested within the outer wrapper class. Thus the compiler will only generate a single .java file for the entire .proto file.

The grpc-java and grpc-kotlin libraries both honor this option. For the given .proto file, the following outputs are produced by grpc-java:
syntax = "proto3";

package com.example;

option java_package = "com.example";

service EventService {
    rpc Start (StartRequest) returns (StartResponse);
}

message StartRequest { }

message StartResponse { }

With java_multiple_files = false
public suspend fun start(request: com.example.EventsServiceProto.StartRequest, headers: Metadata = Metadata()): com.example.EventsServiceProto.StartResponse = unaryRpc(
  channel,
  EventServiceGrpc.getStartMethod(),
  request,
  callOptions,
  headers
)

With java_multiple_files = true
public suspend fun start(request: com.example.StartRequest, headers: Metadata = Metadata()): com.example.StartResponse = unaryRpc(
  channel,
  EventServiceGrpc.getStartMethod(),
  request,
  callOptions,
  headers
)

However, protoc-gen-connect-kotlin generates identical output irrespective of the value of java_multiple_files:
public override suspend fun start(request: StartRequest, headers: Headers): ResponseMessage<StartResponse> = client.unary(
  request,
  headers,
  MethodSpec(
  "live.v1.EventService/Start",
    com.example.StartRequest::class,
    com.example.StartResponse::class,
  ),
)

This means that the Request and Response classes are not found when trying to compile the application.
The connect-kotlin generator probably should check this option and generate compatible code.

I have not fully tested this, but my quick tests seem to work. I was thinking about opening a Pull Request, but since I copied part of this implementation directly from grpc-kotlin, I'm not sure if you want to reimplement it for licensing reasons.
In fun generate(...):
for (file in request.protoFileList) {
    val packageName = if (file.options.javaPackage.isNullOrBlank()) file.`package` else file.options.javaPackage
    val nestedClassName = file.getOuterClassName()
    for (messageType in file.messageTypeList) {
        compiledTypes.put(messageType.name, packageName+nestedClassName)
    }
    for (enumType in file.enumTypeList) {
        compiledTypes.put(enumType.name, packageName+nestedClassName)
    }
}

// Based on https://github.com/grpc/grpc-kotlin/blob/ae2d5f7b514b45cf944296d91dd14c22a9a17c51/compiler/src/main/java/io/grpc/kotlin/generator/protoc/DescriptorUtil.kt#L119
private fun DescriptorProtos.FileDescriptorProto.getOuterClassName(): String {
    if (options.javaMultipleFiles) {
        return ""
    }

    if (options.hasJavaOuterClassname()) {
        return ".${options.javaOuterClassname}"
    }

    val fileName = name.substringAfterLast('/').removeSuffix(".proto")

    val defaultName = fileName.replace("-", "_").underscoresToCamel()

    val foundDuplicate = messageTypeList.any { it.name == defaultName } ||
            enumTypeList.any { it.name == defaultName } ||
            serviceList.any { it.name == defaultName }

    return if (foundDuplicate) {
        ".${defaultName}OuterClass"
    } else {
        ".$defaultName"
    }
}

// Copied from https://github.com/grpc/grpc-kotlin/blob/ae2d5f7b514b45cf944296d91dd14c22a9a17c51/compiler/src/main/java/io/grpc/kotlin/generator/protoc/DescriptorUtil.kt#L139
private fun String.underscoresToCamel(): String {
    val builder = StringBuilder()
    var capNextLetter = true
    for ((i, ch) in this.withIndex()) {
        if (ch in 'a'..'z') {
            builder.append(
                if (capNextLetter) ch.uppercaseChar() else ch
            )
            capNextLetter = false
        } else if (ch in 'A'..'Z') {
            builder.append(
                if (i == 0 && !capNextLetter) ch.uppercaseChar() else ch
            )
            capNextLetter = false
        } else if (ch in '0'..'9') {
            builder.append(ch)
            capNextLetter = true
        } else {
            capNextLetter = true
        }
    }
    return builder.toString()
}

Hmm, it looks like you might already have fixed this in #5 while I was working through my testing in the comment above.

Hey @kohenkatz our (recent release)[https://github.com/bufbuild/connect-kotlin/releases/tag/v0.1.2] should have a fix for your issue. If you observe any issues, don't be afraid to reach back out :)


[Vue] Issue when building with version 1.0.5

Build errors as below when building with version 1.0.5 of the Vue package.

Hey there! This looks like a duplicate of #516, and from what I understand there this issue has been resolved in the latest version of Volar. See here as well: https://github.com/johnsoncodehk/volar/issues/574
Hope that helps 👍

Thank you!


Missing property "location" in linked template section

I spent 1,5 hours trying to locate strange error saying that "property location is not present  ...". it turned out that it must be specified in section of linked template within master template. It is not so in the text / picture above. Pls correct

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

ID: c2e5cf2a-a12f-8dcc-6ff8-beac622ca483
Version Independent ID: aa0910df-a5cd-25f4-93cb-64ced8c5d3e8
Content: Create linked templates - Azure Resource Manager
Content Source: articles/azure-resource-manager/templates/template-tutorial-create-linked-templates.md
Service: azure-resource-manager
Sub-service: templates
GitHub Login: @mumian
Microsoft Alias: jgao

@maciek-polakowski Apologies that you had to spend that time to isolate the error and we really appreciate your feedback, assigning this to our document author @mumian to further evaluate the feedback and update the document accordingly.

@maciek-polakowski - thank you for your feedback.  I walked through the tutorial and didn't see the error that you got.  Which text/picture you were referring to?  Is the problem in the Microsoft.Resources/deployments resource definition?

Ok maybe i did something wrong. Anyway no problem :)
czw., 12 mar 2020, 03:26 użytkownik Jonathan Gao<EMAIL_ADDRESS>napisał:

@maciek-polakowski https://github.com/maciek-polakowski - thank you for
your feedback. I walked through the tutorial and didn't see the error that
you got. Which text/picture you were referring to? Is the problem in the
Microsoft.Resources/deployments resource definition?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/49963#issuecomment-597974329,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABWDTMOUAQX5UO4UT55L4T3RHBB47ANCNFSM4LF2G4ZA
.

I was trying to do it using az cli, not PowerShell - and then got this
"location missing error". Maybe this is the reason you could not
replicate it
On Thu, 12 Mar 2020 at 09:36, Maciej Polakowski<EMAIL_ADDRESS>wrote:

Ok maybe i did something wrong. Anyway no problem :)
czw., 12 mar 2020, 03:26 użytkownik Jonathan Gao<EMAIL_ADDRESS>napisał:

@maciek-polakowski https://github.com/maciek-polakowski - thank you
for your feedback. I walked through the tutorial and didn't see the error
that you got. Which text/picture you were referring to? Is the problem in
the Microsoft.Resources/deployments resource definition?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/49963#issuecomment-597974329,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABWDTMOUAQX5UO4UT55L4T3RHBB47ANCNFSM4LF2G4ZA
.

@maciek-polakowski - location for the deployment is required when deploying to the subscription, management group, or tenant level. When deploying to the resource group, location is not needed. I wonder if you used the command (az deployment create) for subscription scope. The CLI commands were recently updated to clarify which scope is being used. We are updating the docs for the new command syntax.

Here's the updated explanation of the different CLI commands.

#please-close


feat: Use get-metadata-subscription to get max_api_calls

Thanks for submitting a PR! Please check the boxes below:

[X] I have run pre-commit to check linting
[X] I have filled in the "Changes" section below?
[X] I have filled in the "How did you test this code" section below?

Changes
Get value of max_api_calls from get-metadata-subscription endpoint.
How did you test this code?
In order to test locally

enable max_api_calls_alert for your identity
change FLAGSMITH_API_URL to production
Locally, you can hardcode values of max_api_calls or total_api_calls returned by the cooresponding endpoint. You can also change the hardcoded condition in common/utils/utiils.tx L58, that currently triggers the alert on 70% of usage and above in order to force the display of the alert message.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@a31fe3c). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2279   +/-   ##
=======================================
  Coverage        ?   95.44%
=======================================
  Files           ?      965
  Lines           ?    27172
  Branches        ?        0
=======================================
  Hits            ?    25935
  Misses          ?     1237
  Partials        ?        0

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


Place is missing.

Hello, tnx for this awsome app. I would like to ask if there will be support for place(node) in events. Some events have place node.
"end_time": "2017-01-15T00:00:00+0100",
"name": "ŠVAS",
"place": {
"name": "MKC Kolnkišta",
"location": {
"city": "xxx",
"country": "xxxx",
"latitude": 12.42094,
"longitude": 12.87109,
"street": "Ptujskega 5",
"zip": "2250"
},
"id": "448303125220321"
},
The second question is: Can I use this app on heroku? I uploded it to heroku and it throws error but work fine on my local server.
Best regards

Sorry, but I somehow don't understand your request. You have the location information in the venue object, why would you need anything else?
Regarding your Heroku question, I'm very sure that the problem is how you deploy it, not the application itself. As I don't use Heroku, I can't help you with that unfortunately.

Sometimes the event location is not happening in venue object but in places. Like this example https://www.facebook.com/events/1627227220636712/  if you se the event  is happening in  (Hotel Mitra Ptuj, Prešernova ulica 6, 2250 Ptuj) diffrent than I get from venue object (Zgornji Velovlek 14A) . This location is saved in place object.

That may be possible. The project uses a different approach, as outlined at https://github.com/tobilg/facebook-events-by-location#basics

Search for places in the radius of the passed coordinate and distance (/search?type=place&q={query}&center={coordinate}&distance={distance})
Use the places to query for their events in parallel (/?ids={id1},{id2},{id3},...)
Unify, filter and sort the results from the parallel calls and return them to the client

Tnx for the info.
The  app didnt work on heroku because of the
app.set("port", process.env.PORT0 || 3000); in index.js
When i remove the 0 from the PORT part it started to work. Is this maybe a typo?

Nope, this is intentionally chosen. Why don't you just set PORT0 instead of changing the code?

I'm new to heroku but I think that heroku want process.env.PORT. Heroku dynamically assigns your app a port, so you can't set the port to a fixed number.


User Test: Latex titles had some problems

Originally on 2010-09-15
When we did user testing with Lance Dixon, some of the titles of some of his search results looked pretty bad.
Travis, you wrote:

LaTeX translater seems not to work.   the images show up one line lower than they should   (I.E. running windows)

Can you find an example and then disown or reassign this ticket?

There has been several updates to math rendering since last comment (e.g. c1e6cf4dd0085ded6a555c1907b388a2419e1910 98cb816b34c8f26add51ab7a75400db26eeb131a).


Rework some IMAGE_INSTALL

domu: install kmscube only when 3D GSX is used
domd: domu: move utilities to the tools-related recipes
virtio: wrap some wayland-related packages

RB is added.
Tested on h3ulcb-4x2g for standard and virtio builds.
Ready to be merged.


How to get native connection from PoolingDataSource of Bitronix

How to get the native connection (Native oracle connection in my case) from bitronix poolingdatasource inside spring @Transactional Method

Connection nativeConnection = connectionFromBtmPool.unwrap(java.sql.Connection.class);

See: https://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html

Thanks for the reply @lorban the issue is I was able to get the native connection by unwrap  method, but distributed transaction seems not working fine.  below is the example
class TestTrans{
@Autowired
DataSource btmPoolDatasource;
@Transactional(value = "platformTransactionManager", propagation = Propagation.REQUIRED)
public void methodTrans(){
Connection connection = btmPoolDatasource.getConnection();
Connection nativeConnection = connection.unwrap(java.sql.Connection.class);
//1. write to database using this nativeConnection creating prepared statement
//2. some business logic. (when exception is thrown at this point the record which was saved in              //the DB is not rolled back.
}
}
I am not sure do we need to manually comit or close the connection


openal-soft.org website is down

I noticed it yesterday, https://openal-soft.org doesn't respond (but ping does).
This prevents to fetch the external deps in the docker script to build releases.
Issue is tracked on OpenAL side there:

https://github.com/kcat/openal-soft/issues/956

I don't know if there are mirrors, if there are, it may be useful to update our script to iterate known mirrors in case the primary source is not available.

104.1   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
104.1                                  Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:02:14 --:--:--     0curl: (7) Failed to connect to openal-soft.org port 443: Connection timed out
------
unvanquished-common-source.Dockerfile:11
--------------------
   9 |     RUN /docker/clone-repositories
  10 |
  11 | >>> RUN /docker/build-external-dependencies
  12 |
--------------------
ERROR: failed to solve: process "/bin/sh -c /docker/build-external-dependencies" did not complete successfully: exit code: 7
ERROR: Docker command failed: docker build . --file docker/unvanquished-common-source.Dockerfile --tag unvanquished-common-source --build-arg=targets=linux-amd64 linux-i686 linux-arm64 linux-armhf windows-amd64 windows-i686 --build-arg=reference=42853275786c982c6759e310eb23face4f03e7e3


Server start [WARN]'s

I noticed two WARN level notifications on server start:
2017-06-14 00:24:44 [WARN] [Server thread] INFO com.zaxxer.hikari.HikariDataSource - luckperms - Starting...
2017-06-14 00:24:44 [WARN] [Server thread] INFO com.zaxxer.hikari.HikariDataSource - luckperms - Start completed.
Is it possible to make these [INFO] level?

It seem they are harmless.  It's possible you may have your settings to verbose/debug, and you're getting extra information.

No, it's an incompatibility between Slf4j used in Hikari and Bukkits logging system. I've tried a number of things to fix it and was unable to.
Just ignore the messages.


Implement _check

DRYed up code in calculator.js by Implementing _check(x,y) to make sure x and y are numbers. Replaced repeated code in other functions with calls to _check(x,y).

Thank you, I learned a lot!


merge two onboarding steps in one...

I'm creating a new test user and I realized that these two steps can be merged into one with no loss of functionality:

should be fast to do and probably if you move the title from the first to the second nothing is lost, but rather the user has a better understanding of what's the plan, because of the example:

Isn't this an Web issue?

Isn't this an Web issue?

Yes, it's on the front-end

I'll make an issue on the front-end repo

Closing as per above.

tak @tfnribeiro and @igawaclawsk!
I was tired yesterday :)


Go actions not working using source and image

I can't get go source action to run
Steps to replicate:
Build image
./gradle distDocker

Then use invoke.py from main repo
~/dev/whisk/git/apache/incubator-openwhisk/actionRuntimes/actionProxy (master)
😄  $ ./invoke.py init /Users/csantana23/dev/whisk/git/apache/incubator-openwhisk-runtime-go/test/src/hello_message.go
{"error":"cannot start action: command exited"}

Try to use docker image on already deploy openwhisk and got same problem
~/dev/whisk/git/apache/incubator-openwhisk-runtime-go (pr-8)
👻  $ bx wsk action update goaction test/src/hello_message.go --docker csantanapr/actionloop-golang-v1.9
ok: updated action goaction
~/dev/whisk/git/apache/incubator-openwhisk-runtime-go (pr-8)
👻  $ bx wsk action invoke goaction -b
ok: invoked /_/goaction with id 9277763eb33a4992b7763eb33a5992cf
{
    "activationId": "9277763eb33a4992b7763eb33a5992cf",
    "response": {
        "result": {
            "error": "cannot start action: command exited"
        },
        "status": "action developer error",
        "success": false
    },

}

I got same problem inside vagrant, and using init.sh
vagrant@ubuntu-xenial:~/git/incubator-openwhisk-runtime-go/test/bin$ ./init.sh ../src/hello_message.go
{"error":"cannot start action: command exited"}
400

As we discussed images work but the hello_message.go is using an action in a separate file so you should push a zip with two images. A single file action is in etc/hello.go and it works.

I think you can close this

I was using the wrong file, now using tests/src/hello/hello.go works