Rock64: apt update fails with certification/keyring errors

I'm trying to update and install packages on the latest rock64 containers release (stable).
Unfortunately, it keeps failing with the following errors:
Hit:1 http://ppa.launchpad.net/ayufan/rock64-0.8-ppa/ubuntu bionic InRelease
Hit:2 http://ports.ubuntu.com/ubuntu-ports bionic InRelease
Hit:4 http://ppa.launchpad.net/ayufan/rock64-0.9-ppa/ubuntu bionic InRelease
Get:3 http://ports.ubuntu.com/ubuntu-ports bionic-security InRelease [88.7 kB]
Get:6 https://download.docker.com/linux/ubuntu bionic InRelease [64.4 kB]
Get:5 http://ports.ubuntu.com/ubuntu-ports bionic-updates InRelease [88.7 kB]
Get:8 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  InRelease [1343 B]
Ign:7 https://packages.cloud.google.com/apt kubernetes-xenial InRelease
Err:9 https://packages.cloud.google.com/apt kubernetes-xenial Release
  Certificate verification failed: The certificate is NOT trusted. The certificate chain uses not yet valid certificate.  Could not handshake: Error in the certificate verification. [IP: <IP_ADDRESS> 443]
Reading package lists... Done
W: http://ppa.launchpad.net/ayufan/rock64-0.8-ppa/ubuntu/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ppa.launchpad.net/ayufan/rock64-0.9-ppa/ubuntu/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: https://download.docker.com/linux/ubuntu/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
E: Release file for https://download.docker.com/linux/ubuntu/dists/bionic/InRelease is not valid yet (invalid for another 41d 7h 25min 49s). Updates for this repository will not be applied.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic-security/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
E: Release file for http://ports.ubuntu.com/ubuntu-ports/dists/bionic-security/InRelease is not valid yet (invalid for another 42d 3h 0min 4s). Updates for this repository will not be applied.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic-updates/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
E: Release file for http://ports.ubuntu.com/ubuntu-ports/dists/bionic-updates/InRelease is not valid yet (invalid for another 42d 4h 7min 24s). Updates for this repository will not be applied.
E: The repository 'http://apt.kubernetes.io kubernetes-xenial Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: http://deb.ayufan.eu/orgs/ayufan-rock64/releases/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
E: Release file for http://deb.ayufan.eu/orgs/ayufan-rock64/releases/InRelease is not valid yet (invalid for another 35d 1h 3min 49s). Updates for this repository will not be applied.

Hi, can be a problem with time settings.
Try the date command, if date is far away in the past you can set time with a date -f command.

I just checked the date (with the date command) and it's fine - it's showing the current date.
Looking at the error message, it seems like a security/certification issue.

This:

Release file for http://ports.ubuntu.com/ubuntu-ports/dists/bionic-updates/InRelease is not valid yet (invalid for another 42d 4h 7min 24s). Updates for this repository will not be applied

Really seems like a date issue.
Can you post again the result of executing the?
date
apt-get update

Thanks @lgranie and @ayufan. Seems like re-setting the date and restarting solved part of the issue.
@ayufan, here's the output:
rock64@rock64:~$ date
Thu Oct 17 21:18:51 UTC 2019
rock64@rock64:~$ sudo apt-get update
[sudo] password for rock64:
Hit:1 http://ppa.launchpad.net/ayufan/rock64-0.8-ppa/ubuntu bionic InRelease
Hit:2 http://ports.ubuntu.com/ubuntu-ports bionic InRelease
Hit:3 http://ports.ubuntu.com/ubuntu-ports bionic-security InRelease
Hit:4 http://ppa.launchpad.net/ayufan/rock64-0.9-ppa/ubuntu bionic InRelease
Hit:5 http://ports.ubuntu.com/ubuntu-ports bionic-updates InRelease
Get:6 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  InRelease [1343 B]
Hit:8 https://download.docker.com/linux/ubuntu bionic InRelease
Hit:7 https://packages.cloud.google.com/apt kubernetes-xenial InRelease
Fetched 1343 B in 3s (455 B/s)
Reading package lists... Done
W: http://ppa.launchpad.net/ayufan/rock64-0.8-ppa/ubuntu/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic-security/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ppa.launchpad.net/ayufan/rock64-0.9-ppa/ubuntu/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic-updates/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://deb.ayufan.eu/orgs/ayufan-rock64/releases/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: https://download.docker.com/linux/ubuntu/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://apt.kubernetes.io/dists/kubernetes-xenial/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
rock64@rock64:~$

@ayufan Many thanks.
Best of luck.

I am experiencing the same issue with the bionic-lxde-rock64-0.9.14-1159-armhf.img.xz image on a ROCK64 SBC.
Snippet from apt-get update
Reading package lists... Done
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
W: http://ports.ubuntu.com/ubuntu-ports/dists/bionic-security/InRelease: The key(s) in the keyring /etc/apt/trusted.gpg.d/ayufan.key.chroot.gpg are ignored as the file has an unsupported filetype.
I made sure that time is not the issue; I have installed chrony and checked that time is correct.
FWIW, here is the output from uname and date
$ uname -a; date
Linux rock64 4.4.190-1233-rockchip-ayufan-gd3f1be0ed310 #1 SMP Wed Aug 28 08:59:34 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
Tue Oct 20 23:06:29 MST 2020
Checking the files in directory  /etc/apt/trusted.gpg.d
$ file *
_ayufan.key.chroot.gpg:           PGP public key block Public-Key (old)_
ayufan-ppa.gpg:                  GPG key public ring, created Wed Jun 14 15:20:30 2017
ubuntu-keyring-2012-archive.gpg: GPG key public ring, created Fri May 11 21:15:36 2012
ubuntu-keyring-2012-cdimage.gpg: GPG key public ring, created Fri May 11 22:10:48 2012
ubuntu-keyring-2018-archive.gpg: GPG key public ring, created Mon Sep 17 15:01:46 2018
The key:
ayufan.key.chroot.gpg:           PGP public key block Public-Key (old)
is in the old format (PGP)
Whereas the other keys are in GPG format.
I think installing the ayufan.key.chroot.gpg   key in GPG format will resolve the issue.
This may be applicable to all the bionic images.
Searching for a way to convert a PGP format to GPG, I found this link in the Debian mailing list:
https://lists.debian.org/debian-devel/2001/02/msg00558.html
and this in StackExchange:
https://unix.stackexchange.com/questions/404879/converting-old-pgp-keys-to-gpg-resolved.
@ayufan -- can you please look into this and provide the key in GPG format.
Thanks!


zsh: command not found: git_prompt_info

I got this error since this morning after updating oh my zsh when prompted.
After googling it it appears to have happened a few time already, caused my a faulty merge.
So I'm just posting this to let you know.

run zsh and fix those files on vim setting ":set ff=unix".

I already have this line in my .vimrc
set ff=unix
but I tried to write it in the vim command panel at the bottom.
It didn't fix.

edit the file with vim, set ff=unix, save your changes and run zsh again. it should work :)

that :set ff=unix  does not take any effect

Follow these instructions: https://github.com/robbyrussell/oh-my-zsh/issues/4069#issue-89607351


[3pts] Create Recipe Model

Create the model class
Set up the associations
Add validations to models
Add unit specs to the model


For the SchemaModel, allow access to column names through class attributes

First of all, thank you for your work on this awesome library. Both the SchemaModel and especially the new Data Synthesis Strategies are so cool :)
Is your feature request related to a problem? Please describe.
When using the SchemaModel api, especially within function transformations, it would be convenient to be able to leverage the class definition to access the actual column names of the dataframe. Especially when the format is wide.
import pandera as pa
from pandera.typing import DataFrame, Series

class WideSchema(pa.SchemaModel):
    col1: Series[str]  # Note no pa.Field()
    col2: Series[int] = pa.Field()
    col3: Series[float] = pa.Field(lt=100.0)
    col4: Series[float] = pa.Field(alias=1234)
    ...  # Imagine a lot of columns
    col44: Series[str] = pa.Field(isin=["V1", "V2"])

class EvenWiderSchema(WideSchema):
    col3: Series[str] = pa.Field()  # Override, different type

    # Override, alias from parent should not be valid here
    col4: Series[float] = pa.Field()
    extra1: Series[int] = pa.Field(alias="_extra1_alias")
    extra2: Series[int] = pa.Field(alias=222)

@pa.check_types
def transform(df: DataFrame[WideSchema]) -> DataFrame[EvenWiderSchema]:
    # Since we already have typed the Schema type, it would be
    # convenient to be able to use it directly to get the DataFrame
    # column content
    col1_name = WideSchema.col1  # returns "col1"

    # Alternative to "intellisense-browsing" for column name in VS Code is
    # just to "Peek definition" (Alt+F12)
    if True:
        # Would like to be able to type similar to this
        df = df.assign(
            **{
                EvenWiderSchema.extra1: df[WideSchema.col2] + 100,
                EvenWiderSchema.col4: df[WideSchema.col4],
                EvenWiderSchema.col3: df[WideSchema.col1].str.replace(
                    "candy", "popcorn"
                ),
                # EvenWiderSchema.extra2: 1234,  # This does not work on non-strings
            }
        )
        df[EvenWiderSchema.extra2] = 1234
        return df
    else:
        # Have to also know the alias
        df = df.assign(
            _extra1_alias=df["col2"] + 100,
            col4=df[1234],
            col3=df["col1"].str.replace("candy", "popcorn"),
        )

        df[222] = 1234
        return df

Describe the solution you'd like
Leveraging the descriptor protocol on model_components.FieldInfo allows to return the actual column name used in the underlying validation of the pd.DataFrame. Additionally using the __init_subclass__ hook on model.SchemaModel allows to "patch" omitted pa.Field(), to avoid AttributeError when trying to access values that are not defined.
WideSchema.col1  # Simply returns "col1", note omitted pa.Field() in definition
WideSchema.col4  # Returns the alias `1234`
EvenWiderSchema.col1  # Returns "col1"

Describe alternatives you've considered
There might be of course other convenient methods of discovering the column names, such as Peek/GoTo Definition, especially if you're not working from VS Code or similar editors. The suggested feature is mearly even more convenience/alternatives on top of that.
Additional context
I started some exploring on this feature on my fork. Even if this feature request seems rather trivial on the surface, it touches on other concerns. Things I encountered worth discussing if this feature seems in line with what you have planned for the SchemaModel api, are the following

The point at which invalid schemas errors. At the moment the SchemaInitError is raised on .to_schema(). It might make sense to have the error directly at class creation. Especially since the to_schema() caches the DataFrameSchema with the class as the key.
Maybe there are other usecases that the usage of example WideSchema.col1 occupies if this is implemented
Introducing the descriptor protocol seems to slighty complicate the current implementation. Alse the hook __init_subclass__ is rather new, not exactly sure what the minimum python version is for it.

If this feature seems to make sense, I can try to finalize an implementation suggestion.

Thanks @jespercodes! We have @jeffzi to thank for the schema models API... I've been using it a lot myself and finding myself gaining a lot of productivity :)
I think the overall solution to return aliases when accessing the class attributes makes a lot of sense. @jeffzi do you foresee any issues with doing this?

Thanks @jespercodes, I like the fact that it enables code-completion (comfort) and avoid the use of strings (less bugs due to spelling mistakes).
It's true that we want to return the alias and therefore rely on FieldInfos, which are created by to_schema().

The point at which invalid schemas errors. At the moment the SchemaInitError is raised on .to_schema(). It might make sense to have the error directly at class creation...

I'm not sure about the performance hit if we generate schema at class initialization. It would probably be worth to benchmark SchemaModel to have an idea. More importantly, you can define a class that you never use. Wouldn't be unexpected to have your application raising an exception for a schema you don't even use? I would rather lazily validate the schema the first time it is used, be it from to_schema() or accessing an attribute.

...Especially since the to_schema() caches the DataFrameSchema with the class as the key.`

The model will not be cached if it raises a SchemaInitError .

Maybe there are other usecases that the usage of example WideSchema.col1 occupies if this is implemented

I'm a bit concerned about that too but I can't imagine another use case at the moment. However, .__fields__ are always available if the user needs to access the details of the fields.
...
print(EvenWiderSchema.__fields__)
#> {}
EvenWiderSchema.to_schema()  # init cache
#> DataFrameSchema(columns={'col1': <Schema Column: 'col1' type=<class 'str'>>, 'col2': <Schema Column: 'col2' type=<class 'int'>>, 'col3': <Schema Column: 'col3' type=<class 'str'>>, 'col4': <Schema Column: 'col4' type=<class 'float'>>, 'col44': <Schema Column: 'col44' type=<class 'str'>>, '_extra1_alias': <Schema Column: '_extra1_alias' type=<class 'int'>>, 222: <Schema Column: '222' type=<class 'int'>>}, index=None, coerce=False)
print(EvenWiderSchema.__fields__)
#> {'col1': (<pandera.typing.AnnotationInfo object at 0x0000021937548FD0>, None), 'col2': (<pandera.typing.AnnotationInfo object at 0x0000021937548160>, <pandera.model_components.FieldInfo object at 0x000002193754AF40>), 'col3': (<pandera.typing.AnnotationInfo object at 0x00000219375581C0>, <pandera.model_components.FieldInfo object at 0x000002193754A580>), 'col4': (<pandera.typing.AnnotationInfo object at 0x0000021937558130>, <pandera.model_components.FieldInfo object at 0x0000021937555100>), 'col44': (<pandera.typing.AnnotationInfo object at 0x0000021937558C40>, <pandera.model_components.FieldInfo object at 0x000002193754A520>), '_extra1_alias': (<pandera.typing.AnnotationInfo object at 0x0000021937558CA0>, <pandera.model_components.FieldInfo object at 0x00000219375559A0>), 222: (<pandera.typing.AnnotationInfo object at 0x0000021937558AF0>, <pandera.model_components.FieldInfo object at 0x0000021937555AC0>)}

Created on 2020-12-26 by the reprexpy package

init_subclass

Implemented in 3.6 (which is the minimum pandera supports) 🎉 : https://docs.python.org/3/whatsnew/3.6.html#pep-487-simpler-customization-of-class-creation

If this feature seems to make sense, I can try to finalize an implementation suggestion.

Unless @cosmicBboy sees a better usage for descriptors, I'd say go for it ! I can help review the PR ⚡

Unless @cosmicBboy sees a better usage for descriptors, I'd say go for it !

I can't think of any... anyway we have access to the FieldInfo via __fields__ if we ever need to pull out any attributes for a public-facing interface.
One case I was thinking about is whether alias and regex play well together with this change. I'm guessing it would mean that users would be responsible for using the regex pattern to find the associated columns.
import pandas as pd
import pandera as pa
from pandera.typing import DataFrame, Series

class WideSchema(pa.SchemaModel):
    col_regex: Series[str]  = pa.Field(alias="column_([0-9])+", regex=True)

WideSchema.col_regex  # returns 'column_([0-9])+'

df = pd.DataFrame({"column_1": [0], "column_21": [1], "foo": [3]})
df[df.columns.str.match(WideSchema.col_regex)]

All that said, have at it @jespercodes! Your fork looks like you're well on your way.

It might make sense to have the error directly at class creation

To @jeffzi's point, schema models are not cached on SchemaInitError. Are there any other reasons you were thinking that SchemaInitError would be raised on class initialization? I tend to prefer failing earlier rather than later, but I'm not sure there's a big difference between failing at SchemaModel class initialization vs. failing at DataFrameSchema object initialization for the end user experience. We can also discuss this in a dedicated issue if we think it's worth exploring more.

I can help review the PR ⚡

Thanks @jeffzi!

hey @jespercodes I just added this to the 0.7.0 release milestone! Also, let me know if you need any help with the implementation

hey @jespercodes I just added this to the 0.7.0 release milestone! Also, let me know if you need any help with the implementation

Glad to hear that, and thank you for your feedback, i have added #388 where this seem to work, trying to take into account your feedback.
I've been working on implementing this feature with the goal of simply either:

return the variable name in the class or
the supplied alias as is

Use cases below. There might be possibly more use cases we want to consider, potentially in relation with pandas MultiIndex column and tupled alias?
import pandas as pd
import pandera as pa
from pandera.typing import DataFrame, Series

class Schema(pa.SchemaModel):
    simple: Series[int]
    simple_alias: Series[int] = pa.Field(alias="_sa")
    non_str_alias: Series[int] = pa.Field(alias=2020)
    tupled_alias: Series[int] = pa.Field(alias=("level1", "level2"))  # (inching closer to multiindex)
    regex: Series[str] = pa.Field(alias="column_([0-9])+", regex=True)

Schema.simple  # 'simple'
Schema.simple_alias  # '_sa'
Schema.non_str_alias  # 2020
Schema.tupled_alias  # ('level1', 'level2')
Schema.regex  # 'column_([0-9])+'

Side note for above variable non_str_alias :
Argument "alias" to "Field" has incompatible type "int"; expected "Optional[str]"mypy(error)
Alias is currently typed as str, maybe this is another separate discussion to have.
And when inheriting, all variables with annotations defined on the child class should "override"/shadow the same variable on the base class. Basically the variable name on the class is key here.
# Contrived example of implemented behaviour
class Child(Schema):
    simple: Series[str]
    simple_alias: Series[str] = pa.Field(alias="another alias")
    regex: Series[int]

Child.simple  # 'simple'
Child.simple_alias  # 'another alias'
Child.non_str_alias  # 2020
Child.tupled_alias  # ('level1', 'level2')
Child.regex  # 'regex'

Regarding the point of actual schema creation, I agree with you both that this feature is not the place to discuss this.

To @jeffzi's point, schema models are not cached on SchemaInitError. Are there any other reasons you were thinking that SchemaInitError would be raised on class initialization?

The initial reason was simply that for me at first glance, it looked like it made it easier to implement this. Having spent more time with the code, I see this is not the case. I agree that a discussion of this in a dedicated issue is appropriate.
What I've done to handle omitted pa.Field()s, is to add them via __init_subclass__. This also has the effect of
handling a current edge case with inheritance, see test repro here.

class Schema(pa.SchemaModel):
    omitted: Series[int]

Schema.omitted  # Works straight away, returns "omitted"

# Schema init happens here
schema = Schema.to_schema()

Also, let me know if you need any help with the implementation

I am very new to contributing and using GH with PRs and stuff, so any clear guidance on next steps for this issue and the PR, and any feedback is very much appreciated. :)

Glad to hear that, and thank you for your feedback, i have added #388 where this seem to work, trying to take into account your feedback.
I've been working on implementing this feature with the goal of simply either:

return the variable name in the class or
the supplied alias as is

Use cases below. There might be possibly more use cases we want to consider, potentially in relation with pandas MultiIndex column and tupled alias?
import pandas as pd
import pandera as pa
from pandera.typing import DataFrame, Series

class Schema(pa.SchemaModel):
    simple: Series[int]
    simple_alias: Series[int] = pa.Field(alias="_sa")
    non_str_alias: Series[int] = pa.Field(alias=2020)
    tupled_alias: Series[int] = pa.Field(alias=("level1", "level2"))  # (inching closer to multiindex)
    regex: Series[str] = pa.Field(alias="column_([0-9])+", regex=True)

Schema.simple  # 'simple'
Schema.simple_alias  # '_sa'
Schema.non_str_alias  # 2020
Schema.tupled_alias  # ('level1', 'level2')
Schema.regex  # 'column_([0-9])+'

Side note for above variable non_str_alias :
Argument "alias" to "Field" has incompatible type "int"; expected "Optional[str]"mypy(error)
Alias is currently typed as str, maybe this is another separate discussion to have.
And when inheriting, all variables with annotations defined on the child class should "override"/shadow the same variable on the base class. Basically the variable name on the class is key here.
# Contrived example of implemented behaviour
class Child(Schema):
    simple: Series[str]
    simple_alias: Series[str] = pa.Field(alias="another alias")
    regex: Series[int]

Child.simple  # 'simple'
Child.simple_alias  # 'another alias'
Child.non_str_alias  # 2020
Child.tupled_alias  # ('level1', 'level2')
Child.regex  # 'regex'

Regarding the point of actual schema creation, I agree with you both that this feature is not the place to discuss this.

To @jeffzi's point, schema models are not cached on SchemaInitError. Are there any other reasons you were thinking that SchemaInitError would be raised on class initialization?

The initial reason was simply that for me at first glance, it looked like it made it easier to implement this. Having spent more time with the code, I see this is not the case. I agree that a discussion of this in a dedicated issue is appropriate.
What I've done to handle omitted pa.Field()s, is to add them via __init_subclass__. This also has the effect of
handling a current edge case with inheritance, see test repro here.

class Schema(pa.SchemaModel):
    omitted: Series[int]

Schema.omitted  # Works straight away, returns "omitted"

# Schema init happens here
schema = Schema.to_schema()

Also, let me know if you need any help with the implementation

I am very new to contributing and using GH with PRs and stuff, so any clear guidance on next steps for this issue and the PR, and any feedback is very much appreciated. :)

Thanks @jespercodes for the PR and detailed explanations! I'm particularly excited about using this with decorators, like @pa.check(Schema.simple_alias).

I am very new to contributing and using GH with PRs and stuff, so any clear guidance on next steps for this issue and the PR, and any feedback is very much appreciated. :)

I'll take a look during the weekend and request changes if needed. Once everyone agrees on the PR and CI Tests + codecov pass, we can merge it :rocket:

Thanks @jespercodes for the PR and detailed explanations! I'm particularly excited about using this with decorators, like @pa.check(Schema.simple_alias).

I am very new to contributing and using GH with PRs and stuff, so any clear guidance on next steps for this issue and the PR, and any feedback is very much appreciated. :)

I'll take a look during the weekend and request changes if needed. Once everyone agrees on the PR and CI Tests + codecov pass, we can merge it :rocket:

And when inheriting, all variables with annotations defined on the child class should "override"/shadow the same variable on the base class.

This behavior already existed prior to your PR. I think it's reasonable and what a python dev would expect.

Argument "alias" to "Field" has incompatible type "int"; expected "Optional[str]"mypy(error)

We could change the annotation of Field to Any but tuples are not properly supported. Try:
import pandera as pa
import pandas as pd

print(pd.DataFrame({("a","a"):[2]}))
#>    a
#>    a
#> 0  2
pa.DataFrameSchema({("a","a"):pa.Column(int)}) # ok
#> DataFrameSchema(columns={('a', 'a'): <Schema Column: '('a', 'a')' type=<class 'int'>>}, index=None, coerce=False)
print(pa.DataFrameSchema({("a","a"):pa.Column(int)})) # oops
#> Traceback (most recent call last):
#> <ipython-input-1-d8f84a14f45d> in <module>
#> ----> 1 print(pa.DataFrameSchema({("a","a"):pa.Column(int)})) # oops
#> ~/Projects/development/pandera/pandera/schemas.py in __str__(self)
#>     649
#>     650         columns = {k: str(v) for k, v in self.columns.items()}
#> --> 651         columns = json.dumps(columns, indent=N_INDENT_SPACES)
#>     652         _indent = " " * N_INDENT_SPACES
#>     653         columns = _format_multiline(columns, "columns")
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/__init__.py in dumps(obj, skipkeys, ensure_ascii, check_circular, allow_nan, cls, indent, separators, default, sort_keys, **kw)
#>     236         check_circular=check_circular, allow_nan=allow_nan, indent=indent,
#>     237         separators=separators, default=default, sort_keys=sort_keys,
#> --> 238         **kw).encode(obj)
#>     239
#>     240
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/encoder.py in encode(self, o)
#>     199         chunks = self.iterencode(o, _one_shot=True)
#>     200         if not isinstance(chunks, (list, tuple)):
#> --> 201             chunks = list(chunks)
#>     202         return ''.join(chunks)
#>     203
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/encoder.py in _iterencode(o, _current_indent_level)
#>     429             yield from _iterencode_list(o, _current_indent_level)
#>     430         elif isinstance(o, dict):
#> --> 431             yield from _iterencode_dict(o, _current_indent_level)
#>     432         else:
#>     433             if markers is not None:
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/encoder.py in _iterencode_dict(dct, _current_indent_level)
#>     374                 continue
#>     375             else:
#> --> 376                 raise TypeError(f'keys must be str, int, float, bool or None, '
#>     377                                 f'not {key.__class__.__name__}')
#>     378             if first:
#> TypeError: keys must be str, int, float, bool or None, not tuple

Created on 2021-01-16 by the reprexpy package
Better to discuss this in another issue.

And when inheriting, all variables with annotations defined on the child class should "override"/shadow the same variable on the base class.

This behavior already existed prior to your PR. I think it's reasonable and what a python dev would expect.

Argument "alias" to "Field" has incompatible type "int"; expected "Optional[str]"mypy(error)

We could change the annotation of Field to Any but tuples are not properly supported. Try:
import pandera as pa
import pandas as pd

print(pd.DataFrame({("a","a"):[2]}))
#>    a
#>    a
#> 0  2
pa.DataFrameSchema({("a","a"):pa.Column(int)}) # ok
#> DataFrameSchema(columns={('a', 'a'): <Schema Column: '('a', 'a')' type=<class 'int'>>}, index=None, coerce=False)
print(pa.DataFrameSchema({("a","a"):pa.Column(int)})) # oops
#> Traceback (most recent call last):
#> <ipython-input-1-d8f84a14f45d> in <module>
#> ----> 1 print(pa.DataFrameSchema({("a","a"):pa.Column(int)})) # oops
#> ~/Projects/development/pandera/pandera/schemas.py in __str__(self)
#>     649
#>     650         columns = {k: str(v) for k, v in self.columns.items()}
#> --> 651         columns = json.dumps(columns, indent=N_INDENT_SPACES)
#>     652         _indent = " " * N_INDENT_SPACES
#>     653         columns = _format_multiline(columns, "columns")
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/__init__.py in dumps(obj, skipkeys, ensure_ascii, check_circular, allow_nan, cls, indent, separators, default, sort_keys, **kw)
#>     236         check_circular=check_circular, allow_nan=allow_nan, indent=indent,
#>     237         separators=separators, default=default, sort_keys=sort_keys,
#> --> 238         **kw).encode(obj)
#>     239
#>     240
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/encoder.py in encode(self, o)
#>     199         chunks = self.iterencode(o, _one_shot=True)
#>     200         if not isinstance(chunks, (list, tuple)):
#> --> 201             chunks = list(chunks)
#>     202         return ''.join(chunks)
#>     203
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/encoder.py in _iterencode(o, _current_indent_level)
#>     429             yield from _iterencode_list(o, _current_indent_level)
#>     430         elif isinstance(o, dict):
#> --> 431             yield from _iterencode_dict(o, _current_indent_level)
#>     432         else:
#>     433             if markers is not None:
#> ~/.pyenv/versions/3.7.7/lib/python3.7/json/encoder.py in _iterencode_dict(dct, _current_indent_level)
#>     374                 continue
#>     375             else:
#> --> 376                 raise TypeError(f'keys must be str, int, float, bool or None, '
#>     377                                 f'not {key.__class__.__name__}')
#>     378             if first:
#> TypeError: keys must be str, int, float, bool or None, not tuple

Created on 2021-01-16 by the reprexpy package
Better to discuss this in another issue.

Closed via #388

Closed via #388


Patch savings calc post y values

https://github.com/cunybpl/changepointmodel/blob/da59d9572dbf6ea97d5956dcab714d31c6f5122c/changepointmodel/core/savings.py#L140

From #104 should be post.y not post.pred_y

@equalaction @krysh1 patched in 3.3.2


drop pip in install process

I read some not so good interaction between pip and conda, in general if we should drop usage of pip in favor of conda.

in the same lines, why do we need brew? We should check if we can't replace brew by conda where possible

example:
anaconda search -t conda npm
Using Anaconda Cloud api site https://api.anaconda.org
Run 'anaconda show <USER/PACKAGE>' to get more details:
/Users/doutriaux1/anaconda2/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py:791: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html
  InsecureRequestWarning)
Packages:
     Name                      |  Version | Package Types   | Platforms
     ------------------------- |   ------ | --------------- | ---------------
     auto/npm_watcher          |      0.1 | conda           | linux-64
                                          : UNKNOWN
     cpcloud/npm               |   1.4.12 | conda           | linux-64, win-32, win-64, linux-32, osx-64
                                          : Node Package Manager
     jakirkham/npm             |   1.4.12 | conda           | linux-64, osx-64
Found 3 packages

@doutriaux1 Users won't need brew/npm at all; that's just a developer dependency to assemble and minify the javascript. For releases, a minified version of the JS and CSS will be built as part of the distributed package (in conda). As for pip, it was mostly because I already knew how to set up a requirements file for pip vs conda which I just learned how to do. If you want to migrate the requirements document/setup script/autorun script to conda, we're accepting pull requests :wink:

(also I haven't had any issues with pip + conda, since I'm using the pip provided by conda)

@chaosphere2112 see #24 I'm holding you to your word on PRs 😜

npm could use conda but it seems to conflict with uvcdat (numpy?)


Display Hashrate fix

(2024/Feb/13)(12:21:05) - ==================== HASHRATE =====================
(2024/Feb/13)(12:21:05) - | DeviceID | Coin    | Pool            | Hashrate  |
(2024/Feb/13)(12:21:05) - | 0        | etchash | etc.2miners.com | 49.99MH/S |
(2024/Feb/13)(12:21:05) - | 1        | etchash | etc.2miners.com | 0MH/S     |
(2024/Feb/13)(12:21:05) - ====================================================

(2024/Feb/13)(12:21:10) - ==================== HASHRATE =====================
(2024/Feb/13)(12:21:10) - | DeviceID | Coin    | Pool            | Hashrate  |
(2024/Feb/13)(12:21:10) - | 0        | etchash | etc.2miners.com | 0MH/S     |
(2024/Feb/13)(12:21:10) - | 1        | etchash | etc.2miners.com | 38.56MH/S |
(2024/Feb/13)(12:21:10) - ====================================================

The old hashrate should be stay display.

Resolved : https://github.com/luminousmining/miner/pull/10


scoreboard & course creation fixes; fixes #107, fixes #108

Downgraded registerNewObjective to pre-1.13 (deprecated) version, so that scoreboards work on 1.12.2 and below.
Made the "not completed yet" string comply to the 16 char max for scoreboards on pre-1.13 servers.
Fix course creation bug introduced by 070d9a9.

Great work, thanks Steve! 👍


Is this project being maintained?

Hi!
We have been using Pig at work for sometime, and testing etc. is a pain.
PigPen looks really great, but it seems to be using an older version of Pig, and there haven't been major updates in a while. Is this still under active development?
Thanks!

At this point we're still supporting it, but it is not under active development. I generally view it as active/stable. This is mostly because the people using it haven't asked for anything new in a very long time. :)
PigPen predates Spark, and was an early option for doing big data in more of a coding, less scripting fashion, at a higher level of abstraction than raw Hadoop or Cascading was providing. Now that Spark is taking over that space, combined with a lot of active investment in their community, we've seen a lot of people moving in that direction. Also considering the rapid decline of Pig (as it should be), and it's kind of a no brainer.
If you're really into Clojure and have an existing Clojure ecosystem to build on, it might be worth considering, but in that case I would recommend using the Cascading backend. If you do go that route, I would be happy to assist transferring the project to another active maintainer.

Hi @mbossenbroek !
We already have a bunch of Pig scripts and UDFs that we would like to be able to reuse.
The Cascading approach should work, but will have to discuss with my team.
PigPen sure feels more natural than Cascalog, btw! Thanks for the nice library!


Environment reset twice per episode in enjoy script

I've created a local evaluation function with the modification I've proposed in this issue (https://github.com/hill-a/stable-baselines/issues/906) and I was expecting to have the same results using the enjoy script here.
But I realized that here, using one environment, env reset is also called twice per episode. The reason is that reset is called the first time automatically due to VecEnv and after, a seconde time, in the code below (line 154).
https://github.com/araffin/rl-baselines-zoo/blob/fd9d38862047d7fd4f67be8eb3f6736e093eac9f/enjoy.py#L148-L157
In line 149 it was supposed to be an and instead of or? Like below:
if done and infos[0].get('is_success', False):

Sorry, I realized there is no sense to be an and.
But, anyway, the reset call is not necessary while VecEnv does automatic reset.

Hello,
thanks for pointing out this issue.
i think there was two reason i did that:

with dqn i think i was not using a vecenv (to be confirmed), at least it was the case for training
2.this piece of code is a bit a hack to reset env early when the goal is reached. Because with the robotic env, the env is reset only after the max episode step and i did not want to wait. You can comment the reset if needed ;)

Yes, I've commented the line in my fork ;)

Should be fixed in SB3 and its zoo: https://github.com/DLR-RM/rl-baselines3-zoo


How to convert cv2.Mat() to cv2.UMat()

Hello, I am trying to write some glue code for a third-party library.
In the code, I need to return a data of type cv2.UMat.
Now I can use cv2.Mat(descs) to get a Mat, but I can't find a way to convert cv2.Mat to cv2.UMat.
I tried umat = cv.UMat(mat), mat.copyTo(umat), umat = cv.UMat(descs.shape[0], descs.shape[1], descs.dtype, cv.USAGE_DEFAULT), but none of them worked.
I found on the Internet that there seems to be such a method in C to convert Mat to UMat, but I can't seem to find it in Python.
Can you give some suggestions?

use
`umat = cv2.UMat(mat)`

it works for me in OpcnCV 3.4.18.

use
umat = cv2.UMat(mat)
it works for me in OpcnCV 3.4.18.

For project reasons, it seems I can't use another version of opencv, but still thanks so much for your reply.
my environment is as follows:
The environment is Windows 11 version

The latest opencv-python version installed is "<IP_ADDRESS>"
Opencv should be the opencv_videoio_ffmpeg4100_64.dll that comes with the opencv-python package Lib\site-packages\cv2. Opencv is not installed separately on this machine
In this environment, UMat (mat) conversion is not successful

You can use umat = mat.getUMat check if it works?

You can use umat = mat.getUMat check if it works?

I tried it, but mat doesn't have the method getUMat


Prometheus ServiceMonitor is not created

https://github.com/DataWorkflowServices/dws/blob/5950825b3d74e310279a51ccdbd040d5b1c07d5a/config/default/kustomization.yaml#L25

Correct. We don't have the Prometheus CRDs installed on our customer's machines, and they don't want it, so we can't enable it by default.
See https://book.kubebuilder.io/reference/metrics for how you can enable it for your own purposes.


Which seed is the best in your frog_zebrafish_embryogenesis analysis?

          @Yanay1 , I have a naive question regarding the highest integration score after running multiple seeds. In you vignette, the fz_multi_seeds_scores.csv provides values for logistic and balanced regression. I am assuming the best integration seed is the one that got highest logistic and balanced regression? If that is true,  is it seed # 19 the selected seed for your frog_zebrafish_embryogenesis analysis. Seed#19 got has logistic regression = 0.867293 	 and balanced regression =0.545929 , which is the highest that you got out of 30 different seeds.

I have a naive question regarding the highest integration score after running multiple seeds. In you vignette, the fz_multi_seeds_scores.csv provides values for logistic and balanced regression. I am assuming the best integration seed is the one that got highest logistic and balanced regression? If that is true,  is it seed # 19 the selected seed for your frog_zebrafish_embryogenesis analysis. Seed#19 got has logistic regression = 0.867293 	 and balanced regression =0.545929 , which is the highest that you got out of 30 different seeds.
Thanking you in advance for your time
Originally posted by @vishnums007 in https://github.com/snap-stanford/SATURN/issues/54#issuecomment-2115585641

https://github.com/snap-stanford/SATURN/issues/54#issuecomment-2115943012


Request does not finish when 204 Status code (no Content) includes content

When communicating with a service that returns a 204 (No Content) Response but also sends data (i.e. empty JSON {}) then the client never finishes. While the Request is done properly on the server side, the popup which says Processing ...sending Data never closes. One has to hit abort.
Except that everything works as expected.

I'm also seeing this.

also see this behavior

The solutions to issues 93 and 124 work here. Remove the Content-Type header or set to some something other than application/json.

I can't do that in my case--the API requires it.

Another workaround is to add whitespace to the body of the response. Or use curl for this test case!


discord: fix disableBreakingUpdates for missing settings.json

Description of changes
Closes #211197

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Yes, please -- good commit messages help for git blames and if GitHub goes down :)


create a class extends StatefulWidget, and add a function, then occur CompileError

test case:
import 'package:dart_eval/dart_eval.dart';
import 'package:dart_eval/dart_eval_bridge.dart';
import 'package:flutter/material.dart';
import 'package:flutter_eval/flutter_eval.dart';
import 'package:flutter_test/flutter_test.dart';

void main() {
  testWidgets('test MyWidget function', (WidgetTester tester) async {
    final compiler = Compiler();
    setupFlutterForCompile(compiler);
    final program = compiler.compile({
      'example': {
        'main.dart': '''
        import 'package:flutter/material.dart';

        class MyWidget extends StatefulWidget {

          void Function(int) _callback;

          MyWidget(this._callback);

          void testFun() {
            print('testFun');
            return _callback(1);
          }

          @override
          State<MyWidget> createState() {
            return MyWidgetState();
          }
        }

        class MyWidgetState extends State<MyWidget> {
          MyWidgetState();
          final TextEditingController controller = TextEditingController();
          String text = 'Bazinga';

          @override
          void initState() {
            super.initState();
            widget.testFun();
            controller.addListener(() {
              setState(() {
                text = controller.text + '123';
              });
            });
          }

          @override
          Widget build(BuildContext context) {
            return MaterialApp(home: Scaffold(body: Column(children: [
              TextField(
                controller: controller,
              ),
              Text(text)
            ])));
          }
        }
        '''
      }
    });
    final runtime = Runtime(program.write().buffer.asByteData());
    setupFlutterForRuntime(runtime);
    await tester.pumpWidget(
        runtime.executeLib('package:example/main.dart', 'MyWidget.', [
      $Closure((runtime, target, args) {
        debugPrint('eval args ${args[0]!.$value}');
        return null;
      }),
    ]));
    await tester.enterText(find.byType(TextField), 'Hello');
    await tester.pump();
    expect(find.text('Hello123'), findsOneWidget);
  });
}

Error:
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following CompileError was thrown running a test:
Unknown method StatefulWidget.testFun at "widget.testFun()" (file package:example/main.dart)
When the exception was thrown, this was the stack:
#0      resolveInstanceMethod (package:dart_eval/src/eval/compiler/expression/method_invocation.dart:350:9)
#1      resolveInstanceMethod (package:dart_eval/src/eval/compiler/expression/method_invocation.dart:355:14)
#2      resolveInstanceMethod (package:dart_eval/src/eval/compiler/expression/method_invocation.dart:355:14)
#3      resolveInstanceMethod (package:dart_eval/src/eval/compiler/expression/method_invocation.dart:355:14)
#4      _invokeWithTarget (package:dart_eval/src/eval/compiler/expression/method_invocation.dart:259:12)
#5      compileMethodInvocation (package:dart_eval/src/eval/compiler/expression/method_invocation.dart:55:12)
#6      compileExpression (package:dart_eval/src/eval/compiler/expression/expression.dart:38:12)
#7      compileExpressionAndDiscardResult (package:dart_eval/src/eval/compiler/expression/expression.dart:106:12)
#8      compileStatement (package:dart_eval/src/eval/compiler/statement/statement.dart:26:15)
#9      compileBlock (package:dart_eval/src/eval/compiler/statement/block.dart:19:20)
#10     compileMethodDeclaration (package:dart_eval/src/eval/compiler/declaration/method.dart:56:14)
#11     compileDeclaration (package:dart_eval/src/eval/compiler/declaration/declaration.dart:21:12)
#12     compileClassDeclaration (package:dart_eval/src/eval/compiler/declaration/class.dart:47:5)
#13     compileDeclaration (package:dart_eval/src/eval/compiler/declaration/declaration.dart:17:5)
#14     Compiler.compileSources.. (package:dart_eval/src/eval/compiler/compiler.dart:493:11)
#15     _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:633:13)
#16     Compiler.compileSources. (package:dart_eval/src/eval/compiler/compiler.dart:482:15)
#17     _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:633:13)
#18     Compiler.compileSources (package:dart_eval/src/eval/compiler/compiler.dart:478:32)
#19     Compiler.compile (package:dart_eval/src/eval/compiler/compiler.dart:164:12)
#20     main. (file:///Users/tt/tech/flutter/flutterPro/flutter_eval/test/custom/widget/widget_test.dart:11:30)
#21     testWidgets.. (package:flutter_test/src/widget_tester.dart:168:29)

#22     TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1013:5)

(elided one frame from package:stack_trace)

same issue with controller. happens when you set the contollers text property


PowerToys Run gets error

Microsoft PowerToys version
0.82.0
Installation method
PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
PowerToys Run
Steps to reproduce
PowerToysReport_2024-07-07-12-03-30.zip
✔ Expected Behavior
No response
❌ Actual Behavior
No response
Other Software
No response

/dup #33504


Apex Tests

Need to have peer-review that tests are sufficient and not just meeting code coverage.

If you want to do use case test coverage per use case (recipe) you will need to have documented input and output expected values for assertions and create data factory to support creating recodes for use case.
This may be extra work with little value at this time but may reduce regression testing down the road when new features are added.


How to Handle Runtime Imports

Content
Currently, the runtime is required for the API, Gateway, and Web. Each of these services has a separate implementation to serve the static runtime assets. Would it be better to move this into it's own service?

Can be esbuild plugin?

Would it be better to move this into it's own service?

I'm not a fan of another service, because I can imagine heavily-firewalled instances where sometimes the service won't/can't be available across a boundary.


Exception: Latex error converting to dvi. See log output above or the log file: ./media\Tex\4475e3a270ecfb06.log

I tried to open the example scene WriteStuff, following the youtube tutorial (https://www.youtube.com/watch?time_continue=492&v=ZltiKHFWmv8&feature=emb_logo)
it worked for SquareToCircle but not for WriteStuff which tells me that latex is not working. I think it may have something to do with my path variables but im not too sure how they work. I have installed miktex only for my user, so i only changed user variables and not system variables. This is my path variable: C:\Users\Nakul Khambhati\AppData\Local\Programs\Python\Python37\Scripts;C:\Users\Nakul Khambhati\AppData\Local\Programs\Python\Python37;C:\MiKTeX 2.9\miktex\bin\x64;C:\FFmpeg\bin;C:\sox-14-4-2;
I tried reinstalling Miktex too but nothing seems to work. Can someone please help? I am interested in coding math videos.

There are a lot of problems like yours, both here on Github and Stackoverflow, check them out.


thread error

In the game, resolution switching often leads to thread interruption. Should timeout support customization
Exception in thread DXCamera:
Traceback (most recent call last):
File "D:\Python\Python37\lib\threading.py", line 926, in _bootstrap_inner
self.run()
File "D:\Python\Python37\lib\threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "F:\IdeaProjects\yolov5\venv\lib\site-packages\dxcam\dxcam.py", line 208, in __capture
self.stop()
File "F:\IdeaProjects\yolov5\venv\lib\site-packages\dxcam\dxcam.py", line 142, in stop
self.__thread.join(timeout=10)
File "D:\Python\Python37\lib\threading.py", line 1041, in join
raise RuntimeError("cannot join current thread")
RuntimeError: cannot join current thread

Traceback (most recent call last):
File "F:\IdeaProjects\yolov5\venv\lib\site-packages\dxcam\dxcam.py", line 179, in __capture
self.__frame_buffer[self.__head] = frame
ValueError: could not broadcast input array from shape (300,300,4) into shape (900,1600,4)

This should be a bug. It is necessary to change the screen resolution


Add Elixir

Hey Marijn!
We were looking to add Elixir support in our app and noticed that neither CM6 nor the legacy modes had support for it so thought I'd add it!
The code itself is mostly from this repo (https://github.com/sachinraja/codemirror-lang-elixir) which itself is a port of a CM5 equivalent. Thought it'd be worth vendoring it directly into the legacy-modes repo so that other people can use it and there's more visibility/exposure.
Cheers!

Given that the mode is already published and maintained, I don't see any reason to fork it into this repository. I'm trying to avoid the situation where all maintenance of modes has to go through me this time around, and it seems weird towards the author of that package to just fork a thing they are already publishing. So I don't think this is a good idea.

Fair enough! Was having some dependency issues with that package. Namely, the last published version, which was 5 mo old, was still depending on @codemirror/stream-parser 0.18 which was causing some conflicting dependencies to be installed so figured I could get around it by adding it upstream which would also have the benefit of it being more likely to be maintained since this package wasn't super widely used, but I see your point.


Missing Node Module: Chronos breaks latest Dockers

internal/modules/cjs/loader.js:905
throw err;
^
Error: Cannot find module '../../../../../node_modules/ngx-bootstrap/chronos'
Is thrown using the latest Docker nightly images (alpine & buster tags).

that is very odd. that should not be need in the release. That is a dev dependency (needed for building the angular frontend).
I'll take a look.

huh, i found the culprit.

Thanks a lot for the fast response, can confirm it works now (tested debian-buster).


Publish SNAPSHOTs directly to Maven Central

[x] Strip out publishing to TBD Artifactory
[x] Remove the OIDC config for Artifactory in the build workflow
[x] Add the profile in the mvn command to use ossrh

Hey @finn-block - I'm getting deploy errors; know what's going on here?
This run:
Error:  Failed to execute goal org.sonatype.plugins:nexus-staging-maven-plugin:1.7.0:deploy (injected-nexus-deploy) on project example-jvm-maven-impl: Failed to deploy artifacts: Could not transfer artifact xyz.block:example-jvm-maven-impl:jar.asc:0.0.0-20241213.043354-1 from/to ossrh-snapshots (https://s01.oss.sonatype.org/content/repositories/snapshots): status code: 401, reason phrase: Content access is protected by token (401) -> [Help 1]

You can see all changes in this PR. Token in secrets is correct? I also updated the value in secrets based on what you have in the 1P vault. I haven't regenerated a publishing token in Sonatype.

Done in 5f68a141624485318a1b4848950c28c3997b077d.
Confirmed in https://s01.oss.sonatype.org/content/repositories/snapshots/xyz/block/example-jvm-maven-api/:


Improved error wrapping and add support for object alias

Hi,
I needed object aliases so this PR adds that. It works the same as described in concept.md. It also adds some improvements to the error wrapping that helped debugging my deployment
I did initially set the k8s config to be keyvaultobjectaliases until I saw concept.md, let me know if you want it renamed.
fixes #51
fixes #66

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

Thanks for your contribution @jon-walton 🎉 Will review this PR shortly.

I did initially set the k8s config to be keyvaultobjectaliases until I saw concept.md, let me know if you want it renamed.

I think keyvaultobjectaliases is better as it is more consistent with other configs for each key vault object. Let's update this as concept.md is a bit out of date. Thanks @jon-walton!

thanks @ritazh , I've pushed a new commit containing your feedback


JS IntelliSense only picks up JSDoc @inherits rule in class definition but not on children or instances

TS Template added by @mjbvz
TypeScript Version: 4.1.0-dev.20201026
Search Terms

jsdoc

VSCode Version: 1.50.1
OS Version: 18.04

Steps to Reproduce:
I apologize if this is not the correct place for this issue, I tried hard finding the repository that is responsible for js intellisense.

Create a new js file
Copy below code into the file

function Mixin1 (base) {
  return class extends base {
    foo() {}
  }
}

function Mixin2 (base) {
  return class extends base {
    bar() {}
  }
}

class IntermediateDummyClass extends Mixin1(Object) {}

/**
 * @implements {IntermediateDummyClass}
 */
class Composite extends Mixin2(IntermediateDummyClass) {

}

let c = new Composite;

c.

Observe autocomplete suggestions - within Composite class both foo and bar are suggested

However when instantiated or extended only bar is picked up.

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

bump?


Fill one chart into an entire row on dashboard

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
I hope there is a way to change the size of the charts on the dashboard. Sometimes when my line/bar chart has a broader time frame  I'd hope it to fill out the entire row so the bars don't look super crowded.

Describe the solution you'd like
A clear and concise description of what you want to happen.
This is what I hope to happen: filling one chart into an entire row on the dashboard.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
N/A
Additional context
Add any other context or screenshots about the feature request here.

Hello @Max-beep I think you can. When Editing a Dashboard just drag the side of the Chart.


Cannot retreive authentication result

When a connection succeeds the socket is no longer in mute state and can queue outgoing messages via send. The problem is if the authentication failed the user will never know it: he has effectively no way of knowing if his credentials were misconfigured. Here is the issue I filled https://github.com/zeromq/libzmq/issues/3505.

Ideally we would want to modifit libzmq directly so that the sockets would in mute state until they are authenticated (as opposed to until they are connected), but that might not be possible.

But if we do that then thread safety is out the window.

Making connect calls blocking would remove the thread safe properties of the socket.

I filed an issue on the matter. I'll wait to see the response before going forward.

I've submitted this PR. If it is merged then we would need to create a ZMQ_SUB socket for every connect call and wait for handshake related events.

Really unsure about what the best solution would be.

Alright just got a good idea. Turns out that every authentication attempt hash to go throught our AuthHandler. This means I can intercept every call and generate events based on them. Then I can block until these events are received etc.

We should use the ZMQ_IDENTITY sockopt to identify the socket. We could generate a uuid4 upon creation the socket to use as a ZMQ_IDENTITY. This way the zap handler can associate a request to a socket.

So the solution, if I wasn't clear is to make the connect / bind call retrieve the handshake result, as opposed to the send call. This would mean that it is possible to queue messages to a not yet authenticated connection, but that's kinda similar to queueing messages to a not yet connected connection. This means that connect and bind calls would become blocking.
We would do this by generating events based on the ZAP requests sent to the AuthHandler. A given socket that is looking to connect would generate a ZMQ_IDENTITY. It would send that identity to the AuthHandler so that it can associate the identity with the routing_id. Then the socket would call connect or bind. Then it would block waiting for a response from the AuthHandler server. The AuthHandler would than intercept the ZapRequest, check if the identity frame is associated with a routing_id and if so send the result of the handshake to this routing_id.

My previous solution cannot work if you connect to an external socket. I think I will just create a monitoring socket per thread that will log authentication failures.

I created this PR that will allow use to use only one thread to log the monitor events from all sockets.

The PR was merged. I will create another issue for socket event monitoring.

We can also detect handshake events via the new SocketMonitor API.

Some kind of wait_handshake helper function would be ideal.

Conceptually a misconfiguration mechanism is indistinguishable from a missing endpoint. While it might be helpful from the application's perspective to detect misconfigure credentials, I can't really think of a good way to do so.

This can be fixed by #123


feat(demo-pdf): add Pdf demo

添加Pdf 示例, 原型来自：@Lanseria/vue-pdf-useinvite
更多详情请关注 https://github.com/Lanseria/vue-pdf-useinvite/issues/1 和 https://github.com/anncwb/vue-vben-admin/issues/1064,
示例文件引用参考 vite静态资源处理
General

✏ Mark the necessary items without changing the structure of the PR template.

[x] Pull request template structure not broken

Type

ℹ What types of changes does your code introduce?

👉 Put an x in the boxes that apply

[x] New feature (non-breaking change which adds functionality)

Checklist

ℹ Check all checkboxes - this will indicate that you have done everything in accordance with the rules in CONTRIBUTING.

👉 Put an x in the boxes that apply.

[ ] My code follows the style guidelines of this project
[ ] Is the code format correct
[ ] Is the git submission information standard?
[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

@jinmao88 目前是否有计划 加上 PDF预览的 计划？
不过这个 例子 并不是很好，即使它已用到生产环境。
有没有更好的 实现 PDF 预览的 demo ?

PDF有单独组件 自己找一下


Question on Function Summaries

Dear Sir/Madam
I have a question on function summary in Infer. Hope you can help.
Suppose I have written two checkers and the two checkers generate the same function summary in each function.
When analyzing a function, will Infer generate two summary copies for each checker, respectively? Or can Infer automatically infer that the two checkers have the same summary and only one summary copy is generated?
Thanks very much~

I am also curious about this.
From the aspects of abstract interpretation, in principle, I guess it is possible for two checkers (corresponding to two analysis domains?) to share and exchange information, such as the "reduced product construction".
However, exchanging information between domains requires them to  using a "common language", which may be hard to choose depending on the analysis domains.


bdd-spring-1557163552 to 0.0.1

Promote bdd-spring-1557163552 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Docs

Add snippets compiler
TODO:

[ ] Fix missing code after 2 new lines in the Playground slot
[ ] Add editable textarea in the Playground
[ ] Import civet compiler from dist, instead of exec node dist/civet -c tmp.civet

I looked some at the import issue.
In civet.dev/.vitepress/compileCivet.ts, I cannot import {compile} from '../../dist/main.js'; because then the import gets attempted in the browser (at least in Vite dev mode, which imports modules), and dist/main.js sets module.exports (CJS style) instead of exporting (ESM).
@STRd6 Are we OK with rewriting everything to be ESM? If we still want a CJS build (which I think is necessary for using the compiler in CJS contexts), we can use e.g. NPM package esm-cjs to rewrite exports back into module.exports. (The reverse is harder.) I did such conversion in this repo for example.

Another related problem is I think Prettier and Civet are both included in the main bundle and then included again (via unpkg) in the worker. So we're loading two copies of Prettier/Civet, which is not good.

Vite treeshakes imported Civet and Prettier in compileCivet.ts -> This packages are not included on client side. See the client build size in devtools network.

I'm less clear on how to import Civet from the worker, civet.dev/public/playground.worker.js. Should we load from unpkg.com, or copy the built main.js into public?

By copying the build to the vitepress public folder, we always have the newest version of compiler.
// TODO: Add version of civet to the __civet.js. Browser should request this file like this: /__civet,js?v=0.54.0 to avoid service worker caching.

Another thing: it seems like the site transpiles and rerenders all code samples on load / hydration. This seems wasteful, and less robust. (In particular, when things aren't working, all the code samples disappear.) I'd rather see code transpilation happen on when changing code. Is this possible?

Transpile and render code samples are done during the build process. You can disable JS and refresh the site to make sure of this.
This is the code to rerender on clinet side: https://github.com/DanielXMoore/Civet/pull/125/files#diff-5009f1b4a3d4e037a5e0781741f57f95af657682b868186fad68245e8949227fR52-R56


tree inference & data management

It is probably a good idea to run the steps incrementally, by which I mean: writing the alignments is a task that you can kill and then it resumes where it left of, until all families have an alignment. Same for the constraint trees: you probably want to have a tree for every alignment and store this in a folder structure. What you want to avoid is having to run everything in one giant loop that can never fail.
With that in mind, it's probably better to not have a temporary tree that has a throwaway name here, but rather have a system where the raxml run assumes that there is a constraint tree for every alignment (and they probably have the same name but with different extensions).

Think of it as a pipeline with different steps. You'd want to be able to do something like make alignments and it starts spitting out alignments, possibly in parallel. If you kill the job, it'll be able to pick up where you left off. If you do make subtrees it knows that it first needs to make alignments and make constraints, i.e. it needs to be aware of dependencies. This can be accomplished through a variety of workflow management tools, maybe the easiest one being SnakeMake.

Changed the temporary constraint tree to one that gets saved in a folder. Will make a new issue to make a snakemake pipeline/rewrite the code to be able to run in a snakemake pipeline.


Rename to kubewarden

Also ensure we use the latest release of the Rust SDK

I fixed the clippy warning


feat: add alchemy sub-package

This adds a new subpackage that can be used if you're interacting with Alchemy infrastructure exclusively.
The new AlchemyProvider handles all of the configuration that matches our Rundler and Gas Manager configs
and makes it easier to interact with alchemy in general.
TODO: Once PR is approved, update the README to include docs on how to use the new package + Provider (tests also serve as decent docs for now too)

Current dependencies on/for this PR:

main

PR #22   👈

This comment was auto-generated by Graphite.


Why can't I find a hello world example

Looked on the introduction page, examples, examples github directory, nothing.
Why is there no hello world example? :cry:

I don't know why there isn't one (probably, nobody thought of adding one), but here is a hello world, for now:
def main() = {
    println("Hello World!")
}

(Actually, there is one in examples/llvm/hello-world.effekt, but that file name causes problems with some backends, see https://github.com/effekt-lang/effekt/issues/149)

Probably, it would be good to start the (largely unmaintained) intro with a hello world.

(Ah, there is another well-hidden one at https://effekt-lang.org/docs/getting-started#recommended-workflow)

Addressed in effekt-lang/effekt-website#25.


Add withCredentials option to support cookies

pdfjs already supports withCredentials flag, so that the browser sends cookies when loading a pdf via url.

Added in latest release(v2.0.7)


Slow start up, asked to submit

VSCode Version: Code - Insiders 1.11.0-insider (4db944bc08e34fb15c5805927d9cb67470776606, 2017-03-02T07:10:18.838Z)
OS Version: Windows_NT ia32 10.0.14393
CPUs: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz (8 x 3592)
Memory (System): 31.94GB (10.43GB free)
Memory (Process): 147.13MB working set (149.44MB peak, 116.39MB private, 36.68MB shared)
Load (avg): 0, 0, 0
VM: 0%
Initial Startup: yes
Screen Reader: no
Empty Workspace: no
Timings:

Component
Task
Time (ms)

main
start => app.isReady
182

main
app.isReady => window.loadUrl()
401

renderer
window.loadUrl() => begin to require(workbench.main.js)
474

renderer
require(workbench.main.js)
919

renderer
create extension host => extensions onReady()
1682

renderer
restore viewlet
969

renderer
restore editor view state
536

renderer
overall workbench load
2407

main + renderer
start => extensions ready
3828

main + renderer
start => workbench ready
4402

:warning: Make sure to attach these files: :warning:
-`C:\Users\jason.schultz
b670_renderer.cpuprofile.txt
b670_main.cpuprofile.txt
b670_main.cpuprofile.txt -C:\Users\jason.schultz\b670_renderer.cpuprofile.txt`

Thanks for reporting. We have identified these perf issues from the traces

https://github.com/Microsoft/vscode/issues/22086
https://github.com/Microsoft/vscode/issues/22087


No option to make always visible crop layer painter

Unable to make always visible crop layer (The white thin line grid that is visible when cropping)
I used below code:
ExtendedImage(
    image: ExtendedFileImageProvider(
      widget.imageFile,
      cacheRawData: true,
      imageCacheName:
          DateTime.now().millisecondsSinceEpoch.toString(),
    ),
    extendedImageEditorKey: _editorKey,
    mode: ExtendedImageMode.editor,
    fit: BoxFit.contain,
    initEditorConfigHandler: (_) => EditorConfig(
      maxScale: 8.0,
      cropRectPadding: const EdgeInsets.all(20.0),
      hitTestSize: 20.0,
      cornerColor: Colors.white,
      editorMaskColorHandler: (_, __) => Colors.black,
      cornerSize: Size(24, 1.4),
    ),
  ),
)

override following code:
https://github.com/fluttercandies/extended_image/blob/3a05871ce95b9d2b0d9cd385b4136b73f4afd590/lib/src/editor/extended_image_editor_utils.dart#L661

@zmtzawqlp Thanks for the suggestion
It's working. need to make custom class by extending EditorCropLayerPainter
And also remove the if at extended_image/lib/src/editor/extended_image_editor_utils.dart


Enhance PCAP Command

Changes:

Start tcpdump commands in parallel, so the captures start at the same time on each VM

Uses the global --parallel parameter of the bosh-cli (which defaults to 5)

Allow for multiple Instance Groups/InstanceID capture targets, e.g.:
bosh -d cf pcap nats router/0 -o test.pcap

Overlaps between Instance Groups/IDs are handled gracefully (e.g. router router/0 will merge to router)

Reduce verbosity of pcap command
Show a table of all the VMs where the capture will be started and prompt if capturing should begin. Include a warning if the number of VMs is > 5 (-n/--non-interactive is supported):

./bosh pcap -d cf  -o test.pcap
[...]

Expected VMs for SSH capture

Job              IP         ID
uaa              <IP_ADDRESS>  d5033e83-5750-4e46-bc9c-e69d93cc107c
router           <IP_ADDRESS>   37747b53-7a56-460f-bdc7-f991d373cd7f
log-api          <IP_ADDRESS>  b65ed4a2-529c-45db-a0dc-50249f06e983
scheduler        <IP_ADDRESS>  da38fc60-6938-40d1-9e7d-0e65f313277c
router           <IP_ADDRESS>   5fff48d8-1456-4e7c-8a74-63f9b23096eb
cc-worker        <IP_ADDRESS>  9cd001cb-d1be-46c4-994d-6f53539710f4
diego-api        <IP_ADDRESS>  185b8031-0db4-4e19-92b5-05c7f7481d61
api              <IP_ADDRESS>  0cc45a0f-47ce-4a2d-9842-77a137de691d
doppler          <IP_ADDRESS>  b3054bbc-a02b-426f-9c3f-9f419888c8e5
nats             <IP_ADDRESS>   d6effa85-1cbd-4915-a5ff-93add8c77d4b
graphite-nozzle  <IP_ADDRESS>  9dccedaa-6138-4618-9ee9-56354f0af1ec
log-cache        <IP_ADDRESS>  1968bd85-f1fd-4007-9c94-8a83815f8124

Traffic on 12 VMs will be captured.

Warning: This could put a significant load on the BOSH Director. Use at your own discretion.

Continue? [yN]:

(Prompt can be omitted via -n/--non-interactive flag)
Correspondings docs PR: https://github.com/cloudfoundry/docs-bosh/pull/858

Thanks for the reviews everyone, could someone please hit the merge button?
(My team is from ARP WG so nobody has any permissions here 😅 )


Update the link of the GitHub Actions build status badge in README so that it reflects the build status of your team repo.

Added with #117


Shibuya distributed mode

A big one. Let me put them into smaller tasks:

[x] Local development environments. p0

[ ] Controller should have a leader as only one process should do the GC/progress check related work. (Maybe we can move the logic into worker as well)? p1

[ ] Allow Shibuya to be deployed as central or distributed mode. optional

[x] Current engine metric reading related logic should be extracted and built as a standalone container. This is essentially the worker. p0

[x] Communication between the controller and the worker. p0

[ ] Collect the metrics read by worker. p0

[ ] Worker release steps

c.resumeRunningPlans()
go c.streamToApi()
go c.readConnectedEngines()
go c.checkRunningThenTerminate()
go c.fetchEngineMetrics()
go c.cleanLocalStore()
go c.autoPurgeDeployments()

Because of these goroutines, currently controller is not stateless. This is the path we can follow:
[1]. If all of the stateful logic could be moved to workers.
[2]. If not, then some kind of leader election might be required. So only the leader will do the stateful work and others will just handle API requests.
If we need 2, then we need to consider what happens during leader election, for example, during release or the leader goes down.
resumeRunningPlans

This is required for continue reading the metrics when the controller process gets restarted. [1]
streamToApi

This is for raw metrics streaming. Currently the metrics are collected in heap memory. We need the workers to report the metrics to a broker(Redis is a good candidate) and let the controller be the consumer. [1]
checkRunningThenTerminate

We track the progress of running plan and stop(gc) everything when the duration is reached. Currently we fetch all the running plans. Seems pretty difficult to move such logic into worker. [2]
fetchEngineMetrics

This is for showing the engine metric usage in the executors side. Currently we fetch all the engines by GetDeployedCollection method. Also difficult to move to workers. [2]
cleanLocalStore

This is to clean Prom data. Easy to move. [1]
autoPurgeDeployments

This is the GC process to clean idle engines. We use GetDeployedCollection to all the engines and then filter. [2]

Before going into details, there are also some items needs to done.
-[] Move some controller logic into a separate process. The process also requires its runtime(Dockerfile). We want to unify the runtime with other components.
-[] Use helm to deploy the whole package(controller, api, etc) to the cluster


SiteMap automatically adds to app when using swagger

Steps

Create WebAPP
Add Swagger
Do not add sitemap to IoC

Expected result
No sitemap controllers at swagger docs.
Actual result
Sitemap is visible at swagger docs.

Remove sitemap controller from package and added service instead of.


tensorflow.python.framework.errors_impl.NotFoundError:

Thank you for your sharing! Errors occurred when I ran main_train.py.
It seems that there are something wrong with the compiling. But I can't find what happened.
My environment is: python3.6+tensorflow1.4+gcc7.3 +cuda8.0

Hi @fxy2012 , I would suggest you use python 2.7.  I guess the tf.ops  are not successfully built, be careful to specify the correct paths to tf versions when you compile them.

Thank you for your reply. And should I use tensorflow 1.2 to be compatitive with python2.7 ?

hi @fxy2012, either 1.2 or 1.4 should be fine. Yeah, use python 2.7.

Have you solved this problem? I modified "tf_sampling_compile.sh" like below but I still get this problem. I use python 2.7 and tf1.2
`#/bin/bash
/usr/local/cuda-8.0/bin/nvcc tf_sampling_g.cu -o tf_sampling_g.cu.o -c -O2 -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC
py27 + TF1.2
g++ -std=c++11 tf_sampling.cpp tf_sampling_g.cu.o -o tf_sampling_so.so -shared -fPIC -I /home/rose/anaconda3/envs/3DBoNet/lib/python2.7/site-packages/tensorflow/include -I /usr/local/cuda-8.0/include -lcudart -L /usr/local/cuda-8.0/lib64/ -O2 -D_GLIBCXX_USE_CXX11_ABI=0`

You should compile all the. sh files which are in other folders, such as grouping folder . ------------------ 原始邮件 ------------------
发件人<EMAIL_ADDRESS>发送时间: 2020年1月8日(星期三) 下午5:41
收件人<EMAIL_ADDRESS>抄送: "fxy2012"873698907<EMAIL_ADDRESS>主题: Re: [Yang7879/3D-BoNet]tensorflow.python.framework.errors_impl.NotFoundError: (#17)
Have you solved this problem? I modified "tf_sampling_compile.sh" like below but I still get this problem. I use python 2.7 and tf1.2
`#/bin/bash
/usr/local/cuda-8.0/bin/nvcc tf_sampling_g.cu -o tf_sampling_g.cu.o -c -O2 -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC
py27 + TF1.2
g++ -std=c++11 tf_sampling.cpp tf_sampling_g.cu.o -o tf_sampling_so.so -shared -fPIC -I /home/rose/anaconda3/envs/3DBoNet/lib/python2.7/site-packages/tensorflow/include -I /usr/local/cuda-8.0/include -lcudart -L /usr/local/cuda-8.0/lib64/ -O2 -D_GLIBCXX_USE_CXX11_ABI=0`
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thank you:) @fxy2012


updated committee

changed committee signatories and members to new team

Protip: set up something like this to keep repos clean


Terminal link tooltip location is wrong under the DOM renderer

The underline also isn't appearing

I also encountered this problem on Ubuntu 16.04, underline is not displayed on std input , and std output for Terminal. Hope can be fixed.
Version 1.24.1
Commit 24f62626b222e9a8313213fb64b10d741a326288
Date 2018-06-13T17:47:35.732Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64

Regarding the underline don't appearing I'm trying this solution https://github.com/agurodriguez/xterm.js/commit/be4142d79582765600229103cb7a1e1bc2ac9058, and it seems to work (I'm going to sleep right now, but tomorrow I'll make some testing).
Do you think it's a feasible solution?

@agurodriguez , we probably don't want to handle the tooltip location in xterm.js since xterm.js should just be providing all the info it has in the mouse event without making specific assumptions about how that info will be used. I'll let @Tyriar comment on the underline 😊

@agurodriguez I made some comments on the underline, looks pretty close to what we're after. I created https://github.com/xtermjs/xterm.js/issues/1704 to track this, a PR would be fantastic! You would also want to remove the line in xterm.d.ts that says link underlines are not supported.

Underline don't appearing was fixed in https://github.com/xtermjs/xterm.js/pull/1705
We should wait for xterm's 3.8.0 release in order to update vscode and close this issue, right?

@agurodriguez I've already pulled in your changes, we'll close this off when https://github.com/Microsoft/vscode/pull/59060 is merged.

Hmm, something is still a bit off, mousing over and pausing on the bottom few pixels will show the tooltip in the correct position but the pixels above will show the tooltip where it should be for the line above 🤔

I still have no idea why this is happening but this is what I got so far:
Target of the mousedown event in the expected behavior scenario:

The span right below the span where I had the pointer

Target of the mousedown event in the unexpected behavior scenario:

The actual span where I had the pointer

PR out upstream which should fix this: https://github.com/xtermjs/xterm.js/pull/1716

I can no longer reproduce.


Update localization files

These are the translations from PR #1267 - notably they contain translations for the new speed limits UI.
Contributors: Chamëleon, MenschLennart, John Deehe, Skazov, AlexofCA, CrankyAnt, Иван Соколов, AduitSSH, John Lok Ho, DNSE, shg166, GiorgioHerbie, footbool, krzychu124, aubergine18, Dmytro Lytovchenko, Fizzy_LaFizz, Vladimír Krajč, alvaroer, Mahmoud Al Gammal, ipd, 田七不甜, vitalii201, 許景翔, Mehmet Ömer Tüzer, vicugna-pacos, kianzarrin, Mbyron26, Headspike, lennier3, kevinlin18, Ikki_di_Phoenix

I noticed couple of unapproved tranlations on Crowdin 😕 Approving...

Done! You can rebuild translations and update PR

@krzychu124 I've done rebuild and download, but github is saying there's no changes since the last commit. :/ Which is odd cosidering there should be 40+ changes. Not sure what's happening there; think my git client is fubar again.

translations updated, merging


How to regex replace strings?

Hey, great project but was wondering if it is possible to perform regex replacements in values like commit messages.
Something like {{ commit.message | replace(from="#(\d+)", to="") }} to turn Update dependencies (#57) into Update dependencies

Tera already has a built-in filter called replace but it doesn't support regex. There's already a tracking issue: Keats/tera#421

Closing due to being Tera related.


viewmore-textview is not working in recycler view.

I really want to use this in my RecyclerView but my app is crashing.

i meet the same problem, is there any workaround?


Capture messages from users with team prefixes

Is your feature request related to a problem?
I guess it could be called a "problem". When a person is joined to a team, the prefix/suffix stops the messages from being captured.
The suggestion
To capture the user, even with a prefix/suffix. Maybe grabbing the UUID from the chat message instead? Or just capturing the way most prefixes are added (I personally use [ ] to show the prefix), and removing them from the user name, and any whitespace.
Alternatives
Right now, the alternative is to just not use it. I don't mind doing that personally, but some servers rely on it heavily. Donor perks, clearly indicating staff, etc.

Is there a specific setting I'm missing for this? Still doesn't seem to capture the chat messages in MC when the prefix is there. I had a look at the code, and looks like team messages are true. Below screenshot shows nothing in Discord.

Is there a specific setting I'm missing for this? Still doesn't seem to capture the chat messages in MC when the prefix is there. I had a look at the code, and looks like team messages are true. Below screenshot shows nothing in Discord.


Scan document from Gallery in google_mlkit_document_scanner

Title
In google_mlkit_document_scanner, I failed to enable document scanning from Gallery Instead of Camera
Description
In the google_mlkit_document_scanner package, I need to scan documents from the gallery instead of using the camera. I have set the boolean isGalleryImport to true in the source code, which is based on the ML Kit example. However, there is no gallery icon button visible to press for importing images from the gallery.
To Reproduce
Steps to reproduce the behavior:

Clone google_ml_kit_flutter from github repository
cd to google_ml_kit_flutter/packages/example
Edit packages/example/lib/vision_detector_views/document_scanner_view.dart: Change isGalleryImport to true

Run flutter build apk and then flutter install to launch ML Kit Flutter example on real Android device
See error: There is no gallery icon button to press for importing images from the gallery even after setting isGalleryImport to true.

Screenshots

Expected behavior
Appear Gallery icon button to pick image from Gallery
Platform:

OS: Android
Device: Samsung Galaxy A50
OS: Android 11
Flutter/Dart Version: Flutter 3.19.6 • channel stable
Plugin version: google_mlkit_document_scanner 0.2.0

This is the result of a test I made.
This seems to be working on my end.
Every possibility is can be from the device itself @loveoverflowdev


Minification in dev

How can I apply minification when running npm run dev on every file change? I don't want to use the production variant each time I'm finished with the changes.

You can’t. Why would you want minified code for development?

You can do this, just change the scripts in the package.json file and change the node environment.


v2016R2

WIP, will implement v2016R2 when finished. This isn't too far off. This version is pretty close to the 2016R beta, although it requires a small set of stochastic variables to be included, then a bit more post processing.
The initial commit here refactors ignoring these additions. This makes the files align a bit better, but in the end things may need to completely separate. We shall see.

We need to verify all input since our results aren't 1:1 with the gams version. That being said, our previous optimisations were better than gams, so it could be just that.
After then, we need to allow for restarts of the build process, since this takes some time.
Also, refactor how and where files are dumped.

Will need to consider if it's worth updating this since #20 has merged. May be a better idea to start afresh.

Closing in favour of #31.


Typo in userguide/projects documentation

https://secure.phabricator.com/book/phabcontrib/article/contributing_code/#no-pull-requests


Connecting basic types wrong should error in chisel

Currently error messages for these cases come from firrtl
Tests implemented for incorrect connection between UInt, SInt, and FixedPoint

Anything else missing on this pull request or is it safe to merge?


routinator exiting

Hi,
I am running  Routinator 0.13.2 in a FreeBSD 13.3-RELEASE-p2 vnet jail.
I have built the binary from source.
Every other day or so  the following happens:
From /var/log/messages
Jun  2 02:30:21 XX  routinator[64012]: Fatal: failed to move /var/spool/routinator/repository/stored/tmp/29f396a2 to /var/spool/routinator/repository/stored/rrdp/rrdp.apnic.net/020675249928c63c162a11d00ab299c0b2d0e2c3ca4d27a8ebf933ace26a66a6/rsync/rpki.apnic.net/repository/B527EF581D6611E2BB468F7C72FD1FF2/DmWk9f02tb1o6zySNAiXjJB6p58.mft: No such file or directory (os error 2)
Jun  2 02:30:23 XX routinator[64012]: Fatal error. Exiting.
Please advice
/ Mats Mellstrand

That’s certainly very odd. If it happens again, can you perchance check whether the target directory (i.e., in your example /var/spool/routinator/repository/stored/rrdp/rrdp.apnic.net/020675249928c63c162a11d00ab299c0b2d0e2c3ca4d27a8ebf933ace26a66a6/rsync/rpki.apnic.net/repository) exists? And perhaps also whether the source file is still there?

Hi
Sorry for late answer.
It happend again.
And the directory do exist and the source file is still there.
/mm

On 3 Jun 2024, at 17:09, Martin Hoffmann @.***> wrote:
That’s certainly very odd. If it happens again, can you perchance check whether the target directory (i.e., in your example /var/spool/routinator/repository/stored/rrdp/rrdp.apnic.net/020675249928c63c162a11d00ab299c0b2d0e2c3ca4d27a8ebf933ace26a66a6/rsync/rpki.apnic.net/repository) exists? And perhaps also whether the source file is still there?
—
Reply to this email directly, view it on GitHub https://github.com/NLnetLabs/routinator/issues/960#issuecomment-2145448596, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA2U6DMXFE5NNYKGB6SZWPTZFSBKXAVCNFSM6AAAAABIUXQSN2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBVGQ2DQNJZGY.
You are receiving this because you authored the thread.


Ensures that files not present in build are deleted from website

This should fix #127.

How do we know if this works?

The test indeed doesn't show that prior to merging, though merging it will rebuild the website, which should include some deletions. I did test it (successfully) on my local machine though.


Fix reading bcwqg from bcdata; minor fixes; developer documentation

This is a collection of fixes to make read_bc_wqg() work with the updated data in the BC Data Catalogue.
It also fixes tests to adjust to upstream changes in ssdtools resulting in minor changes to calculated values.
It improves the documentation for updating the internal data when the Ecotox database is updated; there is an accompanying PR for shinywqbench.
Finally, it updates the version of the Ecotox database used in the documentation.

@atillmanns I'm going to merge this, then open a new PR with the update process changes


winshift is missing

Can remove or replace the commands. Guessing you use the built-in ctrl-w for moving windows around?

nice catch. I barely move windows around so I didn't noticed this fail for a long time... I replaced the hydra heads with normal c-w bindings. Trying to minimize plugin count 🤣


wslgit : Shim "wslgit.exe" as "git"

I am strictly against this change as for most of the users this is not suitable.
If you want to achieve such use case, configure the shim on your own manually.

This is a very opinionated change. I would suggest hosting this in your own repo, as most people won’t want this.


feat(manager): Add forbiddenAnnotations,forbiddenLabels to serviceOptions

Forbidden Service labels/annotations for tenant.
Commit contains some refactoring to easy re-use metadata forbidden validation for any type of resource (Namespace, Service etc.)
closes #893
This PR contains changes related to this issue.

@CharlieR-o-o-t I improved the e2e test suite for the GH runners, may I ask you to rebase over main, please?


Add Barcelona Urban Mobility API

Add the Barcelona Urban Mobility API, which includes information about bus stops, metro stations and bike stations of the city of Barcelona.
Test it here: https://barcelona-urban-mobility-graphql-api.netlify.app/graphql
Repository: https://github.com/aalises/barcelona-urban-mobility-graphql-api

@aalises Thanks, I just move this API into the "Unofficial APIs" section.


[HUDI-2534] Remove the sort operation when bulk_insert in batch mode

Tips

Thank you very much for contributing to Apache Hudi.
Please review https://hudi.apache.org/contribute/how-to-contribute before opening a pull request.

What is the purpose of the pull request
(For example: This pull request adds quick-start document.)
Brief change log
(for example:)

Modify AnnotationLocation checkstyle rule in checkstyle.xml

Verify this pull request
(Please pick either of the following options)
This pull request is a trivial rework / code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end.
Added HoodieClientWriteTest to verify the change.
Manually verified the change by running a job locally.

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

It's weird that the spark have 7 tests failure, but i did not even touch any spark or core code, and i could not re-produce theses failures in my local tests, so i would just merge the code.


safe-rm stops working on Linux

Hi @kaelzhang ,
Thank you for your great job done here! However recently I found safe-rm does not work anymore on Linux while it still works on my macOS.
Reproduction:

Install
$ npm i -g safe-rm
$ alias rm='safe-rm' // added to ~/.zshrc since I am using zsh

Make sure alias works
$ alias
// outputs: rm=safe-rm

Test deleting
$ touch a.txt
$ rm a.txt
// a.txt not found in Trash

$ touch a.txt
$ safe-rm a.txt
// a.txt not found in Trash
I also tried both zsh and bash, got the same result.
Please help check this out since it's really terrifying to find it not working anymore lol.
Thanks.
Env:
OS: Manjaro 20.1.2 Mikah
Kernel: x86_64 Linux 5.4.72-1-MANJARO
Shell: zsh 5.8
Resolution: 3840x1080
DE: GNOME 3.36.4

Not an issue. I created the alias, safe-rm binary does exist. But the node_modules/safe-rm were broken. So it didn't work.
Surprised there is no error though /usr/lib/node_modules/safe-rm/bin/rm.sh does not exist :-)


Transaction

Please correct the following validation errors and try again. For 'seqno': Value must be an integer.

Collaboration


stage0: re-evaluate tpm.Extend in critical path

Capturing discussion in https://github.com/coreos/rkt/pull/1775#discussion-diff-46232055 : I raised the concern that the tpm.Extend operation is happening during the critical path of container instantiation.
Currently we just try to log in the TPM in every case (irrespective of whether rkt is built with/without TPM support, and whether there happens to be a local TSPI service running), and ignore any error returned by the operation. However, this involves an HTTP request which could fail in arbitrary ways, and potentially time out, etc.
We should deal with this more thoughtfully, especially as we consider adding TPM support to the default build. This will also set us up to deal with the eventual future where we will want to fail hard if the TPM operation does not succeed.

If I listen to the tpmd port I can block the execution of subsequent rkt runs:

$ sudo rkt run coreos.com/etcd:v2.0.10
rkt: using image from local store for image name coreos.com/rkt/stage1-coreos:0.15.0+git2776960
rkt: using image from local store for image name coreos.com/etcd:v2.0.10
[stays there...]
This is unfortunate because it's an unprivileged port:
$ nc localhost -l -p 12041
POST /v1/extend HTTP/1.1
Host: localhost:12041
User-Agent: Go-http-client/1.1
Content-Length: 799
Content-Type: application/json
Accept-Encoding: gzip

{"Pcr":15,"Eventtype":4096,"Data":null,"Event":"rkt: Rootfs: sha512-bd90da08a4dccea41d0a8258b213b86e3ec98c28f1cd6425e34aad42ad3ad53d Manifest: {\"acVersion\":\"0.15.0+git2776960\",\"acKind\":\"PodManifest\",\"apps\":[{\"name\":\"etcd\",\"image\":{\"name\":\"coreos.com/etcd\",\"id\":\"sha512-c03b055d02e51e36f44a2be436eb77d5b0fbbbe37c00851188d8798912e8508a\",\"labels\":[{\"name\":\"os\",\"value\":\"linux\"},{\"name\":\"arch\",\"value\":\"amd64\"},{\"name\":\"version\",\"value\":\"v2.0.10\"}]},\"app\":{\"exec\":[\"/etcd\"],\"user\":\"0\",\"group\":\"0\"}}],\"volumes\":null,\"isolators\":null,\"annotations\":null,\"ports\":[]} Stage 1 args: /var/lib/rkt/pods/run/44d625f5-f524-4023-9868-f13221bd1036/stage1/rootfs/init --net=default --local-config=/etc/rkt 44d625f5-f524-4023-9868-f13221bd1036"}

Ick. Maybe for now we should set a connection timeout and fail hard?

The solution could be to get tpmd to listen on a privileged port. See https://github.com/coreos/go-tspi/issues/3

We still need to deal with unexpected/bad services listening on that port..
On Tue, Jan 19, 2016 at 8:42 PM, Alban Crequy<EMAIL_ADDRESS>wrote:

The solution could be to get tpmd to listen on a privileged port. See
coreos/go-tspi#3 https://github.com/coreos/go-tspi/issues/3
—
Reply to this email directly or view it on GitHub
https://github.com/coreos/rkt/issues/1816#issuecomment-172963518.

Let's continue discussing this for 1.0.

So we could fix this if tpmd listens on a privileged port and we implement some kind of timeout, right?

I would like to see the timeout for 1.0.

https://github.com/coreos/go-tspi/pull/4

I would like to see the timeout for 1.0.

We still need to decide whether to enable tpm on the release binary.


Add ErrorBoundaryProvider to prevent page crashes upon errors thrown in blocks

By switching to SSR instead of SSG, an error thrown in a block causes the entire page to crash (white screen). We prevent this by wrapping each block in an error boundary, which prevents the page crash in production. For local development the error is still thrown.
The caught error should be reported to an error reporting tool, for instance, Sentry. This can be configured in the application. It may be possible to integrate this into the central warning system in the future (see COM-904).

PR Checklist

[x] Verify if the change requires a changeset. See CONTRIBUTING.md
[x] Link to the respective task if one exists: COM-808
[x] Provide screenshots/screencasts if the change contains visual changes

Screenshots/screencasts
In this case I threw an error in the RichtextBlock:

Local Error:

"Prod" Error:
(First Block Richtext Block is invisible, and there is an error log in the console)

Shouldn't we throw an error during local development instead of rendering the red box? This would ensure that the error isn't neglected.

Shouldn't we throw an error during local development instead of rendering the red box? This would ensure that the error isn't neglected.

For me, both would achieve the same thing, just in a different way. I think if you deliberately ignore it, you simply remove the block where it crashes then.
So throwing the error locally is okay for me too. Would you throw the Error in the ErrorBoundary itself (in the library) or let the application fully handle the error-handling?

So throwing the error locally is okay for me too. Would you throw the Error in the ErrorBoundary itself (in the library) or let the application fully handle the error-handling? I'd implement it in the Library.

I'd re-throw the the error with additional information in the error boundary.

@johnnyomair
How this error currently would be displayed:
Error:

Log

@johnnyomair @nsams
I have adjusted the PR as discussed in the meeting. I also updated the description and screenshots.

@nsams is the PR okay for you too?


Improve client generation failure messages at the client level

In certain circumstances where the reason is clearly known (e.g., trying to generate the client when there are tables that have FKs to unelectrified tables) the current message at the client level is:
...
Error: Error in connector: Error querying the database: Error querying the database: The server terminated the connection.
...

It would be a much nicer DX to have the message, which is clearly visible in the electric server logs, returned to the client so the developer can see without going looking for logs elsewhere.

👋 we've been working the last month on a rebuild of the Electric server over at a temporary repo https://github.com/electric-sql/electric-next/
You can read more about why we made the decision at https://next.electric-sql.com/about
We're really excited about all the new possibilities the new server brings and we hope you'll check it out soon and give us your feedback.
We're now moving the temporary repo back here. As part of that migration we're closing all the old issues and PRs. We really appreciate you taking the time to investigate and report this issue!