Matplotlib callbacks not working on VSCode Jupyter Extension

%matplotlib
import matplotlib.pyplot as plt

def onPick(event):
    print('here')
    print(event)

fig, ax = plt.subplots()

ax.scatter([5], [5], s=1000, picker=True)
fig.canvas.mpl_connect('pick_event', onPick)
plt.show()

The above code plots a single point on (5, 5) and adds an event handler to it, so that when the point is clicked it can print info about the clicked point.
If one run this and click the button it should enter on onPick function. In a Jupyter Notebook it works fine, while in VSCode Jupyter Extension doesn't.
Environment data

VS Code version: 1.51.1
Extension version (available under the Extensions sidebar): v2020.11.371526539
Jupyter Extension version (available under the Extensions sidebar): v2020.11.358541065
OS (Windows | Mac | Linux distro) and version: Ubuntu 19.10
Python and/or Anaconda version: Python 3.8.5
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): pyenv
Jupyter server running: Local

Expected behaviour
It should print the event when the point is clicked.

Actual behaviour
It doesn't print anything besides the backend selection.

Steps to reproduce:

Paste this code on a Jupyter cell of VSCode extension.
Run it.
Click on the point (with left or right click, it doesn't matter).

Logs

Output for Jupyter in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Jupyter)

Started kernel Python 3
> ~/.pyenv/versions/3.8.5/bin/python ~/.vscode/extensions/ms-toolsai.jupyter-2020.11.358541065/pythonFiles/pyvsc-run-isolated.py vscode_datascience_helpers.daemon --daemon-module=vscode_datascience_helpers.kernel_launcher_daemon -v
> ~/.pyenv/versions/3.8.5/bin/python ~/.vscode/extensions/ms-toolsai.jupyter-2020.11.358541065/pythonFiles/pyvsc-run-isolated.py vscode_datascience_helpers.daemon --daemon-module=vscode_datascience_helpers.kernel_launcher_daemon -v

By the way, if on onPick function we add an artist to the axes instance it adds it and shows it. Only the standard output isn't shown.
import matplotlib.pyplot as plt

def onPick(event):
    print('here')
    print(event)
    ax.text(5, 5, 'Test Text!')
    plt.draw()

fig, ax = plt.subplots()

ax.scatter([5], [5], s=1000, picker=True)
fig.canvas.mpl_connect('pick_event', onPick)
plt.show()

In the above code I added a text to current axes instance, if you click on the point you will see it, so onPick is called.

I'm sorry for the delay in getting back to you on this issue.
Will be looking into this righ tnow.

I can confirm this doen't work at our end.
Looks like we need to handle some custom messages.

From what I can tell this is now working in VS Code.
Please feel free to re-open this issue or file an new issue.
I believe this was fixed last month as part of the other IPYWidget issues  https://github.com/Microsoft/vscode-jupyter/issues/9503


[FEATURE] Include expression in message when expression evaluation throws an exception

Is your feature request related to a problem?
When evaluating an expression and it throws an exception, the message does not include the expression that failed. A query may contain many expressions, so it can be unclear to the user which expression they need to fix.
What solution would you like?
Include the failing expression or sub expression in the message of the exception that is thrown.
What alternatives have you considered?
Point to the position in the input query where the failing expression is found.
Do you have any additional context?
Example query and error:
SELECT x, ABS(y) FROM test2;
{
  "error": {
    "reason": "Invalid SQL query",
    "details": "invalid to get longValue from value of type ARRAY",
    "type": "ExpressionEvaluationException"
  },
  "status": 400
}

As you can see, it is unclear that the problem is from ABS(y).

[Catch All Triage - 1, 2, 3, 4, 5]


Refresh local storage after nft transfer

when you transfert an nft, if you don't clear the local storage, you still can see it in the Dapp with the wrong Owner information in nft details.
=> Refresh local storage after transfer transfert function

done, refresh from lib


CLOUDP-228583: migrate private endpoints to new Atlas SDK

All Submissions:

[ ] Have you signed our CLA?
[ ] Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if there is one).
[ ] Update docs/release-notes/release-notes.md if your changes should be included in the release notes for the next release.

The e2e test failurs need investigation, I believe they are legit.

privatelink e2e is consistently broken, I bet I have introduced a bug here, investigating.

I have a local reproducer, investigating...

fixed one issue but i am still seeing e2e failures locally.

one more last failure to investigate 😬


Skip file generation if content is the same

Description
When you run graphqlgen (gg) it overrides the files in the generated folder even if the new content is exactly the same as the old one. In some setup, when you have multiple plugins installed on your IDE, this could easily lead into CPU exhaustion as each plugin subscribe to file changes on the OS and will trigger an operation. This feature will skip writing file context if the file already has the exact same content.
Additional context
In my specific setup, I am using TS auto compiler plugin for vscode, which listens to fs events and every time an ts file is changes it will automatically run tsc. when you have multiple scaffold file this is triggering a cascade rundown of tsc, which increase my build time by 2-3 minutes.

#287

#287

In my specific setup, I am using TS auto compiler plugin for vscode, which listens to fs events and every time an ts file is changes it will automatically run tsc. when you have multiple scaffold file this is triggering a cascade rundown of tsc, which increase my build time by 2-3 minutes.

This is a very strong use-case. I would like to prioritize this one.


Compiling test failed with error: size of array ‘altStackMem’ is not an integral constant-expression

GCC version:
gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
CMake version:
cmake version 3.26.0
OS:
Ubuntu 22.04 on WSL2 (Windows 11)
Steps to reproduce:
Attempt the "Compile Tests" section in the README file.
The make command errors out with:
error: size of array ‘altStackMem’ is not an integral constant-expression

I simply replaced the macro SIGSTKSZ with its value 8192 in doctest.hpp, and I could successfully generate and run the tests, but that's not the solution. There are related issues like this, but at least I couldn't find anyone directly addressing and fixing it.

The macro SIGSTKSZ is defined as sysconf (_SC_SIGSTKSZ),  and the function 'sysconf(...) '  isn't an integral constant-expression.


production values for claims

We need to implement production values for claims servers. Let's do the following:
mainnet -> Use the following server: https://wallet.mwc.mw and obey the claimsAvailable flag as documented here: https://github.com/starrymoonlight/mwcairdrop/blob/master/DOC/ClaimsVersion2
https://wallet.mwc.mw/v1/claimsAvailable
testnet -> remains https://seed2.mwc.mw:8443

ok. There will be two setting into config file:
airdrop_url_mainnet  & airdrop_url_testnet


[BUG] Caught exception not defined within a closure

Describe the bug
A caught exception referenced within a closure is not defined within the closure after the except block.
To Reproduce
Code to reproduce the behaviour:
try:
    raise ValueError("I'm an error")
except ValueError as err:
    def print_err():
        print(err)
print_err()
# Traceback (most recent call last):
#   File "bar.py", line 6, in <module>
#     print_err()
#   File "bar.py", line 5, in print_err
#     print(err)
# NameError: name 'err' is not defined

Expected behavior
The error should be defined within the closure.
try:
    raise ValueError("I'm an error")
except ValueError as err:
    def print_err():
        print(err)
print_err()
# I'm an error

Environment (please complete the following information):

OS: macOS
Python version: 3.8.3
Cython version: 0.29.21

Additional context
If the closure is called before exiting the except block the error will be defined, but once called outside of the except block it will again be undefined.

I get NameError: name 'err' is not defined when running in Python 3.8.6 (no Cython). That suggests that the Cython behaviour is right to me.

It's worth pointing out that your example at the global scope won't actually create a closure at all - it just tries to look up a global variable.
If I run it in a function scope (again in pure Python):
def f():
...   try:
...     raise ValueError("I'm an error")
...   except ValueError as err:
...     def print_err():
...       print(err)
...   return print_err
...
>>> f()()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 6, in print_err
NameError: free variable 'err' referenced before assignment in enclosing scope

I get the same behaviour in Cython again.

@da-woods Thank you for the clarification!  I'd expected the function to capture the error, but if this is the defined behavior then my expectations are just wrong. Is there a reference you could point me towards so I can clarify the expected behavior of the language before taking up any contributor time?

https://docs.python.org/3/reference/compound_stmts.html#the-try-statement. Read the bit starting "When an exception has been assigned using as target...". It isn't absolutely clear just from reading that what you'd except to happen to captured variables.
For this type of bug report it's generally a good idea to check what Python does.

Thanks for that information! Sorry, I realize now that I'd confused cpython and cython and had thought that cython was the reference implementation of python. Sorry for taking up your time, but I really appreciate your help!


Respect quadruple time signature & BPM of OST

:+1:

:+1:

Wanneer gaat de animatie nou eindelijk over op een vierkwartsmaat? Merge pls :tired_face:

No PRs have been merged in the last 10 months, maybe we could contact the maintainer to allow more contributors to this project or we might have to consider forking.

The maintainer is indeed blatantly neglecting his responsibilities with regards to the future of this open source project. For this reason, I do side with you, @pnicolai, on the forking notion. Power to the people!!!11

@rickpastoor durf te maintainen

I'm sorry guys. This is a complex project and I have to consider changes like this from all angles. Talked about this change with the board and it got approved just now. Merging right away.
Keep your changes coming.


Alias type for indexing a generic object with with transform breaking change in 4.2+ (2nd issue)

Bug Report

🔎 Search Terms

index generic with alias, alias generic
🕗 Version & Regression Information

This changed between versions 4.1.5 and 4.2.2

Still broken in 4.2.4 and nightly

⏯ Playground Link

Playground link
💻 Code

type ValOf<T> = T[keyof T];

const base = {
  color: "green",
} as const;

function getFromPropsNotShared<MoreProps extends {}>(
  moreProps: MoreProps,
  prop: keyof PropsNotShared<typeof base, MoreProps>
): /**
 * Produces error in typescript 4.2.x but succeeds in 4.1.5
 *
 * As background, succeeds in both if you replace the return type assertion:
 *
 * ValOf<PropsNotShared<typeof base, MoreProps>>
 *
 * with:
 *
 * PropsNotShared<typeof base, MoreProps>[ keyof PropsNotShared<typeof base, MoreProps> ]
 *
 * Which is the issue that I am trying to get at because a) the ValOf<...>
 * version succeeded before, and because it seems to me like they should
 * mean the same thing, because the second expression is just like manually
 * resolving ValOf<...> with the actual expression for T.
 */ ValOf<PropsNotShared<typeof base, MoreProps>> {
  // assertion cuz it's just for checking types.
  const notShared = {} as PropsNotShared<typeof base, MoreProps>;
  return notShared[prop];
}

type PropsNotShared<LHS extends {}, RHS extends {}> = Omit<RHS, keyof LHS> &
  Omit<LHS, keyof RHS>;

// example usage
const len = getFromPropsNotShared({ len: 10 as const }, "len");

🙁 Actual behavior

Says the line return notShared[prop]; in getFromPropsNotShared() is not assignable to the annotated return type. Works if you replace it with a similar annotation manually resolving ValOf. But it worked in 4.1 and it seems to me like the two different return type expressions should mean the same (see comment).
🙂 Expected behavior

Would expect the line return notShared[prop]; to succeed with the ValOf<...> return type on getFromPropsNotShared().

So basically you have a higher-order operation that we happen to know doesn't introduce new values, but TS doesn't really have any way to verify that, so rejects that as a lookup since there's no way to establish the symmetry of those two types. I'm not sure why this ever worked.
Even staring at the code I can't tell what it's trying to accomplish. If you have some examples of what valid/invalid calls to getFromPropsNotShared and what the return types are supposed to be, I can probably give you a definition that works without error.

So basically you have a higher-order operation that we happen to know doesn't introduce new values, but TS doesn't really have any way to verify that, so rejects that as a lookup since there's no way to establish the symmetry of those two types.

@RyanCavanaugh Hmm ValOf? Yes, that makes sense. Thanks!

I'm not sure why this ever worked.
Even staring at the code I can't tell what the sample is trying to accomplish. If you have some examples of what valid/invalid calls to getFromPropsNotShared and what the return types are supposed to be, I can probably give you a definition that works without error.

That would be very helpful!
Here's a longer example which may make more sense:
Description
Basically the Errors class manages an object full of error name keys and whose values are metadata for those errors (error codes, etc). And one is able to add to the common errors or override them in the constructor, and then getError() in a type-safe way.
The similarity is between in the OP type PropsNotShared and in the below type CustomObjectAssign. The expressions are similar enough that they both produce errors when running them through the higher order operation ValOf, specifically when returning from getFromPropsNotShared() in the OP and Errors.getError() below. But I hope the following makes more sense.
⏯ Playground Link
playground
💻 Code
type ValOf<T> = T[keyof T];

type ErrorRecord = Record<string, Error>;

interface Error {
  code: number;
}

/**
 * Any extra errors in the Errors constructor will be added to these, and
 * anything with the same property name will override what's here.
 */
const baseErrors = {
  widgetsNotWidgetyEnough: {
    code: 111,
  },
} as const;

/**
 * Manages a record of combined error names -> codes and other metadata.
 */
export class Errors<ExtraErrors extends ErrorRecord> {
  private _errorRecord: CustomObjectAssign<typeof baseErrors, ExtraErrors>;

  constructor(extraErrors: ExtraErrors) {
    this._errorRecord = customObjectAssign(baseErrors, extraErrors);
  }

  public getError(
    errorName: keyof Errors<ExtraErrors>["_errorRecord"]
  ): ValOf<Errors<ExtraErrors>["_errorRecord"]> {
    /**
     * Gives a type error. (is the main problem).
     */
    return this._errorRecord[errorName];
  }
}

// add some extra errors or override base ones
const errors = new Errors({
  widgetsNotWidgetyEnough: {
    code: 114 as const,
  },
  tooManyDoodads: {
    code: 112 as const,
  },
});

// example usages
const widgetsErr = errors.getError("widgetsNotWidgetyEnough"); // should succeed
const doodadsErr = errors.getError("tooManyDoodads");
const gearsErr = errors.getError("needMoreGears"); // should error because this error name is not in either the common or the extra errors

/**
 * The return type is similar to the built in return type of Object.assign,
 * except that identical properties in the RHS override the LHS instead of
 * producing never. Was made because it's closer to how Object.assign actually
 * works.
 */
function customObjectAssign<Target extends {}, Source extends {}>(
  target: Target,
  source: Source
): CustomObjectAssign<Target, Source> {
  return Object.assign({ ...target }, source) as unknown as CustomObjectAssign<
    Target,
    Source
  >;
}

type CustomObjectAssign<LHS extends {}, RHS extends {}> = Omit<RHS, keyof LHS> &
  {
    [K in keyof LHS]: K extends keyof RHS ? RHS[K] : LHS[K];
  };

@RyanCavanaugh made the issue in OP more specific and fleshed out the types a bit more. Felt like it was different enough to open a new one: #44108

A minimal repo:
type PropsNotShared<LHS extends {}, RHS extends {}> =
  & Omit<RHS, keyof LHS>
  & Omit<LHS, keyof RHS>
;

function test<T>() {
  type T1 = PropsNotShared<{x: 1}, T>;
  type T2 = PropsNotShared<{x: 1}, T>;
  type N1 = T1[keyof T1];
  type N2 = T2[keyof T2];
  var x: N1 = {} as any;
  var y: N2 = {} as any;
  x = y; // <- error here.
}

https://www.typescriptlang.org/play?ts=4.2.3#code/C4TwDgpgBACgTgezAZwHIOAZQBYEM4QAmAPADIASmUEAHsBAHaHJQDeAvgDRQBKl1dRszbsAfFAC8UALAAoKFABkUAPIBbAJbBifTNwDWEEAgBmUCplFyFy9VrKUDR070pXZAbjlyTAVwYAxsAaCAxQ9MjaACqiABQAlGzW4eDQUQCMkrCIKOhYeAQkrDQAXFDpXFAxXvIpkFUATFnwSGgYOPhExMVlFdzVyaD1qJlSGQDahsZmGQC6NQpD0KhNYw2TzjMN88kAbvhQpVAjWRxQuCy4DCALUPtwUCBlK6fs55fXtzRZN1AA9H8oMQALTUOCIB7YCAEAB0cnYQA

A minimal repo:
type PropsNotShared<LHS extends {}, RHS extends {}> =
  & Omit<RHS, keyof LHS>
  & Omit<LHS, keyof RHS>
;

function test<T>() {
  type T1 = PropsNotShared<{x: 1}, T>;
  type T2 = PropsNotShared<{x: 1}, T>;
  type N1 = T1[keyof T1];
  type N2 = T2[keyof T2];
  var x: N1 = {} as any;
  var y: N2 = {} as any;
  x = y; // <- error here.
}

Nice!

Edit:
According to my investigation, this is essentially cause by the use of Conditional Type.
function test<T>() {
  type T3 = T & (T extends any ? {} : {});
  type T4 = T & (T extends any ? {} : {});
  type N3 = T3[keyof T3];
  type N4 = T4[keyof T4];
  var x3: N3 = {} as any;
  var x4: N4 = {} as any;

  x3 = x4; // <- error here.
}

hmm, you think so?
Because you can keep the conditional and it succeeds:
playground
function test<T>() {
  type T3 = (T extends any ? {} : {});
  type T4 = (T extends any ? {} : {});
  type N3 = T3[keyof T3];
  type N4 = T4[keyof T4];
  var x3: N3 = {} as any;
  var x4: N4 = {} as any;

  x3 = x4; // <- no error anymore.
}

...but have just an intersection and it fails again:
playground
function test<T extends {}, U extends {}>() {
  type T3 = T & U;
  type T4 = T & U;
  type N3 = T3[keyof T3];
  type N4 = T4[keyof T4];
  var x3: N3 = {} as any;
  var x4: N4 = {} as any;

  x3 = x4; // <- error here
}

And there's an intersection in the OP too, perhaps it's caused by intersections.

And there's an intersection in the OP too, perhaps it's caused by intersections.

It seems that this is caused by https://github.com/microsoft/TypeScript/pull/30769.
We know keyof (A & B) is (keyof A) | (keyof B), and T[M | N] is T[M] | T[N], so T3[keyof T3] is resolved to T3[keyof T] | T3[keyof U] as expected, when it is in a "read position".
However, when T3[keyof T3] appears in the "write position", it uses an intersection instead of a union, so T3[keyof T3] is resolved to T3[keyof T] & T3[keyof U], which leads to the error.

@whzx5byb Thanks for tracking that down! It's very informative.
Given that, and the more I think about this, I confess that I may have made a mistake. So that PR is saying that when T[K] is on the target side of a type relationship it's the intersection of the types of the values of T. But you know, that makes sense. After all, if all you know about K is that it is any of the keys of T, and any of these T[K] have incompatible types, then it shouldn't be possible to assign to them, right? So in that case an intersection makes never which can't be assigned to.
like in here:
type PropsNotShared<LHS extends {}, RHS extends {}> =
  & Omit<RHS, keyof LHS>
  & Omit<LHS, keyof RHS>
;

function test<T>() {
  type T1 = PropsNotShared<{x: 1}, T>;
  type T2 = PropsNotShared<{x: 1}, T>;
  type N1 = T1[keyof T1];
  type N2 = T2[keyof T2];
  var x: N1 = {} as any;
  var y: N2 = {} as any;
  x = y; // <- error here.
}

All typescript knows about x and y is that they are some value of T1 (or T2 doesn't matter). But all of those values are not neccessarily assignable to each other, hence the error.
In fact, i'm kind've swinging the opposite direction now, and think that it should fail more than it does.
Consider this example which should fail but doesn't.
playground
function test<T>() {
  var x: T[keyof T] = {} as any;
  var y: T[keyof T] = {} as any;
  x = y; // <- should error here, because not all values of T are necessarily assignable to each other
}

The nice thing about PropsNotShared was that it was a longish expression which could be deconstructed by typescript, and so if you were assigning an index of it to another index of it, the target type i.e. intersection of all possible values actually looked to be a different expression than the source type i.e. the union of all possible values. But above, no information is known about T[keyof T] other than that T is a type and it's being indexed by one of it's keys, so perhaps the intersection of all possible values doesn't look any different than their union, and the assignment happens.

@whzx5byb Thanks for tracking that down! It's very informative.
Given that, and the more I think about this, I confess that I may have made a mistake. So that PR is saying that when T[K] is on the target side of a type relationship it's the intersection of the types of the values of T. But you know, that makes sense. After all, if all you know about K is that it is any of the keys of T, and any of these T[K] have incompatible types, then it shouldn't be possible to assign to them, right? So in that case an intersection makes never which can't be assigned to.
like in here:
type PropsNotShared<LHS extends {}, RHS extends {}> =
  & Omit<RHS, keyof LHS>
  & Omit<LHS, keyof RHS>
;

function test<T>() {
  type T1 = PropsNotShared<{x: 1}, T>;
  type T2 = PropsNotShared<{x: 1}, T>;
  type N1 = T1[keyof T1];
  type N2 = T2[keyof T2];
  var x: N1 = {} as any;
  var y: N2 = {} as any;
  x = y; // <- error here.
}

All typescript knows about x and y is that they are some value of T1 (or T2 doesn't matter). But all of those values are not neccessarily assignable to each other, hence the error.
In fact, i'm kind've swinging the opposite direction now, and think that it should fail more than it does.
Consider this example which should fail but doesn't.
playground
function test<T>() {
  var x: T[keyof T] = {} as any;
  var y: T[keyof T] = {} as any;
  x = y; // <- should error here, because not all values of T are necessarily assignable to each other
}

The nice thing about PropsNotShared was that it was a longish expression which could be deconstructed by typescript, and so if you were assigning an index of it to another index of it, the target type i.e. intersection of all possible values actually looked to be a different expression than the source type i.e. the union of all possible values. But above, no information is known about T[keyof T] other than that T is a type and it's being indexed by one of it's keys, so perhaps the intersection of all possible values doesn't look any different than their union, and the assignment happens.

I'd be willing to close this if @whzx5byb doesn't have any more issues.


Trouble installing editable packages from git repos

Issue
I'm having trouble getting pipenv to deal with editable installs from git. I've narrowed down as much as possible for the purposes of this test. There's a repo here with the whole thing for reproducing.
This is the three line requirements.txt I'm using - each line has a slightly different, but apparently valid url scheme. Installing this with pip works fine.
-e git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git@1a5e6040dfeca6b09317401f5bd7a518141c9433#egg=django_admin_list_filter_dropdown
-e git+git@codebasehq.com:hactar/hactar-library/wagtail_eventbrite.git@90bdfc680fc920eed8618d29aefac770d258c359#egg=wagtail_eventbrite
-e git://github.com/miracle2k/webassets.git@cc440911c6ac5f08fd98ea08442fe06e7a0aea2a#egg=webassets

When I run pipenv install I get this output:
requirements.txt found, instead of Pipfile! Converting…
Warning: Your Pipfile now contains pinned versions, if your requirements.txt did.
We recommend updating your Pipfile to specify the "*" version, instead.
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
nv/utils.py", line 285, in actually_resolve_reps
    dep[len('-e '):]
  File "/usr/local/lib/python3.5/dist-packages/pipenv/vendor/pip9/req/req_install.py", line 144, in from_editable
    editable_req, default_vcs)
  File "/usr/local/lib/python3.5/dist-packages/pipenv/vendor/pip9/req/req_install.py", line 1197, in parse_editable
    "Could not detect requirement name, please specify one with #egg="
pip9.exceptions.InstallationError: Could not detect requirement name, please specify one with #egg=

Obviously the Pipfile.lock doesn't get created but the Pipfile does, and that contains this...
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[dev-packages]

[requires]
python_version = "3.5"

[packages]
"4c58dfa" = {path = "git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git@1a5e6040dfeca6b09317401f5bd7a518141c9433", editable = true}
wagtail_eventbrite = {ref = "90bdfc680fc920eed8618d29aefac770d258c359", editable = true, git = "git@codebasehq.com:hactar/hactar-library/wagtail_eventbrite.git"}
webassets = {ref = "cc440911c6ac5f08fd98ea08442fe06e7a0aea2a", editable = true, git = "git://github.com/miracle2k/webassets.git"}

All the #egg= bits have been removed. So I try manually adding them to the Pipfile, relevant lines now look like this:
"4c58dfa" = {path = "git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git@1a5e6040dfeca6b09317401f5bd7a518141c9433#egg=django_admin_list_filter_dropdown", editable = true}
wagtail_eventbrite = {ref = "90bdfc680fc920eed8618d29aefac770d258c359", editable = true, git = "git@codebasehq.com:hactar/hactar-library/wagtail_eventbrite.git#egg=wagtail_eventbrite"}
webassets = {ref = "cc440911c6ac5f08fd98ea08442fe06e7a0aea2a", editable = true, git = "git://github.com/miracle2k/webassets.git#egg=webassets"}

pipenv lock produces this:
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
ges/pipenv/resolver.py", line 63, in resolve
    verbose=verbose,
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/utils.py", line 425, in resolve_deps
    pre,
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/utils.py", line 285, in actually_resolve_reps
    dep[len('-e '):]
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 156, in from_editable
    wheel_cache=wheel_cache)
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 91, in __init__
    "Invalid requirement: '%s'\n%s" % (req, add_msg))
pip9.exceptions.InstallationError: Invalid requirement: 'wagtail_eventbrite@90bdfc680fc920eed8618d29aefac770d258c359#egg=wagtail_eventbrite'
= is not a valid operator. Did you mean == ?

If I try the lines one at a time pipenv lock on just the django_admin_list_filter_dropdown package produces:
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
encies(best_match):
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/patched/piptools/resolver.py", line 275, in _iter_dependencies
    for dependency in self.repository.get_dependencies(ireq):
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/patched/piptools/repositories/pypi.py", line 174, in get_dependencies
    legacy_results = self.get_legacy_dependencies(ireq)
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/patched/piptools/repositories/pypi.py", line 193, in get_legacy_dependencies
    dist = ireq.get_dist()
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 1069, in get_dist
    egg_info = self.egg_info_path('').rstrip('/')
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 515, in egg_info_path
    'No files/directories in %s (from %s)' % (base, filename)
pip9.exceptions.InstallationError: No files/directories in None (from )

The other two both produce the same(ish) error:
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
ges/pipenv/resolver.py", line 63, in resolve
    verbose=verbose,
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/utils.py", line 425, in resolve_deps
    pre,
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/utils.py", line 285, in actually_resolve_reps
    dep[len('-e '):]
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 156, in from_editable
    wheel_cache=wheel_cache)
  File "/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 91, in __init__
    "Invalid requirement: '%s'\n%s" % (req, add_msg))
pip9.exceptions.InstallationError: Invalid requirement: 'wagtail_eventbrite@90bdfc680fc920eed8618d29aefac770d258c359#egg=wagtail_eventbrite'
= is not a valid operator. Did you mean == ?

I don't really understand what I'm doing wrong.
$ python -m pipenv.help output (as run from the venv3 pipenv)
Pipenv version: '11.9.0'
Pipenv location: '/vagrant/test2/venv3/lib/python3.5/site-packages/pipenv'
Python location: '/vagrant/test2/venv3/bin/python'
Other Python installations in PATH:

2.7: /usr/bin/python2.7

2.7: /usr/bin/python2.7

3.5: /usr/bin/python3.5m

3.5: /vagrant/test2/venv3/bin/python3.5

3.5: /usr/bin/python3.5

3.5.2: /vagrant/test2/venv3/bin/python

2.7.12: /usr/bin/python

2.7.12: /usr/bin/python2

3.5.2: /vagrant/test2/venv3/bin/python3

3.5.2: /usr/bin/python3

PEP 508 Information:
{'implementation_name': 'cpython',
 'implementation_version': '3.5.2',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.4.0-87-generic',
 'platform_system': 'Linux',
 'platform_version': '#110-Ubuntu SMP Tue Jul 18 12:55:35 UTC 2017',
 'python_full_version': '3.5.2',
 'python_version': '3.5',
 'sys_platform': 'linux'}

System environment variables:

LESSCLOSE
VIRTUAL_ENV
USER
SSH_AUTH_SOCK
SSH_TTY
SHLVL
PYTHONUNBUFFERED
LS_COLORS
TERM
LANG
OLDPWD
SSH_CLIENT
_
PS1
SSH_CONNECTION
LC_CTYPE
XDG_RUNTIME_DIR
XDG_SESSION_ID
LANGUAGE
PIP_PYTHON_PATH
LESSOPEN
PYTHONDONTWRITEBYTECODE
PATH
SHELL
MAIL
PWD
HOME
LOGNAME

Pipenv–specific environment variables:
Debug–specific environment variables:

PATH: /vagrant/test2/venv3/bin:/home/vagrant/bin:/home/vagrant/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
SHELL: /bin/bash
LANG: en_US.UTF-8
PWD: /vagrant/test2
VIRTUAL_ENV: /vagrant/test2/venv3

Contents of Pipfile ('/vagrant/test2/Pipfile'):
[[source]]
name = "pypi"
verify_ssl = true
url = "https://pypi.python.org/simple"

[requires]
python_version = "3.5"

[dev-packages]

[packages]
"4c58dfa" = {path = "git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git@1a5e6040dfeca6b09317401f5bd7a518141c9433", editable = true}
wagtail_eventbrite = {editable = true, git = "git@codebasehq.com:hactar/hactar-library/wagtail_eventbrite.git", ref = "90bdfc680fc920eed8618d29aefac770d258c359"}
webassets = {editable = true, git = "git://github.com/miracle2k/webassets.git", ref = "cc440911c6ac5f08fd98ea08442fe06e7a0aea2a"}

$ python -m pipenv.help output (called outside a venv with `python3 -m pipenv.help`
Pipenv version: '11.9.0'
Pipenv location: '/usr/local/lib/python3.5/dist-packages/pipenv'
Python location: '/usr/bin/python3'
Other Python installations in PATH:

2.7: /usr/bin/python2.7

2.7: /usr/bin/python2.7

3.5: /usr/bin/python3.5m

3.5: /usr/bin/python3.5

2.7.12: /usr/bin/python

2.7.12: /usr/bin/python2

3.5.2: /usr/bin/python3

PEP 508 Information:
{'implementation_name': 'cpython',
 'implementation_version': '3.5.2',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.4.0-87-generic',
 'platform_system': 'Linux',
 'platform_version': '#110-Ubuntu SMP Tue Jul 18 12:55:35 UTC 2017',
 'python_full_version': '3.5.2',
 'python_version': '3.5',
 'sys_platform': 'linux'}

System environment variables:

LOGNAME
SHELL
LS_COLORS
_
TERM
LESSCLOSE
LANG
SSH_AUTH_SOCK
PATH
USER
SSH_CONNECTION
PS1
OLDPWD
SSH_CLIENT
LESSOPEN
LANGUAGE
PYTHONDONTWRITEBYTECODE
SSH_TTY
PWD
LC_CTYPE
MAIL
XDG_RUNTIME_DIR
SHLVL
XDG_SESSION_ID
PYTHONUNBUFFERED
PIP_PYTHON_PATH
HOME

Pipenv–specific environment variables:
Debug–specific environment variables:

PATH: /home/vagrant/bin:/home/vagrant/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
SHELL: /bin/bash
LANG: en_US.UTF-8
PWD: /vagrant/test1

Contents of Pipfile ('/vagrant/test1/Pipfile'):
[[source]]
name = "pypi"
url = "https://pypi.python.org/simple"
verify_ssl = true

[requires]
python_version = "3.5"

[packages]
"4c58dfa" = {editable = true, path = "git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git@1a5e6040dfeca6b09317401f5bd7a518141c9433"}
wagtail_eventbrite = {git = "git@codebasehq.com:hactar/hactar-library/wagtail_eventbrite.git", editable = true, ref = "90bdfc680fc920eed8618d29aefac770d258c359"}
webassets = {git = "git://github.com/miracle2k/webassets.git", editable = true, ref = "cc440911c6ac5f08fd98ea08442fe06e7a0aea2a"}

[dev-packages]

Expected result
I expected it to install the dependencies and create valid working lines in the Pipfile.
Actual result
It created lines in the Pipfile that cause pipenv lock to break.
Steps to replicate
You can re-create it exactly using the vagrant VM in this repo.

For the first dep, you can replace http by https and that produces
"django_admin_list_filter_dropdown" = {path = "git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git", ref="1a5e6040dfeca6b09317401f5bd7a518141c9433", editable = true}

Secondly, you shouldn't add #egg to the tail of git. egg part is parsed as package name and removed from the URI.

@drcongo adding the #egg= to the path itself won't help you, it gets translated to the name of the package in your pipfile:
[packages]
"4c58dfa" = {path = "git+http://github.com/hactar-is/django-admin-list-filter-dropdown.git@1a5e6040dfeca6b09317401f5bd7a518141c9433", editable = true}

So I can see right away that it's this particular path which as @frostming pointed out, didn't translate properly.  If you used git+https as he mentions the name and ref would be picked up.  git+http:// isn't a valid URL scheme, you need to use https -- and then yes, you can parse out the ref and the name as he already mentioned and your entry will work fine


Most frequent used slash chords added.

Please review. I'll add more chords later on a different branch.

Great contribution @szaza. We can bump the version when you finish adding all the chords you have. Thanks

I just updated the libraries to avoid using old and potentially vulnerable software.
I have made one change from your PR, the "chords/index.js" must return an object and not an array. That's because you can access quickier to the chords of the object. For example: guitar["C"] will return all the chords related to that key in an array.
I have fixed the tests too, found two typos in your chords. These tests help to found common mistakes.

"the 'chords/index.js' must return an object and not an array." - sorry I had to make some conversions, because I'm using your library with TypeScript and it didn't allow to refer to the object attributes as an associative array. Yap, unit tests are very useful!
Thanks for merging my branch, I'm going to add more chords as soon as I'll have some more time ;-)

@szaza I'm going to change the naming of your slash version of the chords. Insted of using AmsF I'm going to use Am_F. This is acceptable in the filesystem and will be easier to recognize them in the rendering.


Docker instructions need fixing

Hi. The example Docker run command needs fixing. It should be something like this:
docker run -d -v /path/to/config.yml:/app/config.yml -p 8080:8080 0rickyy0/certstream-server-go
And the config.yml must be edited to change one of the server ports, otherwise an error is thrown about an occupied port.
Thanks for publishing this code, the standard certstream endpoint is flaky.

Thank you. I addressed both mentioned issues and drafted a new release v1.3.1.


Add LaunchMultiTask rpc interface for executor

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

Sometimes, the scheduler will schedule multiple tasks of the same stage to the same executors. Currently we have to create a task definition for each task, which may not be efficient.
Describe the solution you'd like

For the above case, it's better to provide a LaunchMultiTask rpc interface for the executor so that multiple tasks of the same stage can be just one MultiTaskDefinition to avoid the same plan be copied multiple times. The network io cost can be reduced.
Describe alternatives you've considered

Additional context

@yahoNanJing  I looked into this and just wanted to clarify something. I might be wrong, but looks like the current proto definition allows to send multiple tasks in a single launch task. See line #835
https://github.com/apache/arrow-ballista/blob/2e1f5d619760d3b7acce225a166a9507f9efe9a1/ballista/rust/core/proto/ballista.proto#L833-L837
However in the code, I see the tasks are launched one at a time. See line #427
https://github.com/apache/arrow-ballista/blob/2e1f5d619760d3b7acce225a166a9507f9efe9a1/ballista/rust/scheduler/src/state/task_manager.rs#L425-L429
Can this task be simplified as modifying the for loop in offer_reservation function to group tasks be executor_id and send them in a single launch_task?

Hi @askoa, yes currently we can launch a bunch of tasks in a single grpc request. However, for the same stage, they don't share the information, like execution plan, etc.
I'd like to add something like this.
// A set of tasks in the same stage
message MultiTaskDefinition {
  PartitionIds task_ids = 1;
  bytes plan = 2;
  string session_id = 3;
  repeated KeyValuePair props = 4;
}

Then we can not only reduce the rpc request body size, but also reduce the execution plan deserialization cost.

@yahoNanJing Could you please check the protobuf changes in the draft PR and let me know if it looks okay?

Thanks @askoa. Left some comment on your PR.

@yahoNanJing I just started with protobuf changes and not implemented yet. I'll drop the draft PR. Thanks for letting me know.


Loading a bundle automatically ?

Hi,
I was looking jspm bundle command that allows you to use --inject which modifies the config file rather than having to modify and inject a script tag into the html file.
Its documented here https://github.com/jspm/jspm-cli/blob/master/docs/production-workflows.md
Can this also be done with SystemJS Builder ?
Once I have my bundle or bundles then I wouldn't need to modify my index.html to force loading of the bundles but these can come from the systemjs config file.
Any ideas ?
Thanks

When bundling, output.modules contains the list of modules you'd need to use to create a custom bundles config. This is how jspm does injection in just this one line - https://github.com/jspm/jspm-cli/blob/master/lib/bundle.js#L80.
This should certainly be documented though, I've added it to the list at https://github.com/systemjs/builder/issues/250.

@guybedford The code you pointed out is for jspm-cli. It is working for JSPM, but not for system builder. I checked builder.js for system builder and there is no option for injectConfig (https://github.com/systemjs/builder/blob/master/lib/builder.js#L592). Can we please reopen this?

@randalvance injectConfig is not a SystemJS builder option as SystemJS builder does not write config - it is only an extension to the jspm SystemJS builder extension. To repeat the comment above for how to do a custom injection:
builder.bundle('x').then(function(output) {
  var productionSystemJSConfig = {};
  productionSystemJSConfig.bundles['path/to/bundle.js'] = output.modules;
  saveCustomConfig(productionSystemJSConfig);
});

@guybedford since jspm ignores config and baseURL arguments when bundling there's not really a good way to build a bundle out of anything in a different baseURL folder. Do you think it would make sense to add your above code as part of an inject option in systemjs-builder? Or support reading baseURL from the config in jspm-cli?

@davismj there are two separate baseURL values in jspm - the baseURL in the System config which is used by the browser, and the baseURL in the package.json directories, which is passed by jspm to SystemJS builder when bundling. These should refer to the same underlying path.

Ah, this might be the issue I was having in https://github.com/systemjs/systemjs/issues/1755. Perhaps this is just a documentation issue and I can submit a doc PR?


Pprp

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[ ] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No, no need to refresh for updates in this PR

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of "no breaking changes"
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[ ] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[ ] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

These two models are not referenced and can be removed.
https://github.com/Azure/azure-rest-api-specs/blob/6631b83ff0030bb30ddf0f7c15a689c67d7054f3/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json#L134
and
https://github.com/Azure/azure-rest-api-specs/blob/6631b83ff0030bb30ddf0f7c15a689c67d7054f3/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json#L147

These two models are not referenced and can be removed.
https://github.com/Azure/azure-rest-api-specs/blob/6631b83ff0030bb30ddf0f7c15a689c67d7054f3/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json#L134
and
https://github.com/Azure/azure-rest-api-specs/blob/6631b83ff0030bb30ddf0f7c15a689c67d7054f3/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json#L147

References removed.

@rapatank , let me know when this PR is ready to merge.

Breaking change review is out of scope because this service is not GAed.


ci: Install libelf on macOS

This may have been installed by default previously but now it is not. Without this package integration-ebpf fails to compile properly.

Just opened #884 and then saw this. The true failure is coming from bpf-linker but we're not getting its logs (again).

@dave-tucker @tamird bpf-linker is fixed, but it uses LLVM 18 now. To fix the latest failure, we need to find some way to install LLVM 18 on macOS.

We shouldn't merge this - it doesn't fix anything. We should figure out why we aren't getting errors from bpf-linker.

The first failing job was https://github.com/aya-rs/aya/actions/runs/7896427886/job/21550389236.
What I'm saying is that I don't see the bitcode error there, it's not clear why the job failed from the logs.

Yes, this is exactly what I'm saying: we can't see the actual error.

Nasty! We have the same code in xtask/src/run.rs that we should also fix.

(reminder to update the PR title plz)

Note: Clippy will fail until #885 has merged. We can merge either first, but one will be red (unless I incorporate the clippy fix here too).

Merging to get CI back to green!


Rundown 8.0 can't access the game

Does the mod need to be updated?

如果是因为进游戏第一个弹窗关闭后自动退出游戏而导致进不去游戏，那就根据弹窗的提示去设置目录找到对应Feature的设置，TheArchive设置在AppData/LocalLow里面，把弹窗里指明的属性设为false，然后重启游戏即可。
另外DiscordManager炸了，但是不影响正常游戏。

Try opening up this path in file explorer: %appdata%/../GTFO_TheArchive/SaveData/FeatureSettings/
(paste into the nav bar)
Open the file RundownEightReminder_Settings_RundownEightReminderSettings.json replace false with true, save it and see if that fixes the problem for now.
A friend told me the game crashes/closes after closing the reminder popup but I can't reproduce the issue myself, will probably push an update soon :tm: tho

如果是因为进游戏第一个弹窗关闭后自动退出游戏而导致进不去游戏，那就根据弹窗的提示去设置目录找到对应Feature的设置，TheArchive设置在AppData/LocalLow里面，把弹窗里指明的属性设为false，然后重启游戏即可。 另外DiscordManager炸了，但是不影响正常游戏。

没有见过什么弹窗，进游戏后一直显示正在等待系统资源初始化，我尝试等过十几分钟但是没用。

Try opening up this path in file explorer: %appdata%/../GTFO_TheArchive/SaveData/FeatureSettings/ (paste into the nav bar) Open the file RundownEightReminder_Settings_RundownEightReminderSettings.json replace false with true, save it and see if that fixes the problem for now.
A friend told me the game crashes/closes after closing the reminder popup but I can't reproduce the issue myself, will probably push an update soon ™ tho

It doesn't work, my MelonLoader console has lots of errors!

Could you send me your Latest.log file from within the MelonLoader folder?

Could you send me your Latest.log file from within the MelonLoader folder?

Thanks, I deleted the GTFO_TheArchive folder problem got unlocked, sorry to bother you.


Algorithm Close abnormal

HKube micro-service
This has been shown to @yehiyam
Describe the bug
Algorithm that according to our logs finished successfully, was failed by HKube with close abnormal error.

Still happens?
With new wrapper?

does not accord in test


tests: avoid GHA slowdown from huge single line strings

Possibly fixes, or at least helps, https://github.com/dagger/dagger/issues/7786 by avoiding https://github.com/actions/runner/issues/1031

Hit a separate known flake (python main module missing) but the times in the test runs here seem to align much more closely. I think some difference is expected since there's a little overhead in starting everything (especially testdev), but so far looks good. Will see if that continues to be the case in more runs after merging.


chore: update packages

Description

Additional context

What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[ ] Read the Contributing Guidelines.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

Codecov Report

Merging #251 (7c39591) into master (cfb86d4) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #251   +/-   ##
=======================================
  Coverage   77.62%   77.63%
=======================================
  Files         131      131
  Lines       12356    12356
  Branches     1324     1327    +3
=======================================
+ Hits         9591     9592    +1
+ Misses       2765     2764    -1

Flag
Coverage Δ

unittests
77.63% <ø> (+<0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

packages/lib/components/tags/tags.tsx
98.95% <0.00%> (+0.52%)
:arrow_up:

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


Update dotnet  from 6.0 to 8.0

Update dotnet version from 6.0 to 8.0, latest LTS version at this time.
Signed-off-by: Alex Popescu<EMAIL_ADDRESS>

@popalex thanks for the contribution, could you please sign off the commit - https://github.com/devfile/developer-images/pull/171/checks?check_run_id=24622985445

done.

@popalex thanks for the contribution, could you please sign off the commit - https://github.com/devfile/developer-images/pull/171/checks?check_run_id=24622985445 @svor are we good to bump the .net version?

@ibuziuk changes are good to me. Only the problem with image build: https://github.com/devfile/developer-images/actions/runs/8966779944/job/24670229942?pr=171, but I don't think it's related to the current changes

@musienko-maxim could you please take a look at why the PR check is failing ?

the build fails because of https://github.com/eclipse-che/che/issues/22957

@popalex could you please rebase your PR to pick up the latest changes from main branch, they contain the fix of image build problem

ebase your PR to pick up the latest changes from main branch

Done I think.


Full and Light share database

The following doesn't work:
$ cargo run --release \-- --name niklasad1
$ cargo run --release \-- --name niklasad1 --light
Error: Error(Client(Backend("Unexpected database type. Expected: light")), State { next_error: None, backtrace: InternalBacktrace { backtrace: None } })

This makes it impossible to sync light and full on the same chain without removing the database?!

cc @arkpar / @svyatonik

Should we do it the same way as parity-ethereum and have two different databases?

We are having this issue while implementing our desktop node client. Our solution is use --base-path to make sure full mode and light mode are not having a same base path. But it will be better if Substrate can handle this logic.


Plugin conflicts with theme's Bootstrap

This line will force a theme's Bootstrap to not load in.
I believe that this line needs to be loaded in after Bootstrap, but a theme may or may not have Bootstrap.
Change the priority of wp_enqueue_scripts on this line to load all of this plugin's files after MOST themes.

See this SO question


bug(batch): distributed query holds hummock version/snapshot for long time

Describe the bug
We observer both min version and min snapshot being stuck for days, co-occurrence with distributed_running_query_num change. Is it just very slow query, or something wrong with the execution?

To Reproduce
No response
Expected behavior
No response
Additional context
No response

In the log we see risingwave_frontend::scheduler::hummock_snapshot_manager: Unpin epoch ??? with RPC where ??? is the stuck min pin epoch shown in dashboard, meanwhile we don't see Request meta to unpin snapshot failed. 🤔
tracing::info!("Unpin epoch {:?} with RPC", min_epoch);
match meta_client.unpin_snapshot_before(min_epoch).await {
    Ok(()) => last_unpin_epoch.store(min_epoch, Ordering::Release),
    Err(e) => error!("Request meta to unpin snapshot failed {:?}!", e),
}

We do observe indication of batch task leaked in compute node: the running task num is not zero in compute node, while the query num is zero according to frontend.

this may cause pinning of hummock version?

Discussed offline. #9848

#9953

We encounter another unexpected pinned version by compute node:

A long running batch query held hummock version. That's expected.

We restarted frontend, which subsequently finished batch heartbeat workers in compute nodes. That's expected.

However, although cancel_task had been called by heartbeat workers, the compute node still held the hummock version. That's unexpected.

Worker 144004 type COMPUTE_NODE min_pinned_version_id 5592335
Worker 145005 type COMPUTE_NODE min_pinned_version_id 5592660

@liurenjie1024 @ZENOTME Let's dig into this.

So this means that SeqScanExecutor not dropped? You can add some logs in it to see if it's dropped.

Did some investigation with no clue. Add https://github.com/risingwavelabs/risingwave/pull/13589 to make the metrics to be more accurate to see if it's really caused by mpp task.

Some more hints:

The metrics shows that there is a long running mpp query, but it can't be detected by show process list (they have 3 fe nodes), I think this maybe possible
The query lasted for 5 hours

No occurrence recently after introducing statement_timeout.


ci(Mergify): configuration update

This change has been made by @Dpalazue from https://mergify.io config editor.

Nice


HERACLES-38: Update export exclusions for Phone Call Follow-up

In HERACLES-4: (Implement Phone Call Follow-up form feedback) we updated many question and section names at the client’s request, however these changes were not reflected in the field exclusions, originally implemented in CARDS-2427.
This PR updates the exclusions based on the new questionnaire structure.

One minor thing/question out of scope of this PR: Should we be exporting hidden fields?

Hidden fields should be exported by default. In prems for example, we have hidden reference questions in the survey forms with the sole purpose of including that information in the weekly exports along with the survey answers.
However, it looks like this one is a utility field and should be excluded explicitly in the configuration. Are there any others in this form?

However, it looks like this one is a utility field and should be excluded explicitly in the configuration. Are there any others in this form?

No. The other two utility fields are already excluded.


documentation, vDataFrame[].apply

Hello,
There is an error in the documentation of vDataFrame[].apply. Parameter "copy" doesn't exist. If we enter a value for "copy_name" parameter, a copy will be created.

Regards,
Alexandre

Thanks for reporting this, the doc will be soon updated.


[Bug] Incorrect ARIA for Navigation Menu Items in fast-tooling

The following bug was found during an automated accessibility scan using Accessibility Insights for web.
aria-valid-attr-value: Ensures all ARIA attributes have valid values
Navigation Menu Items include an attribute of aria-controls which is pointing to an ID which does not exist.
What behavior did you expect?
aria-controls is used only when needed and correlates to an ID on the document.

Closing in favor of deprecating the Navigation Menu, see https://github.com/microsoft/fast/issues/4501 and https://github.com/microsoft/fast-tooling/issues/55


Make allocation tests produce more stable results

Make allocation tests produce more stable results
Motivation:
Allocation tests are very hard to use productively if they don't produce stable results.
Modifications:
Change TCP and UDP connection tests to monitor on the server side as well as the client side to make sure all data is completely send and received before stopping counting allocations.
Result:
Allocation tests are more stable than before.

@swift-nio-bot test this please

Allocations seem stable for these two tests (I actually don't think the UDP one had a problem before hand but feels like to keep them vaguely synchronised.

@swift-nio-bot test this please

@glbrntt I have made the changes you suggested.

@swift-nio-bot test this please


Text Classification Customized Dataset

TODO: need to implement customized dataset for NLP
some prototype we can use:
https://github.com/awslabs/autogluon/blob/master/autogluon/task/text_classification/dataset.py#L109

@Innixma Excuse me, do you support the case of Chinese data set?

@Innixma Excuse me, do you support the case of Chinese data set?

At present for Tabular, a Chinese data set for text will not work well due to the lack of space characters to generate ngrams with. In regards to the text classification module, @cgraywang can you answer this?

@Innixma do you support customized dataset for text classification now?

@Innixma do you support customized dataset for text classification now?

We will once #556 is merged, which is a full overhaul to the TextClassification task.

Easy usage of custom text datasets has been addressed in:  https://github.com/awslabs/autogluon/pull/556


Typo "Jupyter notebook"→"Jupyter Notebook"

https://docs.microsoft.com/en-us/azure/azure-maps/weather-service-tutorial

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


ParserException in XML.php line 33: Failed To Parse XML

I'm getting a ParserException on xml with line breaks. If all xml is on one line there is no problem. Do I need to prepare xml with line breaks somehow? Or is this a bug?

Duplicate of Issue #34...


Failed to compile: SyntaxError: unknown: Unterminated JSX contents (21:16)

Bug Report
Describe the bug
When I use string template as props and the multiline texts contains empty line, it will cause compile errors.
To Reproduce
<SomeOfComponent someProps={`
line 1
line 2
line 4
`}>
An empty line between line 2 and line 4.
Uncaught Error: Module build failed (from ./node_modules/@mdx-js/loader/index.js):
SyntaxError: unknown: Unterminated JSX contents (21:16)

This error spwns for me too, when just first installing and running the

yarn docz dev

ERROR #11321  PLUGIN and then some issues with HTML closing tags etc.
(SyntaxError: unknown: Expected corresponding JSX closing tag for).
Any ideas?


Change Featured Showing From Week to Day

Show featured services daily.

Featured services are changed to be daily.


Add static type checking with MyPy

Overview
This PR sets up static type checking with MyPy as part of the CI/CD.

The same tests failing on #161 are still failing. I have no idea why, everything passes locally on macOS. The mypy checks pass those, so I am going to merge this.


spec: extend Type assertions section

Today I stubled upon this issue and I was hoping to find, in the reference doc, more examples of type assertions on pointer types but, unfortunately, there seems to be none.
Would it make sense to extend the current Type assertions section with this?
(BTW I'm a Go newbie so apologies in advance if I missed something in the existing doc!)

I'm not sure quite what you are suggesting.  The blog post looks right, but it's not saying anything that the language spec doesn't already say, albeit tersely.  The language spec already says that the type must be identical.  Do you think we should just add a couple more examples?

@ianlancetaylor thanks for your prompt reply! :)

The blog post looks right, but it's not saying anything that the language spec doesn't already say, albeit tersely. The language spec already says that the type must be identical.

I agree, the information is there but, as you said, it is probably packed in a way not easily understandable, especially for Go newbie like me (I'm also coming from a Java background and that doesn't help for sure). As additional context, before being bitten by the mentioned issue (i.e. impossible type assertion), I did read the type assertions section before but TBH I didn't realise at all that type assertions on pointer types were even a thing (again, probably it's just me).

Do you think we should just add a couple more examples?

My suggestion would be to add at least one example of type assertion involving a pointer type and, if possible, put in words the subtle difference between pointer vs non-pointer type assertion.

To be clear, I don't think there is any difference between pointer and non-pointer type assertion.  An interface value holds a value of some type.  That type can be a pointer type or a non-pointer type.  Type assertions work exactly the same way.
But I think it would be reasonable to add an example to the language spec of a type assertion to a pointer type.  Leaving for @griesemer to decide.

What @ianlancetaylor said. I think the blog is at least confusing when it says "keep in mind that a pointer to a type is not the same as the type itself". It seems to imply that this is unusual behavior, which it is not.
I suspect the confusion comes from not being intimately familiar with the notion of a pointer type, which is understandable when coming from "pointer-less" types such as Java or JavaScript (never mind that these languages use pointers everywhere under the covers but try to hide that, which leads to other confusions).
I've reread the spec section on type assertions and it seems pretty clear. It talks in general terms about a type T and refers to the notion of type identity. Thus, to understand this one needs to understand (read) the section on types and type identity. The latter section makes it clear that a pointer type *T and its base type T are different. So adding more prose seems not justified here; in general the spec is written pretty concisely and we avoid restating things that are being said elsewhere.
Leaving open in case somebody wants to suggest a good pointer example. Send any such CL to me. Thanks.


trackback issue (stuffs b4 trackback included too)

I am not sure if this problem is related or not to the trackback, but harvest just doesnt work. pm works fine, but when I click harvest, gradio shows an error (as usual with long harvests), but it never creates a gradio folder in the TEMP folder. This means- i can not access the audio it generated, if it even did in the first place.
Successfully installed Pillow-10.0.0 faiss-cpu-1.7.2 functorch-2.0.0 json5-0.9.14 librosa-0.9.2 llvmlite-0.39.0 numpy-1.23.5 praat-parselmouth-0.4.3 protobuf-4.23.4 pyworld-0.3.2 resampy-0.4.2 scipy-1.9.3 tabulate-0.9.0 tensorboard-plugin-wit-1.8.1 tensorboardX-2.6.1 torchgen-0.0.1
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
WARNING: The following packages were previously imported in this runtime:
[PIL,numpy]
You must restart the runtime in order to use newly installed versions.
/content/Retrieval-based-Voice-Conversion-WebUI
Use Language: en_US
2023-07-19 14:44:11.558877: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 AVX512F FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-07-19 14:44:12.520409: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
Running on local URL:
Running on public URL:
This share link expires in 72 hours. For free permanent hosting and GPU upgrades, run gradio deploy from Terminal to deploy to Spaces (https://huggingface.co/spaces)
loading weights/l.pth
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/gradio/routes.py", line 439, in run_predict
output = await app.get_blocks().process_api(
File "/usr/local/lib/python3.10/dist-packages/gradio/blocks.py", line 1389, in process_api
result = await self.call_function(
File "/usr/local/lib/python3.10/dist-packages/gradio/blocks.py", line 1094, in call_function
prediction = await anyio.to_thread.run_sync(
File "/usr/local/lib/python3.10/dist-packages/anyio/to_thread.py", line 33, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
File "/usr/local/lib/python3.10/dist-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread
return await future
File "/usr/local/lib/python3.10/dist-packages/anyio/_backends/_asyncio.py", line 807, in run
result = context.run(func, *args)
File "/usr/local/lib/python3.10/dist-packages/gradio/utils.py", line 704, in wrapper
response = f(*args, **kwargs)
File "/content/Retrieval-based-Voice-Conversion-WebUI/infer-web.py", line 336, in get_vc
cpt = torch.load(person, map_location="cpu")
File "/usr/local/lib/python3.10/dist-packages/torch/serialization.py", line 797, in load
with _open_zipfile_reader(opened_file) as opened_zipfile:
File "/usr/local/lib/python3.10/dist-packages/torch/serialization.py", line 283, in init
super().init(torch._C.PyTorchFileReader(name_or_buffer))
RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory
2023-07-19 14:45:24 | INFO | httpx | HTTP Request: POST http://<IP_ADDRESS>:7860/api/predict "HTTP/1.1 500 Internal Server Error"
2023-07-19 14:45:24 | INFO | httpx | HTTP Request: POST http://<IP_ADDRESS>:7860/reset "HTTP/1.1 200 OK"
2023-07-19 14:50:17 | INFO | fairseq.tasks.hubert_pretraining | current directory is /content/Retrieval-based-Voice-Conversion-WebUI
2023-07-19 14:50:17 | INFO | fairseq.tasks.hubert_pretraining | HubertPretrainingTask Config {'_name': 'hubert_pretraining', 'data': 'metadata', 'fine_tuning': False, 'labels': ['km'], 'label_dir': 'label', 'label_rate': 50.0, 'sample_rate': 16000, 'normalize': False, 'enable_padding': False, 'max_keep_size': None, 'max_sample_size': 250000, 'min_sample_size': 32000, 'single_target': False, 'random_crop': True, 'pad_audio': False}
2023-07-19 14:50:17 | INFO | fairseq.models.hubert.hubert | HubertModel Config: {'_name': 'hubert', 'label_rate': 50.0, 'extractor_mode': default, 'encoder_layers': 12, 'encoder_embed_dim': 768, 'encoder_ffn_embed_dim': 3072, 'encoder_attention_heads': 12, 'activation_fn': gelu, 'layer_type': transformer, 'dropout': 0.1, 'attention_dropout': 0.1, 'activation_dropout': 0.0, 'encoder_layerdrop': 0.05, 'dropout_input': 0.1, 'dropout_features': 0.1, 'final_dim': 256, 'untie_final_proj': True, 'layer_norm_first': False, 'conv_feature_layers': '[(512,10,5)] + [(512,3,2)] * 4 + [(512,2,2)] * 2', 'conv_bias': False, 'logit_temp': 0.1, 'target_glu': False, 'feature_grad_mult': 0.1, 'mask_length': 10, 'mask_prob': 0.8, 'mask_selection': static, 'mask_other': 0.0, 'no_mask_overlap': False, 'mask_min_space': 1, 'mask_channel_length': 10, 'mask_channel_prob': 0.0, 'mask_channel_selection': static, 'mask_channel_other': 0.0, 'no_mask_channel_overlap': False, 'mask_channel_min_space': 1, 'conv_pos': 128, 'conv_pos_groups': 16, 'latent_temp': [2.0, 0.5, 0.999995], 'skip_masked': False, 'skip_nomask': False, 'checkpoint_activations': False, 'required_seq_len_multiple': 2, 'depthwise_conv_kernel_size': 31, 'attn_type': '', 'pos_enc_type': 'abs', 'fp16': False}
Traceback (most recent call last):
File "/content/Retrieval-based-Voice-Conversion-WebUI/infer-web.py", line 146, in vc_single
if_f0 = cpt.get("f0", 1)
NameError: name 'cpt' is not defined
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/gradio/routes.py", line 439, in run_predict
output = await app.get_blocks().process_api(
File "/usr/local/lib/python3.10/dist-packages/gradio/blocks.py", line 1392, in process_api
data = self.postprocess_data(fn_index, result["prediction"], state)
File "/usr/local/lib/python3.10/dist-packages/gradio/blocks.py", line 1326, in postprocess_data
prediction_value = block.postprocess(prediction_value)
File "/usr/local/lib/python3.10/dist-packages/gradio/components/audio.py", line 329, in postprocess
file_path = self.audio_to_temp_file(
File "/usr/local/lib/python3.10/dist-packages/gradio/components/base.py", line 327, in audio_to_temp_file
temp_dir = Path(dir) / self.hash_bytes(data.tobytes())
AttributeError: 'NoneType' object has no attribute 'tobytes'

I have same problem


Stopped client from sending null values in analog poll creation

Closes #1546

Please note the following: Currently in the client analogous polls won't automatically update after editing their values. I've created a new issue for this (Issue #1547).
This means that during testing, if you edit a poll you will have to reload the page to see the changes

TIL: You can approve PRs multiple times


Could not create ISO

I was able to download the "creatingISO_17763.346_en-us_arm64_Professional.cmd" file but was not able to execute it.
after it downloads a bunch of files, the screen clears and I get an error that says: "Error work script.".
Am I leaving something out?
(I have downloaded to script file to c:\temp\WindowsARM folder)

I am having the same problem, and was about to log this here, when I found this closed ticket. Maybe the process for getting the ARM image is no longer working?


fix(tag): shape rounded fixed in intranet theme

Сброшена темизация скругления в теме intranet для  shape: rounded

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.974%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
7652

Relevant Lines:
8688

💛  - Coveralls


Glade doesn't work

I install glade using nix-env -i glade.
Log:
$ glade
** (glade:3308): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files

(glade:3308): GLib-GObject-WARNING **: The property GtkWidget:margin-left is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkButton:xalign is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkButton:use-stock is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkSettings:gtk-button-images is deprecated and shouldn't be used anymore. It will be removed in a future version.
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

(glade:3308): GLib-GObject-WARNING **: The property GtkSettings:gtk-menu-images is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkImage:stock is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkWidget:margin-right is deprecated and shouldn't be used anymore. It will be removed in a future version.
GladeUI-Message: No DevHelp installed on your system, devhelp feature will be disabled.
GladeUI-Message: 20 missing displayable value for GtkWidget::AtkObject::accessible-role
GladeUI-Message: 1 missing displayable value for GtkButtonBox::layout-style
GladeUI-Message: 1 missing displayable value for GtkScrolledWindow::hscrollbar-policy
GladeUI-Message: 4 missing displayable value for GtkAboutDialog::license-type
GladeUI-Message: Glade needs artwork; a default icon will be used for the following classes:
	GtkApplicationWindow	needs an icon named 'widget-gtk-applicationwindow'

(glade:3308): GLib-GObject-WARNING **: cannot register existing type 'GtkOffscreenWindow'

(glade:3308): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

(glade:3308): GLib-GObject-WARNING **: The property GtkCellRendererPixbuf:stock-id is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkWidget:double-buffered is deprecated and shouldn't be used anymore. It will be removed in a future version.

(glade:3308): GLib-GObject-WARNING **: The property GtkWindow:has-resize-grip is deprecated and shouldn't be used anymore. It will be removed in a future version.
[1]    3308 terminated  glade

cc @lethalman @geerds

Confirming...

After a few attempts, glade now seems to work fine. So I'm not able to reproduce it anymore. I've no idea what was causing that UI lock...

Ok it happened again...............

(triage) Doesn’t seem to be an issue anymore, with gnome3.glade.


Title claims having APIs for every game, but I don't see any for Valorant

Funny.

I believe I'm gonna have to report this to Riot and GitHub as this is clearly false advertising.


#114 Add default parameter to auto-generated scss tokens

Coverage remained the same at 69.554% when pulling a8913721d0cc92e913f766449e5b80c411e092f8 on ESDS-114--add-default-to-tokens into fa1d0d63dcaa5259fbd72e869553bcd9d8822b9e on master.

Coverage remained the same at 69.554% when pulling a8913721d0cc92e913f766449e5b80c411e092f8 on ESDS-114--add-default-to-tokens into fa1d0d63dcaa5259fbd72e869553bcd9d8822b9e on master.


The trait bound bevy_xpbd_3d::components::Position: bevy::prelude::Component is not satisfied

When using xpbd and bevy as crates, if I use a local bevy repository (by using path = "../bevy" in Cargo.toml), the compiler complains about
the trait `bevy::prelude::Component` is not implemented for `bevy_xpbd_3d::components::Position`

Any advice?

Yeah this is most likely just a version mismatch issue that can be fixed via patches and/or forks. Further discussion probably makes more sense here: https://github.com/bevyengine/bevy/discussions/9869


Add function, source and line number to log messages

Remove previous revisions - WIP

@sbernheim The tracing in and out of each function is not designed to replace stack traces, is designed to help with debugging
Would you prefer if I renamed the utility package, logutils and moved the file utility functions to a fileutils package?

The tracing in and out of functions allows a developers to follow the path taken when investigating issues and is only enabled at highest level of tracing


Price proof: convert images to webp before upload ?

Story
In the Open Prices project we've been discussing the idea to convert as much of our images to webp. Why ? No quality impact, but a big size impact (factor of 5-7), all the seconds reduced to upload an image to the server.
This conversion is already done in the web app - prices.openfoodfacts.org.
What about doing it in the mobile app ?
Especially if we want to seperate the "proof upload" and "price upload" actions, and have the proof uploaded as soon as possible so that the server can return the "predictions" (proof type, price/product/location extraction...)
Linked to https://github.com/openfoodfacts/open-prices/issues/577

In the Open Prices project we've been discussing the idea to convert as much of our images to webp. Why ? No quality impact, but a big size impact (factor of 5-7), all the seconds reduced to upload an image to the server.

Could be done on the server side when receiving the image file, right?

This conversion is already done in the web app - prices.openfoodfacts.org. What about doing it in the mobile app ?

flutter is not very good converting images: something like slow actions that freeze the app.

Especially if we want to seperate the "proof upload" and "price upload" actions, and have the proof uploaded as soon as possible so that the server can return the "predictions" (proof type, price/product/location extraction...)

That would mean discarding the offline mode. Or maintaining both online and offline mode. What's supposed to happen with slow connectivity?

Could be done on the server side when receiving the image file, right?

The idea is to have both. But if done on the mobile, users would send a ~1MB image, instead of a 10MB image. Good for slow connectivity, no ?

flutter is not very good converting images: something like slow actions that freeze the app.

I'm no expert, but we do background tasks already in the mobile app, we want to put some AI, so an image conversion shouldn't be that hard ?

@raphodn Which compression rate do you use for your webp conversions?

@raphodn Which compression rate do you use for your webp conversions?

In the web app I use compressor.js
The only settings activated are:

checkOrientation: true (default)
retainExif: true
mimeType: 'image/webp'

Reading the doc, the default quality is 0.8 for webp. I could put it to 1 and test.

@raphodn Things don't look that good in https://pub.dev/packages/flutter_image_compress#webp

Webp
Support android by the system api (speed very nice). The library also supports iOS. However, we're using third-party libraries, it is not recommended due to encoding speed. In the future, libwebp by google (C/C++) may be used to do coding work, bypassing other three-party libraries, but there are no plan for that currently.

Looks like a no-go for iOS: it would freeze the app (and for no apparent reason for the user as it's in background tasks).
Of course we could use webp for android and jpeg for ios, but that would add confusion to the code for a limited added value (on the Smoothie side at least).
That said, I've just noted that our current quality factor for JPEG is... 100 (percents I guess).
Lowering it down to 80% could be an easy win, wouldn't it?

@raphodn I've run some tests around quality and compress format on an android device, regarding size in bytes:

x
jpeg
webp

quality 80
692,881
269,730

quality 100
2,633,929
4,820,580

Given that using webp in flutter would be problematic, as explained earlier, an easy win would be to lower the quality of compression from 100 to 80 for prices proofs.
The size of Smoothie proof images would be divided by 3.
What do you think about it?

Thanks for the tests and the images !
I tried in the frontend using the current compressjs library, and doing the same thing (conversion to JPG 80%). Results here. The output size is 2x webp, but still a factor or 4-5 compared to the original image. And it retains EXIF.

@raphodn @raphael0202

when the image isn't cropped, we currently send it "as-is", no compression
=> we probably keep the EXIF but I'd have to double-check that
=> we may find it useful to compress it (more heavy computation on the device but less data to send), and there's a "keepExif" parameter (currently set to false)
when the image is cropped, I don't know the standards but it would be strange if all EXIFs were supposed to be kept.
had a look at EXIF packages in flutter, and apparently it's much safer (and more often possible) to read EXIF that to write them
=> wouldn't we be better off reading specific EXIF (e.g. GPS, date) and possibly passing them to the server (or keeping them locally for the "add price/proof" page)?
=> you would be able to keep your webp format without additional tap dancing with jpeg and EXIF


otlp grpc exporter creating Insecure connection by default

Please answer these questions before submitting a bug report.
What version of OpenTelemetry are you using?
latest - 0.25.0
According to the specification for otlp, exporter should honor the following environment variables:
OTEL_EXPORTER_OTLP_INSECURE
OTEL_EXPORTER_OTLP_SPAN_INSECURE
OTEL_EXPORTER_OTLP_METRIC_INSECURE

Which has a default of false - e.g. when the environment variables are not set to true, a secure connection should be used.
The current implementation does not honor these environment variables, and unlike the spec - creates insecure connection by default.
In addition, it looks like other environment variables should be used to create the connections: Certificate File variables, Headers variables, Compression and maybe more.

Not sure how we should default to secure connection when it requires user to config certificates, that means the exporter just doesn't work out of the box ?

Not sure how we should default to secure connection when it requires user to config certificates, that means the exporter just doesn't work out of the box ?

Secure connection does not require user to configure certificate, it means you open a TLS channel to the server and the client verify server certificate with the root ca certificate that is installed on the OS. If the client chooses to, he can set a custom root certificate using OTEL_EXPORTER_OTLP_CERTIFICATE variable, but that's optional in the grpc api

Secure connection does not require user to configure certificate, it means you open a TLS channel to the server and the client verify server certificate with the root ca certificate that is installed on the OS

I know that but i would expect people to use the collector exporter in a internal network, not to send data across the internet. Thats why the default URL is localhost, if you deploy a local exporter on every node it will work out the box.
I guess that was discussed at the spec level, but improving an use case while deteriorating another seems weird, thats just my 2 cent.

Secure connection does not require user to configure certificate, it means you open a TLS channel to the server and the client verify server certificate with the root ca certificate that is installed on the OS

I know that but i would expect people to use the collector exporter in a internal network, not to send data across the internet. Thats why the default URL is localhost, if you deploy a local exporter on every node it will work out the box.

The default URL is also set as secured in the spec: https://localhost:4317.
You are right that if someone is using a collector in an internal network that doesn't use a secure connection, he will have to set OTEL_EXPORTER_OTLP_INSECURE=1 for his setup to work.
I guess that the default secure connection was chosen for security reasons, to make it harder for users to send unencrypted data when they don't mean to.

I guess that was discussed at the spec level, but improving an use case while deteriorating another seems weird, thats just my 2 cent.

I don't know the history. Maybe it's worth validating this case again in the spec repo before implementing.
Python's otlp grpc exporter is also ignoring this env variable but is checking the URL scheme to derive proper secure connection decision. It does honor the OTEL_EXPORTER_OTLP_CERTIFICATE for the creation of the secure channel.
Looks like java is doing the same as python - checking the scheme and using it for a decision about secure channel.

IMO if spec says default should be secure we should do that. Discussions around insecure by default should happen in spec repo not here unless there is a language-specific extenuating circumstance, which I do not believe there is.

We should consider addressing this issue before releasing the exporter as stable, as changing it later might be a breaking change for users.
Just for reference, what other SDKs are doing:

ruby is using https and the new port: https://github.com/open-telemetry/opentelemetry-ruby/blob/46020cc0ab9826b362854a6a913f30996ac528a2/exporter/otlp/lib/opentelemetry/exporter/otlp/exporter.rb#L47
python is using http and the old port: https://github.com/open-telemetry/opentelemetry-python/blob/d8bebdd5f7c3f08dd565a71be5d84c5ab500c32b/exporter/opentelemetry-exporter-otlp-proto-http/src/opentelemetry/exporter/otlp/proto/http/trace_exporter/init.py#L50
java is using http with the new port: https://github.com/open-telemetry/opentelemetry-java/blob/96b7895173e8a30c319f44b38a68523d5d95fffe/exporters/otlp/trace/src/main/java/io/opentelemetry/exporter/otlp/trace/OtlpGrpcSpanExporterBuilder.java#L28

Since it looks more useful to use default of http instead of https, I am ok with keeping it.
The thing we do need to add is the missing environment variables which are currently not being used:
OTEL_EXPORTER_OTLP_INSECURE, OTEL_EXPORTER_OTLP_SPAN_INSECURE, OTEL_EXPORTER_OTLP_METRIC_INSECURE
OTEL_EXPORTER_OTLP_CERTIFICATE, OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE, OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE
OTEL_EXPORTER_OTLP_COMPRESSION, OTEL_EXPORTER_OTLP_TRACES_COMPRESSION, OTEL_EXPORTER_OTLP_METRICS_COMPRESSION
OTEL_EXPORTER_OTLP_TIMEOUT, OTEL_EXPORTER_OTLP_TRACES_TIMEOUT, OTEL_EXPORTER_OTLP_METRICS_TIMEOUT

Not sure if it's a blocker for stable release or not...

We should consider addressing this issue before releasing the exporter as stable, as changing it later might be a breaking change for users.
Just for reference, what other SDKs are doing:

ruby is using https and the new port<EMAIL_ADDRESS>python is using http and the old port<EMAIL_ADDRESS>java is using http with the new port<EMAIL_ADDRESS>
Since it looks more useful to use default of http instead of https, I am ok with keeping it.
The thing we do need to add is the missing environment variables which are currently not being used:
OTEL_EXPORTER_OTLP_INSECURE, OTEL_EXPORTER_OTLP_SPAN_INSECURE, OTEL_EXPORTER_OTLP_METRIC_INSECURE
OTEL_EXPORTER_OTLP_CERTIFICATE, OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE, OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE
OTEL_EXPORTER_OTLP_COMPRESSION, OTEL_EXPORTER_OTLP_TRACES_COMPRESSION, OTEL_EXPORTER_OTLP_METRICS_COMPRESSION
OTEL_EXPORTER_OTLP_TIMEOUT, OTEL_EXPORTER_OTLP_TRACES_TIMEOUT, OTEL_EXPORTER_OTLP_METRICS_TIMEOUT

Not sure if it's a blocker for stable release or not...

We should probably at least create a spec issue so they know the inconsistency is there in already released 1.0 packages. I'll go ahead and do that.

We should probably at least create a spec issue so they know the inconsistency is there in already released 1.0 packages. I'll go ahead and do that.

Great, Thank you

I see now that your research came up with http being the spec default now. Thanks for that finding :)
I am closing the issue, and opening a different one for the missing environment variables

Created an issue for ruby https://github.com/open-telemetry/opentelemetry-ruby/issues/1078
Java is actually correct. That is the gRPC exporter. Python is also correct.


An option description can be located after a new line.

Sometimes if an option is too long, it looks better when its description starts on a new line.
This behaviour is supported by the current implementation (intentionally or unintentionally), the commit secures this fact, so it can be safely ported into re-implementations (I am especially interested in C++ version).

I think this is a great test case. The Python parser passes this, but the C++ one I wrote does not! Adding this will help me fix this bug in the C++ one (which I do think is a bug).

Thanks for support!

Any update on whether this patch can be merged? It's been oustanding for 18 months or so.


Fix exports of package to allow including in node module project

Resolves: #896

Currently the package can not be imported in a type="module" node project (ESM) because the floating-vue package has no type set, so it is a commonjs project. Therefor all .js files are interpreted as commonjs and importing fails with:
SyntaxError: Named export 'Dropdown' not found. The requested module 'floating-vue' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:

This is fixed by changing the file extension for ESM files and using correct package exports instead of never officially supported module entry point.

replaced by #937


PPBFaceEvaluator : ValueError: too many values to unpack

Hi,
in Lab2, in the beginning of part 2. When i called PPBFaceEvaluator. I got error like below
**---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 ppb = util.PPBFaceEvaluator() #create dataset handler
~\Python\introtodeeplearning_labs\lab2\util.py in init(self, skip)
72         with open(ppb_anno) as f:
73             for line in f.read().split('\r'):
---> 74                 ind, name, gender, numeric, skin, country = line.split(',')
75                 self.anno_dict[name] = (gender.lower(),skin.lower())
76
ValueError: too many values to unpack (expected 6)**
I use Python 3.7 run on Jupyter Notebook
Thank you in advance

I used '\n' instead of '\r' in line 73 ( for line in f.read().split('\r') ) and now it's working


BNDB Association

Binary Ninja does not ship with .bndb file associated with it, at least in Windows 10.

Dupe of #4.


String literal is not compatible with empty

I used to assert empty in impossible enum variants. Today I bumped Flow to 0.85 and it does not work anymore.
We used to have code like this pass Flow checks:
headerBarStyle(): HeaderBarStyle {
    const { status } = this.props.connection;
    switch (status.state) {
      case 'disconnected':
        return HeaderBarStyle.error;
      case 'connecting':
      case 'connected':
      case 'blocked':
        return HeaderBarStyle.success;
      case 'disconnecting':
        switch (status.details) {
          case 'block':
          case 'reconnect':
            return HeaderBarStyle.success;
          case 'nothing':
            return HeaderBarStyle.error;
          default:
            throw new Error(`Invalid action after disconnection: ${(status.details: empty)}`);
        }
      default:
        throw new Error(`Invalid TunnelState: ${(status.state: empty)}`);
    }
  }

As of today Flow throws an error:
Cannot cast status.state to empty because:
 • string literal connecting [1] is incompatible with empty [2].
 • string literal connected [3] is incompatible with empty [2].

 [1] 202│       case 'connecting':
 [3] 203│       case 'connected':
        :
     214│             throw new Error(`Invalid action after disconnection: ${(status.details: empty)}`);
     215│         }
     216│       default:
 [2] 217│         throw new Error(`Invalid TunnelState: ${(status.state: empty)}`);
     218│     }
     219│   }
     220│

And you can reproduce the same on a very stripped down example:
/* @flow */

type T = 'a' | 'b' | 'c';

function test(value: { some: T }): number {
  switch (value.some) {
    case 'a':
    case 'b':
    case 'c':
      return 0;
    default:
      (value.some: empty);
      throw new Error("We are screwed");
  }
}

Output:
12:       (value.some: empty);
           ^ Cannot cast `value.some` to empty because string literal `a` [1] is incompatible with empty [2].
References:
5: function test(value: { some: T }): number {
                                ^ [1]
12:       (value.some: empty);
                       ^ [2]
12:       (value.some: empty);
           ^ Cannot cast `value.some` to empty because string literal `b` [1] is incompatible with empty [2].
References:
5: function test(value: { some: T }): number {
                                ^ [1]
12:       (value.some: empty);
                       ^ [2]
12:       (value.some: empty);
           ^ Cannot cast `value.some` to empty because string literal `a` [1] is incompatible with empty [2].
References:
7:     case 'a':
            ^ [1]
12:       (value.some: empty);
                       ^ [2]
12:       (value.some: empty);
           ^ Cannot cast `value.some` to empty because string literal `b` [1] is incompatible with empty [2].
References:
8:     case 'b':
            ^ [1]
12:       (value.some: empty);
                       ^ [2]

What makes it worse, it worked fine since Flow 0.66, but now when testing the same code with Flow web site, I see that it doesn't work with older versions either. What a bag of snakes Flow is.

@wchargin not necessarily the fall through is the one to blame, for instance extracting the variable from object remedies the issue for me.
/* @flow */

type T = 'a' | 'b' | 'c';

function test(value: { some: T }): number {
  const foo = value.some;
  switch (foo) {
    case 'a':
    case 'b':
    case 'c':
      return 0;
    default:
      (foo: empty);
      throw new Error("We are screwed");
  }
}

@pronebird: Yes, fair. However (as you probably know), if you’re
switching over the discriminant of a disjoint union, then extracting the
variable prevents you from refining the type in the various cases, as
in this example.

Not enough info to repro


Add support for bool data type for condition in where operator

Description
This change allows to utilize bool data type for condition tensor in oneDNN implementation of where operator
Checklist
Essentials

[ ] PR's title starts with a category (e.g. [BUGFIX], [MODEL], [TUTORIAL], [FEATURE], [DOC], etc)
[ ] Changes are complete (i.e. I finished coding on this PR)
[ ] All changes have test coverage
[ ] Code is well-documented

Changes

[ ] Feature1, tests, (and when applicable, API doc)
[ ] Feature2, tests, (and when applicable, API doc)

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

@mxnet-bot run ci [centos-cpu, unix-cpu, unix-gpu]

@mxnet-bot run ci [centos-gpu]


Fix unknown hms statistics conversion

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] others

Which issues of this PR fixes ：

Fixes https://github.com/StarRocks/starrocks/issues/4942
Problem Summary(Required) ：

When perform HiveColumnStats to ColumnStatistic conversion, we didn't treat unknown type correctly, this diff will fix it.

LGTM

@mergify backport branch-2.2

[FE PR Coverage check]
:disappointed: fail : 0 / 6 (00.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/optimizer/statistics/StatisticsCalculator.java
0
6
00.00%


There is no index.js file

In package.json the main file points to index.js :(
https://github.com/anvk/babel-npm-module-example/blob/master/package.json#L5

Ugh... how did I miss it.
Thanks for pointing it out! I updated code to point to dist/developer.js in my humble example.
Going to close this issue.
Let me know if you think something else is off.


Add support for .NET 6.0 & Serilog 2.12.0

:tada: The changes implemented in response to this issue shipped with Serilog.Sinks.Notepad v3.0.0
The release is available on:

:rocket: GitHub Release
:package: NuGet Package


API Feedback

FUNC-JS API Feedback
Func-js relieves the developer of the need to compile/install pre-compiled binaries and is cross-platform, thanks to WASM.
Within a contract development environment it is actually all is needed to be able to test FunC code, since its output is a code cell.

There also exists the ton-compiler tool, which has a somewhat similar API, support for older versions and CLI.

Compile API
Current
const  result  =  await  compileFunc({
  entryPoints: [entryPoint],
  sources: {
    "contract.fc": fs.readFileSync("contract.fc", "utf8"),
    "stdlib.fc": fs.readFileSync("stdlib.fc", "utf8"),
  },
});

if (result.status  ===  "ok") {
  return  Cell.fromBoc(Buffer.from(result.codeBoc, "base64"))[0];
} else {
  throw  new  Error(result.message);
}

Proposed API:
const  result  =  await  compileFunc({
  version: "0.3.0" // Optional - defaults to latest
  sources: [
    {
      filename: "imports/stdlib.fc",
      content: "#import...\n..."
    },
    {
      filename: "imports/params.fc",
      content: "...",
    },
    {
      filename: "main.fc",
      content: "...",
    },
  ]
});

Notes:

Version is important because user may need a specific version. If we're trying to lower package size, we can perhaps offer older versions as a plugin that can be attached.
This way func-js can do:

if (version === "0.2.0") {
  await import("func-js-func-0.2.0") // throws - if not exists
}

File order matters - stdlib, for example, usually should be the first file processed
Specifying folder in filename is also important, especially in case files are imported via #include, as we need to maintain compatibility with func CLI
We can settle for only sources instead of having entrypoints as well, which is confusing

CLI
Many users will probably prefer compiling via CLI:
npx func-js --version 0.3.0 imports/stdlib.fc main.fc --output-cell out.cell

The CLI offers (TBD) parsing such that it detects all files imported via #include and adds them internally to the sources array.
A CLI would eliminate the need to maintain ton-compiler and allow us to deprecate it.

This review was done as part of modernizing the ton hello world blogs (1, 2)

I think entrypoints should stay. We can make them optional and by default make it so
const entrypoints = source.map(s => s.filename)

Everything is resolved now, closing.