GUROBI and CPLEX: LP treated as a QP when sent to the solver

Describe the bug
I am creating a very basic LP and sending it to the Gurobi solver. Upon inspection of the problem with problem.get_problem_data(solver = 'GUROBI', the solver seems to treat the problem as a QP instead of LP. In this particular case, the solution is correct, however, I suspect that in a bigger problem that I am trying to solve, this is causing an issue (I might be wrong though). Nonetheless, I am still addressing this as I have not found a conversation on this topic. Why is this happening? For what reason does the reduction chain treat this problem as a QP?
To Reproduce
import cvxpy as cp
import gurobipy
import numpy as np

n = 2
c = np.array([[8], [2]])
A = np.array([[5, 6],
              [2, 8]])
b = np.array([80, 200])

x = cp.Variable(n)
obj = cp.Maximize(c.T @ x)
constraints = [A @ x <= b, x >= 0]
m = cp.Problem(obj, constraints)
res = m.solve(solver = 'GUROBI')

print(f"The optimal objective value of {round(res, 2)} was achieved \
with x1 = {round(x[0].value, 2)}, x2 = {round(x[1].value, 2)}")

m.get_problem_data(solver = 'GUROBI')

Expected behavior
To feed the problem into Gurobi, CVXPY uses cvxpy.reductions.qp2quad_form.qp_matrix_stuffing.ParamQuadProg, which then yields the output below where the matrix 'A' and vector 'b' are empty, while matrices/vectors 'P', 'q', 'F', and 'G' are used instead. I would expect the matrices/vectors 'A' and 'b' to be utilized and the problem to be recognized as LP instead of a QP.
Output
The optimal objective value of 128.0 was achieved with x1 = 16.0, x2 = 0.0
({'dims': (zero: 0, nonpos: 4, exp: 0, soc: [], psd: []),
  'param_prob': <cvxpy.reductions.qp2quad_form.qp_matrix_stuffing.ParamQuadProg at 0x2b4ff86a490>,
  'P': <2x2 sparse matrix of type '<class 'numpy.float64'>'
  	with 0 stored elements in Compressed Sparse Column format>,
  'q': array([-8., -2.]),
  'A': <0x2 sparse matrix of type '<class 'numpy.float64'>'
  	with 0 stored elements in Compressed Sparse Column format>,
  'b': array([], dtype=float64),
  'F': <4x2 sparse matrix of type '<class 'numpy.float64'>'
  	with 6 stored elements in Compressed Sparse Column format>,
  'G': array([ 80., 200.,  -0.,  -0.]),
  'bool_vars_idx': [],
  'int_vars_idx': [],
  'n_var': 2,
  'n_eq': 0,
  'n_ineq': 4,
  'init_value': array([16.,  0.])},
 Chain(reductions=[<cvxpy.reductions.flip_objective.FlipObjective object at 0x000002B4FF8613D0>, <cvxpy.reductions.cvx_attr2constr.CvxAttr2Constr object at 0x000002B4FF8610A0>, <cvxpy.reductions.qp2quad_form.qp2symbolic_qp.Qp2SymbolicQp object at 0x000002B4FF861550>, <cvxpy.reductions.qp2quad_form.qp_matrix_stuffing.QpMatrixStuffing object at 0x000002B4FF86A370>, <cvxpy.reductions.solvers.qp_solvers.gurobi_qpif.GUROBI object at 0x000002B4C72FC940>]),
 [[],
  (),
  <cvxpy.reductions.inverse_data.InverseData at 0x2b4ff86a430>,
  <cvxpy.reductions.inverse_data.InverseData at 0x2b4ff8611c0>,
  {'var_id': 127,
   'dims': (zero: 0, nonpos: 4, exp: 0, soc: [], psd: []),
   'IS_MIP': [],
   'offset': array(0.)}])

Version

OS: Windows 11
CVXPY Version: 1.3.1
Python: 3.9.0

A and b are used to express equality constraints. You don't have any equality constraints in your problem, so they are empty.

For Gurobi the QP interface is more efficient than the conic interface and so is preferred for LPs.
Here are our notes on this:
GUROBI and CPLEX QP/LP interfaces are more efficient
-> Use them instead of conic if applicable.

Closing since the data produced is mathematically correct and comes with some practical justification.


[test] Migrate from assert to expect

Follow-up on #20792. I have focused on the migrating most of the API. There are still a couple of assert in the code base, related to usage of non frequent API:

assert.isNotNull
assert.lengthOf
assert.approximately
assert.isDefined
assert.isUndefined

IMHO, the simplest would be to update the assertion to expect().to.equal(), we want to have high confidence in the assertion, I still think that higher confidence outweighs the advantage of better error messages, but no strong preference.
There are also a couple of files that jscodeshift failed to handle, some unsupported syntax error. I haven't looked at it.

I still think that higher confidence outweighs the advantage of better error messages, but no strong preference.

How does this PR reduce confidence and why does this not apply to actual production code e.g. stringOrNumberOrUndefinedOrNull ? 'true-ish' : 'false-ish'?

@eps1lon This part was a digression, you know, it's my routinely grudge against API like expect(actual).to.have.the.right.hand.raised.but.the.left.hand.still(expected), you can ignore it 😅.

expect(actual).to.have.the.right.hand.raised.but.the.left.hand.still(expected)

I don't like chaining either. Since we all agree on that we could just mimic how jest-expect works by applying the same approach as toHaveFocus.

maybe I wanted to complicate my life trying to do everything with multiple transformations

assert
render
import
styles and component props that we trait in a different way with testing library

@marcosvega91 I think that it depends. In the case of this pull request, we a fast path for 1. and 3. , hence we should take care. However, as I mention in the description, the codemod really optimize for the efficiency, for effectiveness, we have to revisit it. In any case, I think that we have to be humble enough to internalize that there are an infinite levels of complexity, no matter how far we push a solution to a problem, somebody else will always be able to improve it.
If you could take care of the few last imports of assert once this pull request is merged, it would be 🔥.

@oliviertassinari Yes I know but my mind goes directly to the most complex.
Usually I try to find a perfect solution instead of try to solve little problems


Private registry: Garbage collection

Hi,
I would like to know whether is possible to clean-up layers that are not in use anymore and have been pushed. I know that this feature is already available on trusted-registry but there is something on public version (v2)?
We are keeping only 2 versions + latest of each image and we need to clean the ones that get orphan.

Garbage collection is available on both versions (DTR and open-source v2).
Btw, you are in the legacy repo.

Ops! Thanks for saying that. Can you tell me how is it enabled or how can I see if that is happening? My registry is only growing whilst the number of images or layers in the images have not changed at all.


Data Sharing Support for Besu

Determine data and policy formats
Implement Besu-specific components: driver, interoperation module, SDK
Create sample application contracts
Run end-to-end tests
Create RFCs for specifications
Add instructions for usage in the official Weaver docs

Configuration:
Source Driver:

Source Driver can maintain a map of contract name to the contract address

End to End steps:
At the requesting network:

Application at the requesting network provides:

View address which looks like:
<source-relay-address>/<driver-address>/<ledger-id?>:<contract-name/address>:<fun-name-with-signature>:<colon-separated-args>
E.g.: localhost:9084/besu-network1/_:SimpleState:get(string):a
Verification policy [set of nodes]: The initial implementation will provide the signatures of the nodes which endorsed the block of interest (according to the source network's consensus policy). If the input set of nodes is a subset of the endorsers, then only that subset is provided.

Requesting relay forwards the request to the source relay, according to <source-relay-address> in view address.

At the source network:

Source Relay: Forwards the request to the source besu driver, based on the <driver-address> in the view address.
Source Besu Driver:

Parses the view address to obtain contract segment, function name and the arguments.
If contract segment is address, use it as it is, else get the address from the map using value in contract segment as the key, and use it as app contract address.
Driver then calls besu interop contract with the query, app contract address, and encoded function name with signature and args.

Besu Interop Contract:

Checks the validity of query signature.
Checks that the certificate of the requester is valid according to the network's Membership.
Checks the access control policy for the requester and view address is met.
Calls application chaincode according to the view address (either verify the encoded value passed from driver, or generate the encoded value from the view address here).
Packages the response in InteropPayload and emit it as event Weaver_Data_Sharing. Make sure there is only one event defined with the name Weaver_Data_Sharing in Besu interop contract.

Source Besu Driver:

Get transaction Hash (txHash) from response of interop contract call.
Get transactionReceipt object from txHash (web3.eth.getTransactionReceipt) -> txRcpt.
Get logs of txRcpt, and get the index of log whose address is interop contract. We obtain index by the event name Weaver_Data_Sharing from the response, and filter txRcpt using this id.
From the logs[index], get the data by logs[index].args.data.

(To be continued...)

Things to followup:

Membership structure
Who are the CAs whom we can trust to attest that the validators are valid?


legacy-plugin-chart-country-map on the map of Russia Karelia is located on the territory of the Murmansk region

Bug description
Karelia is not displayed correctly on the map of Russia. It should be located separately, and not as part of Murmansk
How to reproduce the bug
Open legacy-plugin-chart-country-map map of Russia
Screenshots/recordings
To
after

Superset version
4.0.2
Python version
3.9
Node version
16
Browser
Chrome
Additional context
No response
Checklist

[X] I have searched Superset docs and Slack and didn't find a solution to my problem.
[X] I have searched the GitHub issue tracker and didn't find a similar bug report.
[X] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

If you're able/willing to open a PR to correct this, the right way to do so would be to make a correction in the Jypyter Notebook (the repo's one .ipynb file) and have THAT render out the geoJSON. Otherwise, any GeoJSON overrides will eventually be overwritten in the future. Also, the files we get are generated from NaturalEarth data... you may want to ping them on their repo about correcting it at the root. We're downstream, and just patch things with overrides as much as we're able to.


Possible to get current public IP?

Dear Mr. Hoang,
I am trying your very good DDNS_Generic library using no-ip provider having a classic ESP8266 board (WeMos D1 mini).
What I want and I haven't find the way to do, is to get somehow my current public IP. Do you support this through your library?
I have seen that in your DDNS_Generic.h at DDNSGenericClass you have as private the publicIPRequest but it is uncertain to me if and how can call it.
Please instruct me how can achieve that.
Thanks and Best Regards,
Mike Kranidis

Dear Mike,
You can currently use the onUpdateCallback() function and get the current Public IP from newIP. The Public IP got by this way will reflect in real-time (whenever a public IP change is detected). Just copy to your local/global var and use.
This code snippet is in every example:
void onUpdateCallback(const char* oldIP, const char* newIP)
{
  Serial.print("DDNSGeneric - IP Change Detected: ");
  Serial.println(newIP);
}

Best Regards,

Dear Mr. Hoang,
thanks for your fast reply.
I am not sure how to get the result that I want. Let me explain better:
I need, inside my sketch, to print the current public IP in a particular momment, not when the IP is changed.
So, how can get my current public IP? I am not sure how can use onUpdateCallback on demand and having my requested result.
Sorry for the newbie question but something I missed probably from your reply.
Thanks and Best Regards,
Mike Kranidis

Dear Mike,
When you run an example, for example SAMD_WiFiNINA_DuckDNS_Client on Nano-33-IoT, you'll see in the terminal
Start SAMD_WiFiNINA_DuckDNS_Client on SAMD_NANO_33_IOT with WiFiNINA using WiFiNINA_Generic Library
Connecting to WiFi SSID: HueNet1
HTTP WebServer is @ IP : <IP_ADDRESS>
[DDNS] Access whatismyipaddress
Connected
[DDNS] httpCode = 200
HttpClient::responseBody => bodyLength =15
[DDNS] Current Public IP = 206.248.aaa.bbb
[DDNS] response = 206.248.aaa.bbb
Connected
[DDNS] Sending HTTP_GET to duckdns
[DDNS] HTTP_GET = http://www.duckdns.org/update?domains=account.duckdns.org&token=12345678-1234-1234-1234-123456789012&ip=206.248.aaa.bbb
DDNSGeneric - IP Change Detected: 206.248.aaa.bbb    <=======  This is auto-generated from onUpdateCallback()
[DDNS] Updated IP = 206.248.aaa.bbb

The following line is the print-out from onUpdateCallback()
DDNSGeneric - IP Change Detected: 206.248.aaa.bbb    <=======  This is auto-generated from onUpdateCallback()

void onUpdateCallback(const char* oldIP, const char* newIP)
{
  Serial.print("DDNSGeneric - IP Change Detected: ");
  Serial.println(newIP);
}

You just copy the  newIP to your global/local and use it

For example, your global var is now myPublicIP, and will be printed out every 20s
#include "defines.h"

int status = WL_IDLE_STATUS;     // the Wifi radio's status

String myPublicIP = "";

void printPublicIP()
{
  static unsigned long printPublicIP_timeout = 0;

  //KH
#define PRINT_INTERVAL    20000L
  // Print hearbeat every PRINT_INTERVAL (20) seconds.
  if ((millis() > printPublicIP_timeout))
  {
    if (myPublicIP != "")
    {
      Serial.println("==========================================");
      Serial.print("DDNSGeneric - Public IP : ");
      Serial.println(myPublicIP);
      Serial.println("==========================================");
    }

    printPublicIP_timeout = millis() + PRINT_INTERVAL;
  }
}

void onUpdateCallback(const char* oldIP, const char* newIP)
{
  myPublicIP = String(newIP);
  Serial.print("DDNSGeneric - IP Change Detected: ");
  Serial.println(newIP);
}

void setup()
{
  Serial.begin(115200);
  while (!Serial);

  Serial.print("\nStart SAMD_WiFiNINA_DuckDNS_Client on " + String(BOARD_NAME));
  Serial.println(" with " + String(SHIELD_TYPE));

#if USE_WIFI_NINA
  if (WiFi.status() == WL_NO_MODULE)
#else
  if (WiFi.status() == WL_NO_SHIELD)
#endif
  {
    Serial.println(F("WiFi shield not present"));
    // don't continue
    while (true);
  }

#if USE_WIFI_NINA
  String fv = WiFi.firmwareVersion();

  if (fv < WIFI_FIRMWARE_LATEST_VERSION)
  {
    Serial.println("Please upgrade the firmware");
  }
#endif

  WiFi.begin(ssid, password);

  Serial.println("Connecting to WiFi SSID: " + String(ssid));

  while (WiFi.status() != WL_CONNECTED)
  {
    delay(500);
    Serial.print(".");
  }

  Serial.print(F("\nHTTP WebServer is @ IP : "));
  Serial.println(WiFi.localIP());

  server.begin();

  DDNSGeneric.service("duckdns");    // Enter your DDNS Service Name - "duckdns" / "noip"

  /*
    For DDNS Providers where you get a token:
    DDNSGeneric.client("domain", "token");

    For DDNS Providers where you get username and password: ( Leave the password field empty "" if not required )
    DDNSGeneric.client("domain", "username", "password");
  */
  DDNSGeneric.client("account.duckdns.org", "12345678-1234-1234-1234-123456789012");

  DDNSGeneric.onUpdate(onUpdateCallback);
}

void loop()
{
  // Check for New Ip Every 10 mins.
  DDNSGeneric.update(600000);
  printPublicIP();
}

and terminal output

Start SAMD_WiFiNINA_DuckDNS_Client on SAMD_NANO_33_IOT with WiFiNINA using WiFiNINA_Generic Library
Connecting to WiFi SSID: HueNet1

HTTP WebServer is @ IP : <IP_ADDRESS>
[DDNS] Access whatismyipaddress
Connected
[DDNS] httpCode = 200
HttpClient::responseBody => bodyLength =15
[DDNS] Current Public IP = 206.248.aaa.bbb
[DDNS] response = 206.248.aaa.bbb
Connected
[DDNS] Sending HTTP_GET to duckdns
[DDNS] HTTP_GET = http://www.duckdns.org/update?domains=account.duckdns.org&token=12345678-1234-1234-1234-123456789012&ip=<IP_ADDRESS>
DDNSGeneric - IP Change Detected: 206.248.aaa.bbb
[DDNS] Updated IP = 206.248.aaa.bbb
==========================================
DDNSGeneric - Public IP : 206.248.aaa.bbb                                  <== printed from new global variable you can use
==========================================

Dear Mr. Hoang,
many thanks for your kindness to write the sketch for me, I always appreciate what you give us so generously.
I will study your sketch and I will try to implement to mine. By the way, as I wrote I am using ESP8266 Wemos d1 mini board.
Again many thanks and Best Regards,
Mike Kranidis


Missing player icons.

I don't understand why this is happening. I've linked both plyr.css and plyr.js in my head.

I was missing the AJAX call to load the icons. :)
(function(d,p){
    var a=new XMLHttpRequest(),
        b=d.body;
      a.open("GET",p,!0);
      a.send();
      a.onload=function(){
      var c=d.createElement("div");
      c.style.display="none";
      c.innerHTML=a.responseText;
      b.insertBefore(c,b.childNodes[0])
  }
})(document,"/19.-WIA/The-Presentation/Assets/Plyr/dist/sprite.svg");

:+1:

I'm having the same problem (using only audio), but I do fetch them over AJAX. I can even see the SVG in the document:

and I see the xlink:href is set up correctly:

But the icons are simply not shown:

I must be doing something wrong, but I have no idea what :disappointed:

It could well be a CSS issue, do you have a public page I could take a look at by any chance?

While trying to create a reduced test-case for you, I found the problem.
My HTML document had a base tag, which somehow messed up the SVG link. I'm not sure why exactly, but that's what caused it.
For now I removed the base tag and it works. Do you know if there's any proper way around it?

Someone else has mentioned this recently so I'll look into a solution for users using the base tag.

This can be fixed by prefixing the referenced id by the current location like so:
'<svg><use xlink:href="' + window.location + iconPath + '-play" /></svg>'

I currently can't think of a reason why this change could break existing implementations.
P.S. Currently the basetag issue only seems to apply to Firefox. Chrome and IE seem to currently display the icons when I used the basetag "/". I didn't test other browser or how the mentioned browsers behave with a different basetag.

I'm not going to make that change globally though as it wouldn't work if the sprite is ajax'ed into the page elsewhere. In that case you just need <use xlink:href="#icon-id"> - using external resources in tha attribute only works currently for same domain and not in all browsers.

Once it is ajaxed in there, doesn't it always get appended to the current document for it to work with plyr? If so, it would still work. Maybe I'm missing/misunderstanding something here?

Not quite. The current recommended method of loading a sprite if you're using cross domain is to load in the sprite using the AJAX method into a hidden div on the page and then reference the elements in the sprite by id. For example:
<svg><use xlink:href="#icon-example"></svg>

In an ideal world to save the hassle with loading via AJAX you would reference the path to the icons in the <use> element as you describe, either:
<svg><use xlink:href="/path/to/sprite.svg#icon-example"></svg>

Or externally referenced:
<svg><use xlink:href="https://cdn.com/path/to/sprite.svg#icon-example"></svg>

Unfortunately the second option isn't allowed due to cross domain issues (even adding crossorigin does nothing). I've catered for these options however by offering an iconUrl option in the config which will either load via AJAX if external or using the first method if relative:
https://github.com/Selz/plyr#svg
So you could achieve what you're asking by specifying the URL to the sprite as the iconUrl option.
You can see the iconUrl in action if you clone and run the repo locally and head to /demo - you'll notice the xlink:href attribute value has the path prefixed:


About the test set samples

I notice that in the test-banking/dialogues.jsonl or test-finance/dialogues.jsonl, there are cases where "dialogue_acts" is "[InformIntent]", but the intents are []. And there are also cases where "dialogue_acts" is "[InformIntent]", but the intents are ["DummyLabel"]. Does this mean we only need to cluster the sentence with the "["DummyLabel"]" intents?

and there are also intents are ['DummyLabel'] and dialogue_acts are [].

Hi @michael-wzhu, thanks for your question!
I will copy my response from a previous thread (please let me know if this doesn't answer your question): https://github.com/amazon-research/dstc11-track2-intent-induction/issues/13#issuecomment-1259722704

For Task 1 any turn that is labeled with "intents": ["DummyLabel"] should be assigned a cluster label (no matter what the dialogue acts are for that turn).
For Task 2, the dialogue act predictions "InformIntent" are used. Task 2 does not use these "DummyLabel" turns, but instead must rely on the noisier dialogue act predictions (or other techniques).

If you have doubts, you can run the validation script to check if your submission has predictions for the correct turns:
python3 dstc11/validate_task_inputs.py path_to_your_banking_predictions_file/predictions.json \
--task 1 \
--dialogues dstc11/test-banking/dialogues.jsonl

Closing for now. Please let me know if you have further questions!


Callout displayed under clusters and markers

Sometimes when tapping on a marker it display the callout under surrounding clusters and markers.

I tried the same code with react-native-maps only and the callout is displayed as expected.

zIndex does the trick. Thanks a lot.

Reopening this issue. Problem is still there on ios despite zIndex fix (cf. screenshot)

A sample app can be found there : https://github.com/vhoen/mapcluster, once the map is displayed, you need to zoom a bit and tap on a marker close to a cluster.
Thanks in advance for looking at this issue.

I released new version of this library. This issue should be solved there 🎉

How to solve this, zIndex and absolute position not working for ios. I haven't tested on android.

How to solve this, zIndex and absolute position not working for ios. I haven't tested on android.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Video Tutorial for SmartShape

Even with the documentation, some folks really prefer to watch a demo.
It would be great if we could put together a video demo of some of the basic features / use-cases.
Even just a video of the Quickstart Guide would be very helpful, I think.

Hey, I would offer to take that task. I'm just having a really bad sore throat. So it will need a couple more days until I can make something :)

Sounds great! I went ahead and assigned you to this one. No rush, have a hot cup of tea and rest your voice for a bit.
Looking forward to the video!

Picster uploaded a very helpful video here:
https://www.youtube.com/watch?v=r-pd2yuNPvA&list=FLT2Uq2nORS5b3XQNhRz


Mobile shortlink generation not working anymore

Creation of QR code / shortlink not working anymore since this morning.
Togling mobile on, remains off and toggle button greyed out.
0.07

works for me, try "reinstal" it.

Yep solved it,


ui: draw model on matching frame

resolve https://github.com/commaai/openpilot/issues/27353

Before
After

video:

before:

Kazam_screencast_00086.webm

after:

Kazam_screencast_00087.webm
@adeebshihadeh feel free to close it if you are already working on this.

@deanlee you didn't notice that the UI's loop can get out of sync with the model causing many frame skips in a row for a period of time?

I believe the exact problem was we'd sometimes get a new camera frame before the model published the corresponding frame id, so it would skip to the default (end or start of the frame buffer), then skip back once we were getting model frame ids for the current camera frame.

no, it will not skip to the end or start of the frame buffer by default, it will draw the frame get from last sm["uiPlan"].getUiPlan().getFrameId().
paintGL will find sm["uiPlan"].getUiPlan().getFrameId()  in cache and paint it. it only skip to the last frame read from camera(end of the frame buffer) when the sm["uiPlan"].getUiPlan().getFrameId() is not already present in the cache.  and this may only occur when the camera is initially started.

auto frame_it = frames.rbegin();
  if (draw_frame_id > 0) {
    auto it = std::find_if(frames.rbegin(), frames.rend(), [=](auto &f) { return f.first == draw_frame_id; });
    if (it != frames.rend()) frame_it = it;
  }
  auto [frame_id, frame] = *frame_it;

Run replay with qlogs and you can see it skip and hang every time it updates the path, though I'm not sure if that translates to on-device issues.

Run replay with qlogs and you can see it skip and hang every time it updates the path, though I'm not sure if that translates to on-device issues.

Is it possible that this is caused by the low frequency of the video frames pushed from qlogs:
service.h:
{ "roadEncodeIdx", 8015, false, 20, 1 }

Run replay with qlogs and you can see it skip and hang every time it updates the path, though I'm not sure if that translates to on-device issues.

Is it possible that this issue is caused by the frequency settings in the qlogs?
service.h:
{ "roadEncodeIdx", 8015, false, 20, 1 },
{ "uiPlan", 8057, true, 20, 40 },

All of the roadEncodeIdx should be there to accompany the frames, but the problem is that uiPlan times out from ui's perspective. It gets an updated uiPlan and draws the camera frame for it, but then it doesn't get any more updates so it keeps drawing that frame until we don't have any more frames for that frame id, then it skips to the front (or back) of the buffer.

I'm concerned that this could be a case of back-frame playback. it could be more bad than duplicate frames.
ui_plan: 1      4       6
ui     : 1 2 3 4 5 4 5 6 7 6 7

yeah exactly, except it would be more like this, right?
# 4 frame buffer
ui_plan: 1...      4         6
ui     : 1 1 1 1 5 4 4 4 4 7 6 6...

Currently, my understanding is (which may be wrong), that this issue may only occur when replaying qlogs.It should not happen when playing normal logs or on a c3 device, unless controlsd crashes.If that's the case,  then skipping synchronization during Qlog replay may be a simpler solution.(looks like we would need to use more complex code and cache at least 40 frames of VIPC buffer in both the replay and CameraView, in order to sync with uiPlan and prevent duplicate frame warning when playing qlogs.)

I think this is what can happen on device, leading to duplicate and skipped frames being drawn fairly often, though it's been a while since I've looked at it.
# 4 frame buffer
ui_plan: 1   2 4 5
ui     : 1 1 2 4 5

@deanlee along the lines of this, want to try to make the UI poll and update on recv of modelV2 instead of a new frame over vipc? we want to do this to improve the GPU scheduling (camera debayer -> modeld -> ui); POC in #28363

We might want to poll on uiPlan now that we draw the path using it

@deanlee along the lines of this, want to try to make the UI poll and update on recv of modelV2 instead of a new frame over vipc? we want to do this to improve the GPU scheduling (camera debayer -> modeld -> ui); POC in #28363

The current implementation of msgq_poll cannot be truly used for synchronously messages in this case. It simply sleeps for a fixed time (timeout) and then checks if there are new messages.
submitted a pr https://github.com/commaai/cereal/pull/458 to make msgq_poll work properly like zqm_poll.

@adeebshihadeh : poll on the uiPlan could potentially block the main thread. so I have used a signal uiPlanUpdated to synchronize the uiplan events with the drawing of AnnotatedCameraWidget

@deanlee along the lines of this, want to try to make the UI poll and update on recv of modelV2 instead of a new frame over vipc? we want to do this to improve the GPU scheduling (camera debayer -> modeld -> ui); POC in #28363

submitted a new pr https://github.com/commaai/openpilot/pull/28370 for it.

@deanlee are there any plans to merge this soon? If not we can close until you're ready.

closed, need more time to come up with a better solution.


Accept tokens from Dan's Auth0 endpoint

Merging right away to push to integration... this will allow greenbox to adjust their config and do testing before Dan's auth0 endpoint expiration (Jan2)


Issue with looping workflow and undefined execution order

Most likely not an issue with the integrated nodes, but connecting integrated nodes like this will give ComfyUI some (understandable) issues when determining what order to execute the nodes. Not sure if this could be addressed inside the integrated-nodes custom node.

This is based on the default workflow where everything but the text prompt is included in the main integrated node.
Not sure if this is would be included in what you address the section "Using custom nodes in integrated nodes" in the readme.

Yes, I’ve had this issue as well. There isn’t anything I can do about that. As far as ComfyUI is concerned, an integrated node is just a single node. So it cannot get data from a node that it feeds data into.
In this particular case you probably need to put the checkpoint loader outside the integrated node, that’s what I do. Means quite a few additional connections of course, but that’s what I have AutoConnect for. An alternative would be loading CLIP separately, maybe integrated into the double prompt.
I do not really see how this issue can be described in the README in a meaningful way.


Update Dump Json and jq Implementation

New commits address missing data within Event XML so that all necessary information is pulled from log data. Prior commits only pulled EventRecordID from within System section. New upgrades pull things like EventID, TimeCreated, Channel, etc. Also, proper usage with jq added so that output can be piped to jq for ease of analysis. New dataset added to tests folder as well!

looks like all checks passed too!

Checking to see if you can merge! Let me know if there are any other issues

program logic looks reasonable. see inline comment about formatting.
would you be up for adding a test case? if not, i can add it after the merge.
thanks!

I can definitely try to add a test case, I will admit it is my first time adding one

Oh, cool! I'm happy to help out, either explaining ideas or answering questions. Thanks for everything you've done so far!

Oh, cool! I'm happy to help out, either explaining ideas or answering questions. Thanks for everything you've done so far!

I want to create a test that runs the evtx_dump_json with the evtx data located within the data folder. However, I am having trouble calling the main function. I tried to import scripts but it was never able to import the module even after I added a init.py to the scripts directory. Any thoughts?

This is how I am trying to set it up. But, I keep getting errors of the below.

I wasn't able to figure it out, apologies!

fixed issues with EventData missing key and added a UserData loop to cover newly discovered evtx data fields

(sorry I wasn't able to get this merged before I left for a little PTO. i have an explicit TODO item to merge this when i return. i hope that's ok. )

No worries! Was just working on some other tasks and found something I needed to address here.
Didn't mean to come across as pressuring!


how do we want to represent lightning talks on the website?

lightning talks are short, live presentations, not pre-recorded
may be recorded for later inclusion, maybe not?
there will be two sessions of LTs with 5 presenters each
maybe they're listed in the session grid as two sessions, but their descriptions include more granularity?

Lightning data have been added to the session search, but there's still the possibility of revising the session-modal to accommodate multiple abstracts, so I'm going to leave this open for now.


Invalid date when startDate is outside of endDate month

Hi,
When setting startDate outside of the endDate month, the datepicker is showing Invalid Date. This issue can be seen on your home page also.

When opening the date picker and selecting a custom filter, it fixes the issue. When manually selecting a new range, the issue still occurs.

I seen this problem if use multiple props i18n,
<litepie-datepicker i18n="en" />

<litepie-datepicker i18n="id" />


Non-Skill Player Activity in Plays/Games

Hi Andrew,
Big fan of the nfl data ecosystem you built, thanks for all the work put into this.
In an effort to quantify non-skill player performance, I was searching for a way to determine the active players at the play level. I.E. running back A has a 5 yard gain on the play, the active offensive line players are [X,Y,Z,...].
I assume that play level data isn't available for this sort of scenario or else it would be found in the json somewhere, but games played could be?
In theory, one would be able to access data from a player's game log site like -
http://www.nfl.com/player/jamescarpenter/2495134/gamelogs?season=2011 - to pull data related to Games Played (G column). This approach would at least allow for player composition detail around an offensive line's game level performance. I.E. Team 1's offensive line performance = X, Team 1's offensive line had participation from o-line players [Q,W,E,...], thus [Q,W,E,...]'s performance = X.
I was hoping that NFLGame might have a precedent for this - any thoughts on a solution/alternatives for this task?
Thanks
-Mike

As a general rule, nflgame (and nfldb) don't scrape for data outside of the JSON feed. There are a few exceptions to this (such as current player meta data), but I generally don't want to head down that path. I'd rather see it built on top of nflgame or nfldb.
You are right of course that stats for "non skill" players are essentially non-existent.

Thanks for the quick reply- completely agree with the avoidance of scraping and was hoping that I missed something in the JSON that could derive the value.
If you don't mind me asking, how did you stumble upon the Game Center json data? I am searching for more pro sports data sources and having a difficult time finding something similar for the NBA.

I observed that the NFL GameCenter pages were updating asynchronously (i.e., without a full page refresh). This meant that updated stats were being pulled in periodically and sliced into the current page. It is much easier to do that when you receive structured data, so I just looked for XHR requests in the page using Chrome's developer tools (Firefox has something similar). I saw a JSON file, looked at the payload and started reverse engineering it.
nflgame and nfldb exist purely because of a quirk in the NFL GameCenter implementation. You'll need to look for similar quirks in other sports, but there's really no uniformity since they are entirely separate organizations. :-)

I am searching for more pro sports data sources and having a difficult time finding something similar for the NBA.

Have you had a look at nba_py?  The endpoints don't appear to be a concise single json file like NFL GameCenter uses, but it looks like they've cracked the code  a bit over there.


Using app without default django User model

I am not using Django admin or standard User subsystem of Django.
Apparently Device model has FK field to auth.User, which I dont have.
I get this error:
django.core.management.base.SystemCheckError: SystemCheckError: System check identified some issues:
ERRORS:
push_notifications.APNSDevice.user: (fields.E300) Field defines a relation with model 'auth.User', which is either not installed, or is abstract.
push_notifications.APNSDevice.user: (fields.E307) The field push_notifications.APNSDevice.user was declared with a lazy reference to 'auth.user', but app 'auth' isn't installed.
push_notifications.GCMDevice.user: (fields.E300) Field defines a relation with model 'auth.User', which is either not installed, or is abstract.

If it is possible, I would like to turn of all models of this app and store Notification Keys of devices myself and use this app just for sending.
What can I do?

@skkap You can customize the model used for the user model and set it to some other model in your django app.
PUSH_NOTIFICATIONS_SETTINGS = {
        "USER_MODEL": "your_app.another_model",
        ...
}

This project is designed to be used with Django's ORM. We plan, though not in the near term, to allow all of the device models (APNSDevice, GCMDevice, WNSDevice) to be extended or replaced though that is not possible right now. Since you are handling the storage of device information already, I suggest selecting libraries that that focus on sending push notifications. Like https://github.com/Pr0Ger/PyAPNs2.

Thanks for reply! Helped a lot!

@skkap Good luck with your project.


Support running setup.py from other directories

This incorporates changes from #753 by @jsiverskog.

/morph test

/morph test


[html] auto rename doesn't exit when move cursor the end of line

Testing #85973
<html>
    <foo>

    </foo>
</html>

put cursor at the beginning of foo of line 2
press cmd+right
auto rename mode doesn't exit, there is still a secondary cursor on line 4

Another case

<html>
    <foo>
    </foo>
</html>

Move cursor into foo of line 2
Move cursor to the end, there are two cursors
Move down, the cursors go into the tag

Initially I thought this would be nice for line-wise selection, especially if you do cmd+left/right, so I intentionally allowed this case.
Should we remove it?
For your second one:

When you move, two cursor became one
The first cursor went to </foo>, producing another cursor

So I'd say its behavior is fine

Initially I thought this would be nice for line-wise selection, especially if you do cmd+left/right, so I intentionally allowed this case.

For line wise selection, I would expect it to work when I create multiple cursor myself.

Verifier:
Have below HTML code (you can surround them with other HTML elements):
  <div>
  </div>

Put cursor inside div so mirror cursor occurs, and then move your cursor before < or after >. Make sure the 2 cursor become 1 when cursor is not on div anymore. Free free to jump around using Option/Cmd + arrow keys.


Support cpu_time

Corresponding PR at lfortran https://github.com/lfortran/lfortran/pull/641

This is ready. Please possibly review and please share feedback.

I added tests for it at https://github.com/lfortran/lfortran/pull/641.
Also, to test it at live site, I tried the following code at https://www.ubaidshaikh.me/lcompilers_frontend/commits/8f768cc70/
program cpu_time_02_wasm
implicit none
integer :: i, j, k
real(8) :: t1, t2
interface
    subroutine cpu_time(t) bind(c)
        real(8), intent(out) :: t
    end subroutine
end interface
call cpu_time(t1)

do i = 1, 10000
    do j = 1, 10000
       k = i + j
        if (k == 10000) then
            print *, "i =", i, ", j =", j
        end if
    end do
end do

call cpu_time(t2)
print *, "Total time: ", t2-t1
end program

The time output is Total time:  0.3039999008178711. It seems to work.

We can also test the same above code at https://dev.lfortran.org/
(I realised this just now that to test cpu_time we might not need the latest lfortran build, since the changes made to support cpu_time were not in lfortran but on the JavaScript side. These JavaScript changes were submitted/updated to both the repositories, and I guess, therefore the cpu_time works at https://dev.lfortran.org/).

Right. Yes, everything looks good.
I think we can use this bind(c) approach to implement the parts of the runtime library that cannot be done in pure Fortran.


Relative binding for ListBox.Items can clear the SelectedItem when parent viewmodel is removed from view

Describe the bug
Using a relative binding for a ListBox.Items collection can reset the ListBox.SelectedItem value when the viewmodel hosting the Listbox is cleared away. It might require that the ListBox be specifically inside of an ItemsControl.
To Reproduce
Small repro here: https://github.com/ben-reilly/BindingReset
(See HostView.axaml for some commented-out lines to try out. Only one of them does what I expect.)
In brief...
I have a collection of RowViewModels and inside of each I can select from 2 options (A and B); the option for each row defaults to an initial NONE value. Those rows are displayed using an ItemsControl inside of a HostViewModel.
I can switch between options A/B for each row. I can also add/remove the HostViewModel using a button.
When I remove the HostViewModel, my selection in each RowViewModel is reset. It appears that this happens because of how I bind the ListBox.Items collection representing the options I can choose from.

If I bind to a common set of options defined in the MainWindowViewModel by making use of a relative binding, my selected options get reset to NONE every time I remove the HostViewModel from the view.
If I bind to a local set of options within the RowViewModel, removing the HostViewModel does not clear the selections. This is what I want, and I expected the relative binding to do the same thing.

Desktop (please complete the following information):

OS: Windows 10, 22H2
Version 0.10.18

Related https://github.com/AvaloniaUI/Avalonia/issues/9438 https://github.com/AvaloniaUI/Avalonia/issues/3586


datafs: allow caching remote streams to odb

Related to https://github.com/iterative/dvc/issues/9030.
Used in https://github.com/iterative/dvc/pull/9183.

Codecov Report
Patch coverage: 37.50% and project coverage change: -0.06 :warning:

Comparison is base (6757ef9) 57.32% compared to head (11eb97f) 57.27%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #333      +/-   ##
==========================================
- Coverage   57.32%   57.27%   -0.06%
==========================================
  Files          51       51
  Lines        3365     3370       +5
  Branches      589      498      -91
==========================================
+ Hits         1929     1930       +1
- Misses       1350     1353       +3
- Partials       86       87       +1

Impacted Files
Coverage Δ

src/dvc_data/fs.py
59.37% <37.50%> (-2.17%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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

Was about to ask if this needed to go behind an explicit flag (other than setting cache_odb) for cases where users don't actually want caching

yeah, this is a bit weird to me as well. But the intention behind cache_odb is usually to cache from remotes, I could not think of a usecase where you want to use a different odb other than when streaming from remote. Maybe if there's a remote cache?
I am okay with introducing a separate kwarg as well, we just need to figure out what should we do if there's only cache_odb.

If the intention is to cache to odb from remote only when both are specified, it's better to just use one kwarg.

This PR does cache streams, but .dir files are still not cached, so we still end up hitting remotes.

@skshetry It seems the whole approach here is wrong. plots should fetch stuff and then read it. This was one of the reasons for https://github.com/iterative/dvc/pull/9140
Feels like we should revert this change.

Could you please elaborate why you think this approach is wrong?

I think support for caching is a good feature on its own and fits within datafs/dvcfs.
fsspec has similar caching mechanisms on open().


Ensure indexing functions never return error

Informers panic on errors so we need to ensure that our indexing functions do not return error on invalid Bundles/etc. I.e. only return errors when something really unexpected/bad happens.

Verified - no errors ever returned. Some of the cases were fixed by previous PRs.


Can not find the app in the flows. What am I doing wrong?

I see the app is installed, althougy I do not see him in the flows to choose


Probably caching error: ENOENT, no such file or directory Error: ENOENT, no such file or directory '/var/folders/...'

Hello, Sir
Unfortunately  I keep getting this error when I am using sync-request in my project.
Environment:
$ node -v
v0.10.36
$ uname -a
Darwin host.some.domain 14.3.0 Darwin Kernel Version 14.3.0: Mon Mar 23 11:59:05 PDT 2015; root:xnu-2782.20.48~5/RELEASE_X86_64 x86_64
$
Parameters to the request:
...
var resourceUrl = util.format(baseUrl, querystring.escape(id));
var options = {
gzip: false,
headers: {
'some-header': 'some-value'
}
};
var res = request('GET', resourceUrl, options);
...
This is a straight REST-call with an identifier in the URL,-and the identifier is URL-encoded (as you can see).
fs.js:439
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
Error: ENOENT, no such file or directory '/var/folders/mn/yl6t62f949g6q6ly5b2sk9880000gn/T/spawn-sync_output_28876a1c1303314dc4322934d'
at Object.fs.openSync (fs.js:439:18)
at Object.fs.readFileSync (fs.js:290:15)
at spawnSyncFallback (/Users/kandal/tmp/git/vendor-integration/node_modules/sync-request/node_modules/spawn-sync/lib/spawn-sync.js:86:27)
at doRequest (/some/path/node_modules/sync-request/index.js:19:13)
(The name for the temporary file is of course different each time)
Thank You very much.
Trond.

I'm getting the same error on a long running process.

The temporary file is used by spawn-sync to communicate with the other process (that actually makes the request).  The best bet would be to update to node v4 which doesn't require that pollyfill.

We no longer use the spawn-sync polyfill, so this should no longer be an issue.


Make mapping of metric parts to Prometheus metrics/labels configurable

Prometheus's true power comes from its multi-dimensional data model: metric names with arbitrary key/value dimensions. I wonder if it would be a good idea to allow some configurability of the PrometheusSink to allow such mappings. If I understand the go-metrics data model correctly, it's StatsD/Graphite-like, in the sense that a metric simply has a number of parts (separated by dots or whatever else in the end). In Prometheus's statsd-bridge, we already have a very simple mapping language for this type of componentized metric into more useful Prometheus metrics: https://github.com/prometheus/statsd_bridge#metric-mapping-and-configuration
However, it could / should arguably be even a bit more powerful, like allowing regex-based rewriting of metrics and labels.
/cc @stapelberg, who built the PrometheusSink and got bitten by getting the hostname in metric names via this package (via Hashicorp's Raft package using go-metrics).

By the way, I'm mainly interested in opinions for now. Happy to implement something myself here at some point if there's an agreement (although it's not terribly urgent for myself - others might have a more pressing need to build it and that's cool too).

I don't have strong opinions here, I just merged in the work that @stapelberg did as we don't use Prometheus ourselves.

Yup, makes sense. Ok! I'll just let this sit here for now if that's ok, until either I or someone else finds the time to implement it.

Sounds good

@juliusv According to https://github.com/prometheus/statsd_bridge/blame/master/mapper.go, you are (almost) the sole author of the mapper code in the statsd bridge. Would you be willing to relicense the code as MIT (which go-metrics uses)? Then we could just copy over the mapper (or move it into a shared repository, whichever way you prefer) into go-metrics and expose it in the interface.

@stapelberg Hey, I'd be happy to relicense under any conditions necessary to be useful. Just wondering if we want to take exactly that code or wait for some more flexible regex-based code like in the JMX Exporter (https://github.com/prometheus/jmx_exporter) that enables more use cases. Or, since mappers could just be injected objects, we could add the current statsd-bridge-style mapper now and add another one later. Or we only do the more complete one and leave the simple one out. What do you think?

Perhaps as a first step, we should add an interface for passing a mapper to a given PrometheusSink, and the interface methods that mapper has, and then anyone can do anything they want anyways :)

@juliusv I took a brief look at the JMX one, but it’s written in Java and I’m not very fluent in that. Can you outline the advantage the JMX mapper has?
Given that the interface seems to be getMapping(statsdMetric string) (labels prometheus.Labels, present bool) (can the JMX one satisfy that?), I think adding the interface and the simple mapper would be a good first step, and then we can just drop in a more complex mapper if need be.

@stapelberg SGTM. Actually, besides the actual interface definition, there's work needed in the PrometheusSink itself to act on those mappings and dynamically generate Prometheus metric vectors (metrics with label dimensions). I don't have a lot of time to spare at the moment - would you be interested in working on that? Otherwise I could try to squeeze it into some free time slot at some point, but it could take a while.

As for the mapper interface definition, perhaps it would make sense for the metric name to be treated specially (instead of being just part of the labels), because otherwise the mapper needs to use and depend on the internal metric name label name (__name__). So:
mapMetric(goMetric string) (name string, labels prometheus.Labels, present bool)

Just to be clear, I don’t currently have enough time to drive this. @juliusv, I’d be happy if you could take a stab at it at some point.

I did some work on this. Added a PrometheusMapper interface an implemented a basic RegexpMapper, similar to what's possible in jmx_exporter. Please comment.


last.fm support

please add last.fm support

Thanks for your advice, but this program's name is  netease-muisicbox, so we'll not do this.
If you'd like, you can try https://github.com/hugovk/lastfm-tools

Thank for reply. you know last.fm is an online music catalog with music, so I mean send the listening record to last.fm when I am using netease-musicbox, add the function into musicbox just like the last.fm plugin for VLC player or some last.fm Chrome extensions.


[BUG] using monai and monai-deploy-app-sdk,there is a bug multiply version of monai may have been installed

Describe the bug

Steps/Code to reproduce bug

Expected behavior

Environment details (please complete the following information)

OS/Platform:
Python Version:
Method of MONAI Deploy App SDK install: [pip, conda, Docker, or from source]
SDK Version:

Additional context

Please provide required information asked in the template. It is often times the environment that is prevent the correction install of the SDK. Recommend install and use the SDK in a Python virtual environment.


Edit/reason tab

I altered the layout of the tab so dropdowns show in grid layout.
Replaced x with 0 for the sake of the sparklines.
Ordered and labeled the reasons as they look in published table.
Still needs unecessary info from table removed. The page marker, and download buttons + column headers formatting.

Finally....
Travis checks pass now. Packrat doesn't like the sparkline package... so after many failed attempts I jsut added in a manual work around which will install the package if it does not exist.


matchdg with missing class in domain

In the dataset, the domain Acevedo, the class myeloblast does not exists. It seems like this causes matchdg to crash:
RuleException:
RuntimeError in file /home/ubuntu/georg/DomainLab/domainlab/exp_protocol/benchmark.smk, line 59:
current domain does not contain all classes
  File "/home/ubuntu/georg/DomainLab/domainlab/exp_protocol/benchmark.smk", line 59, in __rule_run_experiment
  File "/home/ubuntu/georg/DomainLab/domainlab/exp_protocol/run_experiment.py", line 87, in run_experiment
  File "/home/ubuntu/georg/DomainLab/domainlab/compos/exp/exp_main.py", line 45, in execute
  File "/home/ubuntu/georg/DomainLab/domainlab/algos/trainers/train_matchdg.py", line 19, in before_tr
  File "/home/ubuntu/georg/DomainLab/domainlab/algos/compos/matchdg_ctr_erm.py", line 28, in __init__
  File "/home/ubuntu/georg/DomainLab/domainlab/algos/compos/matchdg_base.py", line 83, in mk_match_tensor
  File "/home/ubuntu/georg/DomainLab/domainlab/algos/compos/matchdg_match.py", line 162, in __call__
  File "/home/ubuntu/mambaforge/envs/gdl/lib/python3.8/concurrent/futures/thread.py", line 57, in run

matchdg does not support this scenario when one class is missing for a domain, correct? @rahulbshrestha ?

matchdg does not support this scenario when one class is missing for a domain, correct? @rahulbshrestha ?

If this turns out true, what are we going to do? Shall we exclude matchdg or the missing class for all domains?

or let it fail and we won't have results for matchdg?
But definitely there is a way to fix this in the code, and we will see if we can fix that before we run large scale experiments


New traces definition spec

Problem Statement
The current traces definition and therefore the traces generator work for most cases but have nuances that can be difficult to process. Case in point, how we split spans of a trace into multiple payloads based on certain frequency limits. Also, the whole terminology in the existing definitions like spans, root spans and their relationships might be introducing a certain learning curve for someone who just wants some demo traces and maybe a few variations but doesn't necessarily understand OpenTelemetry terminology.
Proposed Solution
We should introduce a new definitions format based on endpoints & routes. Endpoints are basically services (db, web, messaging and more) and routes define a trace through them. Additionally, certain routes could be triggered only in certain conditions. We can achieve this using JEL expressions again. A rough sample:
"traces": {
  "routes": [{
    "condition": "event_fired(\"<event.domain:event.type>\", [<attribute_filters>])",
    "route": ["endpoints_type_1[endpoint_1.name]",  "endpoints_type_1[<endpoint_2.name>]"],
  }],
  "endpoints": {
    "endpoints_type_1": [{
      "name": "endpoint_1",
      "quartileDurationSeconds": [3, 5, 7],
      "resource_type": "entity_a",
      "attributes": []
    },
    {
      "name": "endpoint_2",
      "quartileDurationSeconds": [10, 12, 45],
      "resource_type": "entity_c",
      "attributes": []
    }]
  }
}

Alternatives Considered
N/A

I like this very much, because this is also closer to how people think about things. A challenge might be internal spans, or are you able to represent them with that?

There will be endpoints of type internal which won't participate in routes.


Hi, while running the test for app-service running with MQTT, do we need to change the robot file config for MQTT ? as I can see the robot files are prepared with {APP_HTTP_EXPORT_PORT}. please let me know for suggestions. Thanks in advance.

@lenny-intel @weichou1229 @cloudxxx8 please do let me know for any suggestions. Thanks in advance.

@lenny-intel  , I observed that when I was running the application service using consul with mqtt, and tried running the python script for app-service testing, the test failed 100%. I read the robot files(GET.robot, POST.robot, etc), they had only HTTP-EXPORT mentioned , when I changed those to MQTT-EXPORT, the test ran with 50% success rate.
I wanted to confirm about this only that was this alteration required in a scenario where I am running the services using consul with mqtt and then trying to run the test ?
Please let me know if there are any suggestions. Thanks in advance.

@dipshirajput , yes you can run app-service from command line with MQTT as the message bus, but you must change the Trigger configuration to use MQTT as the MessageBus.
The App Template has the configuration for MQTT MessageBus commented out here for your reference:
https://github.com/edgexfoundry/app-functions-sdk-go/blob/main/app-service-template/res/configuration.toml#L114-L137

Thanks @lenny-intel .


Replace methods clashing with Hamcrest API

To fix #8 , this pull request deprecates methods which will clash with methods in org.hamcrest.Matchers if static importing from both, and adds new methods with other names to replace them.
The API of java-8-matchers affected by this is:
OptionalMatchers:

empty is replaced with notPresent
contains is replaced with present
variants for primitives are also replaced, to align with the new naming convention

StreamMatchers:

empty is replaced with yieldsNothing
equalTo is replaced with yieldsSameAs
contains is replaced with yieldsExactly

To aid with this change, I made a test for each XyzMatchers class to verify it does not have any non-deprecated method with an equivalent in Hamcrest. It is not in any way a "formally complete" check if a name clashes with matchers from Hamcrest, but it served me as a kind of sanity check for verifying that the methods I have already manually identified were indeed candidates for deprecation. And it will stop us from adding other methods in the future which clash with Hamcrest.
To maintain consistency in naming, there are also tests which ensures that no deprecated method still has a "related" method (e.g. empty() and emptyInt() in OptionalMatchers) which has not also been deprecated.
In #8, I mentioned the StreamMatchers.startsWith variants as clashing with Hamcrest, but I withdraw that, as static importing several methods with same name works fine as long as invocations can be determined unambiguously. Which means that startsWith from java-8-matchers clashes with Hamcrest only in the case when used with Stream of strings, and you only match on one element.
import static org.hamcrest.Matchers.startsWith;
import static uk.co.probablyfine.matchers.StreamMatchers.startsWith;
...
assertThat("ab", startsWith("a"));                     //Hamcrest
assertThat(Stream.of("a", "b"), startsWith("a", "b")); //StreamMatchers, compiles fine
assertThat(Stream.of(1, 2), startsWith(1));            //StreamMatchers, compiles fine
assertThat(Stream.of("a", "b"), startsWith("a"));      //StreamMatchers, does not compile :(

I think this is such a particular case, and easy to work around, that I am leaning towards it is not worth replacing all the startsWith-methods in java-8-matchers.

@mrwilson What do you think of these changes to be included for a new 2.0 release? It should decrease friction to have java-8-matchers coexisting with Hamcrest matchers in the same test. The deprecated methods can be removed in a later release.

Oh, brill! Thanks for raising this - I'll take a proper look this week :)

Any progress on this, @mrwilson? :)

Thanks for being patient, I took a look at the PR but never wrote my comments in.
Purely a taste thing, but I would prefer something like OptionalMatchers.containsValue(<value>) over OptionalMatchers.present(<value>).
My reasoning is that being "present" is quality of the Optional that doesn't need information about what the value actually is, and OptionalMatchers.present() might be better off being a nicer way of expressing assertTrue(optional.isPresent())
I'm pretty happy with the yieldsX syntax for streams.

I understand your point about "present" describing a binary quality of the Optional; it is either present or not, regardless of its value per se.
I deliberately wanted to avoid "contains" as a term for a couple of reasons:

it is an established concept of collections, you can query a collection if it contains an element or not.
at the same time, I am not a fan of how the naming of the Hamcrest matcher contains(..), because it does not really have the same semantics as its equally named method on Collection. So in my head, the ambiguities I have seen arises from this made me want to avoid "contains".
But most importantly, I don't think of an Optional as a "container", it is really more of an "augmenter"; a general facility to add "existential properties" to a singular value. I emphasize singular, because even though if one does not think of a collection as a container as such, it is just possibly multiple values, it still makes sense to ask if these values contains this and that element. You probably would not name a List variable a personList, but instead name it simply persons, and because of the plural form it makes sense to ask if it contains any specific person. An Optional is at most a single value, and as such to me it feels a bit awkward to say an Optional contains a value, when I am in some sense semantically operating on the value (or not) itself. I would name Optional references and methods returning an Optional the singular form of the value that may or may not be present, and just lean on the type on how I operate on the value, and in my experience this makes sense on from the perspective of reading the code. Granted, the javadoc describes Optional as a "container object", but nowhere does it offer any means to interact with it in terms of if it contains a value. You can, as you also mention, ask if it is present, and I think of it as describing the value itself as present, not as a quality of an encapsulating container.

Used in code, say with an optional String-value name, would read like this:
Optional<String> name = // name resolved from somewhere
assertThat(name, present("Jane"));
...
assertThat(person.getName(), present("Jane"));
...
Collection<Person> attendees = // get attendees from somwhere
assertThat(attendees, hasItem(where(Attendee::getName, present("Jane"))));

I think of it as the name is present with a specified value, not that name contains a value. You can, as also recommended by Hamcrest to make assertions slightly more expressive, wrap it as is(present("Jane")), and I prefer that because it keeps the focus on the value itself, not that it is technically encapsulated in an Optional, but the type itself "forces" the correct use of the applicable matcher.
As for java-8-matchers to offer OptionalMatchers.present() to simply match a present value, I am not sure if that is necessary, as it can be expressed as where(Optional::isPresent), and if you expect it to be present you usually have some expectations on what value it contains, and we should not encourage to assert the mere presence of a value, but what the value actually is. You can make the assertion quite lenient using other matchers, or even just present(anything()) if you really want to check for anything being present.
So that's my reasoning for, well, not using "contains", and I guess I landed on "present" as it is an established way of describing the value by the Optional-type itself. I can be a bit elaborate when talking about naming things in code, because it is something I care quite a lot about 😛

Thoughts @mrwilson? Still not in favour of OptionalMatchers.present(<value>)? Anything we can discuss to agree on the naming? 🙂

You make some very good points, and I agree that taking care over naming things is very important!
I think the thing that points me towards containsValue() is that the standard library Javadoc calls Optional a container.

A container object which may or may not contain a non-null value.

I would prefer containsValue() in light of this, and everything else in the PR is fine. :)


GC refactoring

This is ready for review.
This is a refactoring of the garbage collection code to make it parametric in the allocation arena. I have verified that it does not increase the assembly size of the allocator/collector, in fact the size is reduced for about 140 instructions.
The PR also includes a patch to the build system that I needed to make the project build against an llvm build built from source.

I have added the third arena for not collected objects. Currently testing against evm.

I tested the PR against evm's vm and blockchain tests. All tests pass except
tests/ethereum-tests/BlockchainTests/GeneralStateTests/stSpecialTest/JUMPDEST_AttackwithJump_d0g0v0.json
which requires an amount of memory that my development laptop cannot provide.


Decide: Modals for Proposal + Agenda results are much too quick, doesn't allow players to read.

one quick fix is doubling the time before it disappears. Lets try simply doubling the time first, and also give me some instructions on where to find these values in code so I could play with it myself.
Another option would be including a button on the player the modal is addressing for them to acknowledge the update and advance along. This might be a better ultimately, but might take too much time compared to everything else we need to do. I want to test timing changes first before changing logic/introducing additional potential problems.

decide modal duration is now a field in the game config settings in keystone!

please verify fix and change Matt!


chore(deps): update terraform terraform-ibm-modules/observability-instances/ibm to v2.18.1

This PR contains the following updates:

Package
Type
Update
Change

terraform-ibm-modules/observability-instances/ibm (source)
module
patch
2.18.0 -> 2.18.1

Release Notes

terraform-ibm-modules/terraform-ibm-observability-instances (terraform-ibm-modules/observability-instances/ibm)
v2.18.1
Compare Source
Bug Fixes

update Cloud Monitoring service endpoint variable description (#572) (84c1143)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

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

GitHub release
v8.11.12

Your semantic-release bot :package::rocket:


Raise an error if negative value passed as input parameter

Is your feature request related to a problem? Please describe.
If a negative value is passed as an argument for one or more of the input parameters raise an error warning the user to pass an argument > 0
i.e.
import numpy as np
from spyrograph import Hypotrochoid

hypotrochoid = Hypotrochoid(R=100, r=-20, d=25, thetas=np.arange(0,2*np.pi, .1))

would raise an error like
"ValueError: Negative value is an invalid input parameter. Please pass values greater than zero"

You want it show error message when Negative value is passed as input.

Heyo @SahilDave04 !!
Yes - currently the library accepts any input but the inputs are supposed to define the radii and distances from circles so having a negative or zero radius doesn't make sense in this context
I figure a simple check on __init__ if one or more input args <= 0 then raise ValueError

else we can just check it when the user is giving input with just an if else statement

Correct! Are you interested in this issue? I'll assign you and then give a quick brief so you know where to get started!

Sure I'd like to try.

Can you please direct me to the main file.
Sorry I'm a newbie.

Awesome thanks so much for your interest!! :D
So all of the objects I listed above inherit from an abstract base class called _Trochoid that defines most of the behavior
For this issue you would pretty much just have to drop into this class' __init__ and place an if check that checks if self.r, self.R, or self.d are negative and then raise the error (right around here is a good spot)

Don't be sorry at all - I'm here to help! :D Any questions at all please reach out

I will.

Do you not want the values to be Zero as well?

Good catch! I actually flagged this in a separate issue #91 - feel free to tackle both at the same time!

Do you want it to specifically mention if 0 is passed?

Nah it can be in the same if check that you have in #93, just change < to <= so it'll trigger on zero as well

Solved with #94


Sign out response in firefox

When signing out of in firefox, on the post req to /users/sign_out, I noticed that a console error of no element found gets thrown from the 404 page
Apparently it's more of a firefox bug (tickets here and here). I saw it came up in jquery's bug tracker too, and wanted to check if it's worth changing the response over or not. It doesn't have an effect on site functionality, and I've only seen it in firefox.

I think the /users/sign_out expects DELETE instead of POST, which should work correctly.

We're sending a POST with X-HTTP-Method-Override: DELETE to work around PhantomJS not sending content with DELETE requests. If this is a Firefox bug and doesn't actually break anything I think we should ignore it.


How can i create custom component for datagrid cell?

I am attempting to customize the appearance of a cell in a Datagrid by importing a custom component and changing the column type to 'codeComponent.' However, I am encountering an issue with utilizing the 'useGridApiContext' hook within the custom component.

Link: https://demo.toolpad.io/_toolpad/app/cld06iouh01jupc7byglpysen/pages/3a6l7cp4

@yaredtsy - seems that the context is actually accessible when you look at the page where this component is rendered inside data grid.
@Janpot I'm not sure if we should/could do something inside Toolpad to make this work? i.e. trying to "guess" where this component could be used and then rendering it in the component preview on the right 🤔
Alternatively maybe we should provide interface to define preview provide for each component so that user could define context that will be used?
I think at the current stage custom component code should be written "defensively", by checking whether it's even possible to access parent context and provide some defaults that would make this work in preview mode.

@yaredtsy Interesting, that's clearly a limitation of using the custom component as a datagrid column renderer that we didn't foresee. As the sandbox we show the preview for custom components in is just a top-level react component, there is no DataGrid context there. Hence the reason why you see this error, yet, it renders without a problem in the actual datagrid.
The way we intended this to work was as a pure component taking field, value and row props and rendering cell content for those (@bytasv this issue is a good indicator of something that we need to document).
Could you explain a bit more the practical use-case you're looking for here? Perhaps we can come up with a solution that doesn't involve access to the apiRef? The only way I can see us solve this is if we somehow tie a code component to the datagrid we intend to render it into. Not sure how that would work exactly from a UX point of view, but good to be aware.

Could you explain a bit more the practical use-case you're looking for here

I am creating custom components to implement edit and delete actions in the Datagrid, as the toolpad does not have a built-in action type
How about providing a preview feature for the user, allowing them to view the page while editing the custom components?

@yaredtsy Toolpad has changed a lot lately. You can customize a data grid column as shown here: https://mui.com/toolpad/how-to-guides/customize-datagrid/


TypeError: body.filter is not a function since last thursday

Hi everybody,
since last thursday evening I get the following errors from the ewelink plugin:
Nothing has changed on the setup. The errors came out of nothing.
Any idea?
[2019-11-20 7:42:50] TypeError: body.filter is not a function
at /usr/local/lib/node_modules/homebridge-ewelink/index.js:364:37
at Object.parseBody (/usr/local/lib/node_modules/homebridge-ewelink/node_modules/request-json/main.js:74:12)
at Request._callback (/usr/local/lib/node_modules/homebridge-ewelink/node_modules/request-json/main.js:148:26)
at Request.self.callback (/usr/local/lib/node_modules/homebridge-ewelink/node_modules/request/request.js:185:22)
at Request.emit (events.js:210:5)
at Request. (/usr/local/lib/node_modules/homebridge-ewelink/node_modules/request/request.js:1161:10)
at Request.emit (events.js:210:5)
at IncomingMessage. (/usr/local/lib/node_modules/homebridge-ewelink/node_modules/request/request.js:1083:12)
at Object.onceWrapper (events.js:299:28)
at IncomingMessage.emit (events.js:215:7)
at endReadableNT (_stream_readable.js:1183:12)
at processTicksAndRejections (internal/process/task_queues.js:80:21)

I have the same issue
This is causing the homebridge to crash

Nov 28 20:42:50 raspberrypi homebridge[12796]: [11/28/2019, 8:42:50 PM] [eWeLink] An error was encountered while requesting a list of devices while interrogating power status. Verify your configuration options. Response was [{"error":400,"msg":"params incomplete"}]
Nov 28 20:42:50 raspberrypi homebridge[12796]: [11/28/2019, 8:42:50 PM] TypeError: body.filter is not a function
Nov 28 20:42:50 raspberrypi homebridge[12796]: at /usr/lib/node_modules/homebridge-ewelink/index.js:364:37
Nov 28 20:42:50 raspberrypi homebridge[12796]: at Object.parseBody (/usr/lib/node_modules/homebridge-ewelink/node_modules/request-json/main.js:74:12)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at Request._callback (/usr/lib/node_modules/homebridge-ewelink/node_modules/request-json/main.js:148:26)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at Request.self.callback (/usr/lib/node_modules/homebridge-ewelink/node_modules/request/request.js:187:22)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at Request.emit (events.js:193:13)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at Request. (/usr/lib/node_modules/homebridge-ewelink/node_modules/request/request.js:1044:10)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at Request.emit (events.js:193:13)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at IncomingMessage. (/usr/lib/node_modules/homebridge-ewelink/node_modules/request/request.js:965:12)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at IncomingMessage.emit (events.js:198:15)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at endReadableNT (_stream_readable.js:1139:12)
Nov 28 20:42:50 raspberrypi homebridge[12796]: at processTicksAndRejections (internal/process/task_queues.js:81:17)
Nov 28 20:42:50 raspberrypi homebridge[12796]: [11/28/2019, 8:42:50 PM] Got SIGTERM, shutting down Homebridge...
Nov 28 20:42:55 raspberrypi systemd[1]: homebridge.service: main process exited, code=exited, status=143/n/a

It seems that the protocol was changed on the server side


Duplicated Entity Exception

I followed all the instructions on this page but when I added the UWP Project reference into the Test Project I couldn't run the tests anymore.
I got the "Duplicated Entity" error message.
I fixed that by excluding the Assets folder and Properties\Default.rd.xml file from the Test Project.
I wished this page had included those pieces of information. It would have saved me some hours.

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

ID: 06ad1796-f0fa-b93d-f885-542e7e50e3d2
Version Independent ID: bacdf7a8-a577-bd17-769c-46397b5850b5
Content: Create and run unit tests for Universal Windows Platform (UWP) apps - Visual Studio (Windows)
Content Source: docs/test/walkthrough-creating-and-running-unit-tests-for-windows-store-apps.md
Product: visual-studio-windows
Technology: vs-ide-test
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

@Mikejo5000 -- please see the previous comment.

Updating article. Should be live by end of day today.


Issue67 reduce allocs

Resolves #67
Refactors a fair amount of the export() function to reduce some allocations.
Running the same benchmark mentioned in #67, the allocs were reduced from 17 to 8.

Coverage decreased (-5.3%) to 94.686% when pulling 5fa150f05250097cdab190087b4c78a7ed57df48 on issue67-reduce-allocs into c288c2604584c85784fb5330cd7df1be8d6760b4 on master.

Coverage decreased (-5.3%) to 94.686% when pulling 5fa150f05250097cdab190087b4c78a7ed57df48 on issue67-reduce-allocs into c288c2604584c85784fb5330cd7df1be8d6760b4 on master.

Thanks for the review, @briandowns !


Cleaner merge with or_interactivemarker

I am nearly done cleaning up the or_rviz and or_interactivemarker merge. Here is my branch:
https://github.com/personalrobotics/or_interactivemarker/tree/feature/RVizMerge
These are the main differences:

Builds both the InteractiveMarkerViewer and RVizViewer viewers
RVizViewer subclasses InteractiveMarkerViewer and just implements the missing features
Added the ability to change the OpenRAVE TF frame (set_parent_frame)
Removed a ton of duplicate code that resulted from the merge

I still haven't quite reach feature parity with your version of or_rviz. I'm still missing:

Switching which environment to render (this may require some hacking inside or_interactivemarker)
Off-screen rendering (for GetCameraImage)
RViz OpenRAVE environment plugin (not updated yet)
Not sure if I am handling the QApplication creation and destruction correctly
Haven't ported the native plotting methods yet

@mklingen: I wanted to give you a heads up so we don't diverge when fixing bugs.

All of those features are in or_rviz already. Provided its subclassing RVIZ correctly, you can port all of those functions over without issue (for setting environment, etc.). QApplication is tricky, I hacked it inside Plugin.cpp. Need to make sure that its created in the main thread, which I don't think is garunteed with openrave plugins.

GetCameraImage doesn't seem to work in or_rviz in the current master.
I ported over the current implementation to my merge branch and removed a bunch of dead code to try to debug this. All of the offscreen rendering logic is now in ProcessOffscreenRenderRequests  and GetCameraImage.
In the process, I noticed that offscreenPanel and m_offscreenRenderer are created, but never used. This may not actually be related because the image is being rendered as a dynamic texture in the main display panel. This seems like a fine approach, except that it seems to write random data into the texture.
This is the current output of GetCameraImage on HERB:

Somewhat tracked it down. Adding an update() call before copying the memory to force a re-render solves this issue if I render the user-controlled camera.
However, the GetCameraImage example on openrave.org still doesn't work. I just get a black image if I render using the camera intrinsics/extrinsics passed by from openravepy.  Something must wrong with either GetCameraTransform, GetCameraIntrinsics, and/or SetCamera.


Robustscaler

Hi - this is an attempt at a port of the python sklearn's RobustScaler class:
http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.RobustScaler.html
I added some test cases too, though I would not call them comprehensive, by any means. Would you be interested in adding this to golang sklearn?
I am relatively new to golang and will humbly accept your critique :-)
Graham

Codecov Report

Merging #1 into master will increase coverage by 0.83%.
The diff coverage is 93.84%.

@@            Coverage Diff             @@
##           master       #1      +/-   ##
==========================================
+ Coverage   61.28%   62.12%   +0.83%
==========================================
  Files          23       23
  Lines        2472     2537      +65
==========================================
+ Hits         1515     1576      +61
- Misses        872      874       +2
- Partials       85       87       +2

Impacted Files
Coverage Δ

preprocessing/data.go
73.52% <93.84%> (+4.07%)
:arrow_up:

Continue to review full report at Codecov.

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


W2D1T2 typo

nHowever --> However

Merged with https://github.com/NeuromatchAcademy/course-content/issues/409


Rename "Claims" Accordion to "Claims & Progress report"

Description:
Need to rename the "Claims" accordion to "Claims & Progress reports" to improve user understanding, and align with the report name.
Acceptance Criteria:

[ ] Claims accordion page now reads "Claims & Progress reports"

Hey team! Please add your planning poker estimate with Zenhub @AntBush @marcellmueller @rafasdc


create Individual project page

Recreate the individual project page as per the Figma design. (use an incrementing ID for the url path so project/1 displays all-yaml/projects/1.yaml)
No hard-coded elements will be in the Projects Page; instead, a template component will be created as per YAML dependencies for easy customization in the future.
All YAML content should be rendered out as desired (H1, embedded images, etc)
Create it as a page that a user can enter through the projects page.
Keep in mind the mobile implementation of the page.

#45


Test the windows bot.

/botio-windows test

/botio-windows test

It seems some sub-processes of firefox keep crashing, but unfortunately there's no crash reports

/botio-windows test

/botio-windows test

/botio-windows test

/botio-windows test

The crash is https://bugzilla.mozilla.org/show_bug.cgi?id=1673194

/botio-windows test

@Snuffleupagus or @timvandermeij I see firefox-issue12233-print-page1 failed, did a regression land or did we not update ref images?

I see firefox-issue12233-print-page1 failed

Is it actually a regression though, since it rather looks like an improvement unless I'm completely misunderstanding this.

did a regression land or did we not update ref images?

I'd say the latter, since a number of PRs have landed while the Windows-bot was down; hopefully Tim can confirm this.

This reference image is indeed an improvement from #12395; before the image was incorrect, so a makeref is safe here.

I verified that the Windows bot is working properly again now. Thanks!
/botio makeref

/botio-linux makeref

/botio-windows test

/botio-windows makeref


repost fixes

don't redirect to channel page after repost success. This should probably stay on the current page if reposting from a claim. If from top page, maybe go to reposted claim, or stay on top page with pending (did we get rid of pending?)

should show repost and correct type (i.e. channel, not document) - maybe because it's anonymous?

if reposting from a stream, return to the stream
if reposting from /top or /search, return to /top or /search (or always return to /top)

Hello guys, I can work on this if it's available. Regards.

Hello guys, I can work on this if it's available. Regards.

@Ruk33 thanks , but we'll handle this one internally. Maybe there's a smaller issue you can find on the repo?

@Ruk33 thanks , but we'll handle this one internally. Maybe there's a smaller issue you can find on the repo?

Sure @tzarebczan no worries. Thanks!

Sure @tzarebczan no worries. Thanks!


Sonobuoy fails running plugin hosted behind https due to missing root certificates

What steps did you take and what happened:
When trying to use the sonobuoy docker image to run sonobuoy using a third party plugin hosted on Github with the --plugin flag, sonobuoy failed with x509: certificate signed by unknown authority because the Docker image has no root certificates installed.
What did you expect to happen:
Sonobuoy is able to fetch the plugin when using https.
Environment:

Sonobuoy version: v0.20.0
Kubernetes version: (use kubectl version):

hey @fiunchinho thanks for reaching out! I'm curious, can you elaborate more on which plugin and which step ended with x509 error?
Also, did you compile the binary yourself or did you get it from our releases page?

Sure! We have our own plugin that runs some tests. The plugin yaml file is hosted on a Github repository so when running sonobuoy run --plugin github.com/company/repo/plugin.yaml we get an error x509: certificate signed by unknown authority. If I run sonobuoy from a custom docker image that contains root certificates, then everything works just fine.
We are using the sonobuoy docker image tagged as v0.20.0. You can easily get the same error running the docker image like docker run --rm -it sonobuoy/sonobuoy:v0.20.0 bash , and then trying to sonobuoy run a plugin which is hosted using https.

and it was running fine on v0.19?
😬 this might have something to do with go1.15 handling CAs differently
I'll try this in my morning, but if I recall correctly we were still able to do it with our plugins.
one more question while I'm still up: do you happen to be running it behind a proxy or some other indirection of network setup?

and it was running fine on v0.19?
this might have something to do with go1.15 handling CAs differently
I'll try this in my morning, but if I recall correctly we were still able to do it with our plugins.
one more question while I'm still up: do you happen to be running it behind a proxy or some other indirection of network setup?

Did you manage to reproduce it?  Preparing results for download.

❯ sonobuoy retrieve
202102231426_sonobuoy_000edabc-be4e-4f44-815b-1ade6ae7699f.tar.gz

oh I missed this part

When trying to use the sonobuoy docker image to run sonobuoy...

I can reproduce it with:
$ docker run --rm -it sonobuoy/sonobuoy:v0.20.0 /sonobuoy run --plugin https://raw.githubusercontent.com/vmware-tanzu/sonobuoy-plugins/master/cluster-inventory/cluster-inventory.yaml

this is a use case we don't really support / consider to be honest. any reason that you went towards this path instead of running the CLI natively on your host?

Our intention was to run it as a step on a CI/CD tool called tekton which uses Docker images as pipeline steps. I believe other tools on this space use a similar approach.

I see, that makes sense. We are switching our base image from debian to distroless and the change is already on master. Looks like this issue no longer exists on our HEAD. Next release is coming in a few days, but until then I suggest you try sonobuoy/sonobuoy:master.
docker run --network host --rm -v $HOME/.kube/config:/.kubeconfig -it sonobuoy/sonobuoy:master \
  /sonobuoy run --kubeconfig /.kubeconfig --sonobuoy-image sonobuoy/sonobuoy:master \
  --plugin https://raw.githubusercontent.com/vmware-tanzu/sonobuoy-plugins/master/cluster-inventory/cluster-inventory.yaml

The caveat of using master tag is that you need to explicitly say --sonobuoy-image sonobuoy/sonobuoy:master or it will be stuck on ImagePullBackoff trying to fetch a private tag.

That's great. So if it's fixed on master I believe we can close this then. Thank you.

Thanks again for reporting back! @fiunchinho

Thanks @wilsonehusin for looking into this. That's awesome.


Ansible run fails: an unexpected type error occurred.

We see the following error on RDO Mitaka when deploying OpenShift
TASK: [openshift_hosted | Retrieve list of openshift nodes matching router selector] ***
skipping: [darren1-origin-master-0.example.com]
TASK: [openshift_hosted | set_fact ] ******************************************
<darren1-origin-master-0.example.com> ESTABLISH CONNECTION FOR USER: centos
fatal: [darren1-origin-master-0.example.com] => Failed to template {{ openshift.hosted.router.replicas | default((openshift_hosted_router_nodes_json.stdout | from_json)['items'] | length) }}: an unexpected type error occurred. Error was expected string or buffer
FATAL: all hosts have already failed -- aborting

I'm looking at this one now. IIRC I've noticed this last week when deploying registry (-P deploy_registry), you should probably not hit it when omitting this param.

@jprovaznik thanks for looking at this. We are not deploying a registry so I'm not sure why we are seeing this. Please let us know if there is any additional information that would help.

I couldn't reproduce this now, could you please paste your env file and parameters used for stack-create command?

@jprovaznik thanks, details here:
https://paste.fedoraproject.org/395240/43799514/


Create collection through API should return HTTP status code 201

When creating new collection through API resulting HTTP code should be 201 instead of 200, to keep it uniform with other create operations. This change might break some clients, so it should be implemented in next major version.

Should go into 3.0.

We released 3.1 and it's still returning HTTP 200 on creation...
IIRC the reason we didn't change this yet time was that when trying this out too many tests and client drivers broke.

GitHub supports multiple milestones per issue meanwhile, should this be tagged for v4.0?

Let's leave it in backlog so the issue can be addressed any time it is convenient.

closing as won't fix due to API stability.


Add support for streaming responses for Amazon Bedrock LLM

This PR adds support for using the Amazon Bedrock LLM with streaming.  See the added test for an example use.
Fixes https://github.com/hwchase17/langchainjs/issues/2321

This looks really fantastic, but I don't think it really fits as a chat model (there's no dialog turns/messages, for example). The OpenAIChat class was really just a one-off when chat models were new.
We can just add streaming to the LLM version I think?

Let me know if you need help using the newer package! I'm happy to dig in tomorrow.

Thanks for the quick updates!
To get .stream() working you'll actually need to implement _streamResponseChunks as shown here:
https://github.com/hwchase17/langchainjs/blob/main/langchain/src/llms/openai.ts#L452
I can do this later today though - it should be very similar to what you have, and we can share the streaming logic.

@Benyuel Refactored a bit so we can support the .stream() method and added an integration test - can you confirm yarn test:single langchain/src/llms/tests/bedrock.int.test.ts works for you?
I also added retries and the ability to pass an abort signal to cancel in flight requests (hackily).
Also CC @vitaly-ps for a second look?

Thanks so much @jacoblee93!
I made a minor change to get the tests working for me, and also added passing in temperature and maxTokens into the request.
I think this is ready from my perspective

I also added retries and the ability to pass an abort signal to cancel in flight requests

I tested this works as well 👍

Hey @Benyuel, I think you changed the test I added to use a mocked function - does this work with a live Bedrock instance?

Looks great! Thanks again for your patience!

Hey both, I've found this PR from one of the linked issues -- I'm still confused about how to implement streaming with Bedrock similar to what is shown in the docs: https://js.langchain.com/docs/modules/model_io/models/chat/how_to/streaming. Simply changing ChatOpenAI with ChatBedrock does not work, but maybe I need to do something else?

Ah apologies, we really need to update that - instead use:
https://js.langchain.com/docs/expression_language/interface#stream

Awesome thanks @jacoblee93, I'm now able to stream with Bedrock too 👍


Beta

Codecov Report

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

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff            @@
##             main        #1   +/-   ##
========================================
  Coverage        ?   100.00%
========================================
  Files           ?        11
  Lines           ?       574
  Branches        ?        54
========================================
  Hits            ?       574
  Misses          ?         0
  Partials        ?         0

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Loading a malformed save file reports an exception and causes the program to crash

Loading a malformed save file reports an exception and causes the program to crash

Original JavaB team had solved this issue with nothing about the state of the program changing.


vulkaninfo: fails to compile against vulkan-headers 1.1.117

Works with vulkan-headers 1.1.115, fails with 1.1.117:
[ 50%] Building C object vulkaninfo/CMakeFiles/vulkaninfo.dir/vulkaninfo.c.o
cd /var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/build/vulkaninfo && /usr/bin/x86_64-pc-linux-gnu-cc -DVK_USE_PLATFORM_WAYLAND_KHR -DVK_USE_PLATFORM_XCB_KHR -DVK_USE_PLATFORM_XLIB_KHR  -march=native -O2 -pipe -std=c99 -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -fno-builtin-memcmp -Wimplicit-fallthrough=0 -fvisibility=hidden   -o CMakeFiles/vulkaninfo.dir/vulkaninfo.c.o   -c /var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/Vulkan-Tools-1.1.114/vulkaninfo/vulkaninfo.c
make -j5
/var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/Vulkan-Tools-1.1.114/vulkaninfo/vulkaninfo.c: In function 'AppGpuDumpProps':
/var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/Vulkan-Tools-1.1.114/vulkaninfo/vulkaninfo.c:4515:48: error: 'VkPhysicalDeviceFloatControlsPropertiesKHR' {aka 'struct VkPhysicalDeviceFloatControlsPropertiesKHR'} has no member named 'separateDenormSettings'
                             float_control_props->separateDenormSettings);
                                                ^~
/var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/Vulkan-Tools-1.1.114/vulkaninfo/vulkaninfo.c:4519:48: error: 'VkPhysicalDeviceFloatControlsPropertiesKHR' {aka 'struct VkPhysicalDeviceFloatControlsPropertiesKHR'} has no member named 'separateRoundingModeSettings'
                             float_control_props->separateRoundingModeSettings);
                                                ^~
/var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/Vulkan-Tools-1.1.114/vulkaninfo/vulkaninfo.c:4584:102: error: 'VkPhysicalDeviceFloatControlsPropertiesKHR' {aka 'struct VkPhysicalDeviceFloatControlsPropertiesKHR'} has no member named 'separateDenormSettings'
                     printf("\tseparateDenormSettings       = %" PRIuLEAST32 "\n", float_control_props->separateDenormSettings);
                                                                                ^~
/var/tmp/paludis/build/sys-apps-vulkan-tools-1.1.114/work/Vulkan-Tools-1.1.114/vulkaninfo/vulkaninfo.c:4586:47: error: 'VkPhysicalDeviceFloatControlsPropertiesKHR' {aka 'struct VkPhysicalDeviceFloatControlsPropertiesKHR'} has no member named 'separateRoundingModeSettings'
                            float_control_props->separateRoundingModeSettings);
                                               ^~

Thank you for letting us know.
We have a known_good.json file containing tags and commit IDs for each repo required to build Vulkan-Tools that currently are known to work.
Right now we are using Vulkan-Headers 1.1.114.
I would suggest building with known_good.json for now.
If there are things in Vulkan-Headers 1.1.117 that you require for your development I would suggest keeping an eye on the repo for an update to known_good.json.

Fix in PR #235

Fixed with PR #240, closing this issue


Gnome 3.28 : VSCode opens a new window instead of minimizing/maximizing

Hi,
The VSCode icon in my Ubuntu App Menu / Dock is not behaving correctly.
Please note that this is a clean Ubuntu 18.04 LTS (Gnome 3.28.1) install from today.
I would be expecting VSCode to minimize or maximaze when I click the icon when there is an opened window.
Multiple click on the dock opens multiple instance instead of minimizing/maximizing :

If I set the focus on another window and click VSCode in the dock, instead of focusing the already opened window, it opens a new one :

Thank you

The issue still happens

This is a duplicate of https://github.com/Microsoft/vscode/issues/65460.


[feature] block.json translation WordPress

I am working with block.json files in WordPress. This is a preview on how such a block looks like: https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/
It seems that poedit is not able to extract this kind of block data. In wp-cli there is a option to extract these strings though.
See: https://github.com/wp-cli/i18n-command/blob/main/src/BlockExtractor.php and https://github.com/wp-cli/i18n-command/blob/main/src/JsonSchemaExtractor.php
It would be nice if Poedit supported the discovering of these kind of strings as well.

Thanks for alerting me to this!

Similarly, https://github.com/wp-cli/i18n-command/blob/main/src/ThemeJsonExtractor.php
wp-cli issues:

https://github.com/wp-cli/i18n-command/issues/224
https://github.com/wp-cli/i18n-command/issues/163


Stealthy 4.0.1 has new interface to set stealth values

Since Stealthy 4.x.x now stores stealth values in either the token or actor depending on the GMs choice, I've updated the API functions to insulate other modules from those internals. Instead of directly setting the values in the hidden effect, you should call stealthy.bankStealth(token, value) so it gets routed appropriately. Similarly, stealthy.bankPerception(token, value) will handle setting perception values. stealthy.getBankedStealth(token) and stealthy.getBankedPerception(token) are the reader functions.

Thank you, i will look into changing that as soon as possible

I tried using the stealthy.bankStealth(token, value) to set the stealth value of a token, there seems to be something missing in the code:

Dumb transcription error on my part, the internal call was misnamed. Fixing now, will have 4.0.5 out in a few minutes

Just tested this up on forge and it works as it should. You can grab it directly or update via normal means: Stealthy v4.0.4

Thank you, i will release the compatibility update shortly

I appreciate the compatibility support. Perceptive seems to be everything Stealthy would want to be should it grow up :smile:

So, the compatibility should be restored with perceptive v3.5.8.
I sometimes fear that the features included in perceptive grew a bit to fast, especially at the beginning. There are one or two features that do not work quite as stable as i would want them to work, due to the basic code never being written with them in mind. But oh well, they work for now.


Command to SSH into master node

Starcluster provides a command to login to the master node, without having to find it's address / path to PEM / username.
http://star.mit.edu/cluster/docs/latest/manual/getting_started.html#logging-into-the-master-node
Can we do the same? Syntax would be something like this:
$ cfncluster sshmaster mycluster

This can be done since CfnCluster 1.5.2 with cfncluster ssh <clustername> command: https://cfncluster.readthedocs.io/en/latest/commands.html#ssh.