Add ability to capture variables from test scope

I'm in the position where I have to generate random combinations of a fixed length string and then run a parser function on them and compare the result of the function with a known value. However, if the assertion fails, I don't know what was in the string that failed to be parsed.
I remember that in Catch there was a macro called CAPTURE or something like that. Which allowed me to see the contents of that variable in case an assertion macro failed in that scope.
Is there something similar in doctest or a way to implement it? I can't seem to find anything related in the reference or tutorials.

This is planned - in the roadmap. I plan on implementing some more features in 2-3 months for version 1.2.
Here is a hack you could use for now:

template<typename T>
struct WithContext {
    const T& in;
    std::string context;

    WithContext(const T& _in, const std::string& _context = "")
        : in(_in) , context(_context) {}

    operator const T&() const { return in; }
};

template<typename T> bool operator==(const WithContext<T>& lhs, const T& rhs){ return lhs.in == rhs; }
template<typename T> bool operator==(const T& lhs, const WithContext<T>& rhs){ return lhs == rhs.in; }
template<typename T> bool operator!=(const WithContext<T>& lhs, const T& rhs){ return lhs.in != rhs; }
template<typename T> bool operator!=(const T& lhs, const WithContext<T>& rhs){ return lhs != rhs.in; }
template<typename T> bool operator< (const WithContext<T>& lhs, const T& rhs){ return lhs.in <  rhs; }
template<typename T> bool operator< (const T& lhs, const WithContext<T>& rhs){ return lhs <  rhs.in; }
template<typename T> bool operator> (const WithContext<T>& lhs, const T& rhs){ return lhs.in >  rhs; }
template<typename T> bool operator> (const T& lhs, const WithContext<T>& rhs){ return lhs >  rhs.in; }
template<typename T> bool operator<=(const WithContext<T>& lhs, const T& rhs){ return lhs.in <= rhs; }
template<typename T> bool operator<=(const T& lhs, const WithContext<T>& rhs){ return lhs <= rhs.in; }
template<typename T> bool operator>=(const WithContext<T>& lhs, const T& rhs){ return lhs.in >= rhs; }
template<typename T> bool operator>=(const T& lhs, const WithContext<T>& rhs){ return lhs >= rhs.in; }

template <typename T>
std::ostream& operator<<(std::ostream& stream, const WithContext<T>& in) {
    stream << in.in << " <context:\"" << in.context << "\">";
    return stream;
}

And you could use it like this:
TEST_CASE("") {
    WithContext<int> value(6, "this should be 5");
    CHECK(value == 5);
}

and the output would be this:
with expansion:
  CHECK( 6 <context:"this should be 5"> == 5 )

This is implemented in the dev branch - check out the documentation


Errors Configuring Underlying Tomcat Server to use HTTPS without Client Auth

The problem arises when the keystore is properly set (location, password and alias) but no truststore is set. I get a file not found exception because it's looking for a file with name "null" (stack trace at end).
Also of note, Tomcat isn't currently using the truststore because TomcatServer.java isn't set to use ClientAuth[1]. It would be nice to have this exposed as a TomcatSettings Property.
[1] https://github.com/decebals/pippo/blob/93f71655481f3133310019317d90467485f37e1f/pippo-tomcat/src/main/java/ro/pippo/tomcat/TomcatServer.java#L113-L113
SEVERE: Failed to load keystore type JKS with path null due to /Users/jpercivall/projects/edge/nifi-minifi/minifi-nar-bundles/minifi-framework-bundle/minifi-framework/minifi-runtime/target/tomcat_home/null (No such file or directory)
java.io.FileNotFoundException: /Users/jpercivall/projects/edge/nifi-minifi/minifi-nar-bundles/minifi-framework-bundle/minifi-framework/minifi-runtime/target/tomcat_home/null (No such file or directory)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.(FileInputStream.java:138)
at java.io.FileInputStream.(FileInputStream.java:93)
at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:90)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:188)
at org.apache.tomcat.util.file.ConfigFileLoader.getInputStream(ConfigFileLoader.java:74)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getStore(JSSESocketFactory.java:444)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getTrustStore(JSSESocketFactory.java:407)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getTrustManagers(JSSESocketFactory.java:658)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getTrustManagers(JSSESocketFactory.java:570)
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:360)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:742)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:457)
at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:120)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:960)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:567)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:851)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
at org.apache.catalina.startup.Tomcat.start(Tomcat.java:337)
at ro.pippo.tomcat.TomcatServer.start(TomcatServer.java:86)
at ro.pippo.core.Pippo.start(Pippo.java:76)
at org.apache.nifi.minifi.configuration.RestChangeListener$RunServer.run(RestChangeListener.java:172)
at java.lang.Thread.run(Thread.java:745)

Now the "clientAuth" attribute is configurable. Also I released a new SNAPSHOT version.
Please tell me if you need other modifications.

Awesome, I may just be missing it but does this address the other part of the issue that not passing in a truststore currently leads to errors?

I don't use Tomcat in my projects so I am not a Tomcat expert. Maybe @danjee can help us.

My guess would be that you only set them when client auth is used, like so:
if (getSettings().getClientAuth()){
          connector.setAttribute("truststoreFile", getSettings().getTruststoreFile());
          connector.setAttribute("truststorePass", getSettings().getTruststorePassword());
}

I cannot test your code. Please fork Pippo, make modifications and test these modifications on your computer. If everything is OK please submit a PR or tell us what is wrong in the actual code.

I will have a look at it. If your stores are self signed would you please share them with us. Thank you

@JPercivall If the issue is resolved please close it.

Closing - Thanks @decebals

You are welcome!
I updated the SNAPSHOT version to contain this fix.


fix: modal alignment issue

check https://linear.app/rainbow/issue/RNBW-3914/modal-misalignment for deets

legend


Set large value in setCutoff function will disable current trader's address

We should add require(parameter <= block.timestamp) in setCutoff method.
If a large value is set in this function, only larger value will be accepted.
So it will prevent this address to give orders forever.

OK


Possibly unnecessary expiresAt function

We have a function that calculates the expiresAt Date from the expires_in seconds, althought according to the docs we already get the expires_at timestamp with the AuthResponse. So can we just use this property?
https://github.com/vue-gapi/vue-gapi/blob/7e5498c92a362f6ff870a88b3a07653322e41f89/src/GoogleAuthService/utils.js#L25-L35

Yeah, good call! I'm seeing that on inspection of authResponse as well.

Yeah, good call! I'm seeing that on inspection of authResponse as well.


Add BTC2x-FLI Directory

Adding BTC2x-FLI views to repo.

Hey @Sidheartx awesome to see this PR started!
Can you actually put files for the BTC2x-FLI dashboard in the following folder structure product/btc2xbtc2x-product-dash/ so we can maintain consistency with other folder structures in the project?
And do you have a dashboard up with these views so we can see them in one place and review / test?
@jorijnsmit for visibility

@josephd8 sorry didn't mention the dashboard - its here https://duneanalytics.com/sidhemraj/BTC2x-FLI-Product-DashBoard. Will change the directory structure.

@Sidheartx - in this PR there are a lot of queries that are also in the kpis/index-coop-kpis-dash - are these actually different, or just copies in your account?
If it's the former, then we don't need to include them here. If it is the latter, then lets actually update the query files in kpis/index-coop-kpis-dash

@Sidheartx - in this PR there are a lot of queries that are also in the kpis/index-coop-kpis-dash - are these actually different, or just copies in your account?
If it's the former, then we don't need to include them here. If it is the latter, then lets actually update the query files in kpis/index-coop-kpis-dash
@josephd8 i've deleted the queries which seemed repeated from the PR.


Document tedge_actors crate

Proposed changes
Documentation improvements [WIP]:

[x] overall crate documentation lib.rs
[ ] Actor
[ ] Message Boxes
[ ] Builder
[ ] Runtime
[ ] Internal
[x] Test helpers

Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Improvement (general improvements like code refactoring that doesn't explicitly fix a bug or add any new functionality)
[x] Documentation Update (if none of the other choices apply)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Paste Link to the issue

Checklist

[x] I have read the CONTRIBUTING doc
[x] I have signed the CLA (in all commits with git commit -s)
[x] I ran cargo fmt as mentioned in CODING_GUIDELINES
[x] I used cargo clippy as mentioned in CODING_GUIDELINES
[ ] I have added tests that prove my fix is effective or that my feature works
[x] I have added necessary documentation (if appropriate)

Further comments

There are still references to the old service concept which was renamed as server recently(I hope I have spotted and highlighted them all)

Yes, it seems I messed up things while rebasing. Fixed.

The terms actor builder and message box builders are still used inconsistently. We probably need to stick to one (probably the former)

Agree. I will stick on the actor builder term.


Code sample on website / README doesn't actually compile?

The code sample at the top of the README doesn't actually compile, should it? Seems like it would need to be changed to this:
IO.print("Hello, world!")

class Wren {
  adjectives { ["small", "clean", "fast"] }
  languageType { "scripting" }
}

Eek, you're right! That's what I get for writing that sample before I implemented most of the language!


peek blocks after read on windows

Hi! I wanted to continue the issue of https://github.com/tokio-rs/tokio/issues/3789
I used the following code as reproduction:
use tokio::io::AsyncReadExt;

#[tokio::main]
async fn main() -> std::io::Result<()> {
    let listener = tokio::net::TcpListener::bind("<IP_ADDRESS>:2222").await?;

    loop {
        let (mut socket, _) = listener.accept().await?;

        tokio::spawn(async move {
            let mut buf = [0; 1];
            let _ = socket.read(&mut buf).await;
            let _ = socket.peek(&mut buf).await;
        });
    }
}

So I don't know much about Tokio internals, but I spent the last couple of hours debugging.
I found that the waker for the Readiness future used by peek is never called after there was one call to read. Digging deeper the GetQueuedCompletionStatusEx is blocking when issuing the peek after read.
I think this is because Windows doesn't know we are interested by READABLE because peek never registers the fact that it has the READABLE interest at the OS level. It does register the interest at the ScheduledIO level but we never get there obviously because the thread is parked.
When we issue a read we use the IoSourceState which reregisters our interests with the IOCP if it would block, but when we peek we directly use the STD IO. See:
https://github.com/tokio-rs/mio/blob/08ee541bf00c2cc81f9acc5486851ca1d59c25a3/src/net/tcp/stream.rs#L210-L212
I think the fix is to use  IoSourceState::do_io when we peek, but I must test it.

Can you reproduce the error with Mio types (not Tokio)?

If you look at the other issue someone did indeed reproduce it only with mio

If you look at the other issue someone did indeed reproduce it only with mio

Then why do you include an example using Tokio in an issue for Mio?

I am sorry this is the first time I try to contribute to the project, the line between the projects were still a bit blurry to me. It was just a simpler example for me to use. I figured I could try to help since the original issue didn't get much traction.

Since we are not sure who's fault it is, I will close the issue for now. If someone has the same problem feel free to re-open with a proper mio example.

I left a comment in the Tokio thread, but if there is a problem with Mio then I still like to know, so feel free to reopen when/if it's clear it a problem with Mio.

I commented back, unsure if I have enough knowledge to create a reproduction. I didn't see any test around peek in mio though, so at the very least adding a test to confirm that mio is working as intended would be good. That would need to check that:

There is a first readiness event on first data
Test does a peek -> Receives data
Test does a read -> Receives data
Test does a peek -> Receives WouldBlock
New data is in the socket
There is no readiness event sent by mio

If and only if this is the case for all platform would I consider mio "bug free". I highly suspect that the last check will fail on unix platforms, but maybe not.


Remove colon character from filenames in ceph examples

Colon in file names is forbidden and causes a lot of issues on Windows.
Files are not visible in file explorer, git is unable to work with them.
Files:
ceph/1.9/img/img:configure_secrets_in_exhibitor.png
ceph/1.8/img/img:configure_secrets_in_exhibitor.png

Thanks for the report, I don't see a reason for these files to be named in this way, so I'll go ahead and create a PR.


fix: update @asyncapi/parser to 3.0.9

cc @smoya @jonaslagoni

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


correct the extra space in single.html

the extra space will cause the website to redirect to 404 not found page whent the user click the category link.

thank you!


Create correct directory when first run and downloading initial skilltrees

When intially running a dev version of PathOfBuilding it can't download the initial skilltrees as the subdirs 3_0 and 2_6 aren't created, this patch should fix that. We happened upon it in #28. Please do tell if there's something else that should be included!

As mentioned in my reply to #498, this doesn't help, as the 3.0 tree can't actually be downloaded anyway. The only solution would be to extract the tree.zip, which is possible to do using the lzip library, but kinda pointless as you should be copying the TreeData from a normal install (as mentioned in CONTRIBUTING).

Woopsie, so sorry for the extra work, i'll try to look more closely before opening the same pr next time!


From<cairo_felt::Felt252> for Felt

The mentioned conversion should be converted to TryFrom, because cairo_felt doesn't check for overflow

#1

@marioiordanov link this issue in the next PR


Set timeouts on all build steps that call into LV

We have several modules that throw unhandled errors (with automatic error handling enabled...grrr), which currently halts the build process until the dialog is cleared.
Since we can't guarantee that we never ever get an unhandled error from user code, the build system needs to be robust enough to just fail that step and move on to other builds.

Also need to detect if LabVIEW crashes.


Add env variables for mysql settings in tests

environment variables and their defaults are:
MYSQL_HOST : localhost
MYSQL_PORT : 3306
MYSQL_USER : root
MYSQL_PASSWORD : root
MYSQL_DATABASE : ufrontormtest

ex:
MYSQL_HOST="localhost" MYSQL_PORT="3306" MYSQL_USER="admin" MYSQL_PASSWORD="goodpassword" MYSQL_DATABASE="ufront_orm" ./testAll.sh

this merge also includes a minor refactoring of testAll.sh
to add $HAXE_COMPILER_PORT

Good thinking.  Sorry I didn't see this easlier.


Add GCP PubSub output feature

What type of PR is this?
/kind feature
Any specific area of the project related to this PR?
/area outputs
What this PR does / why we need it:
This adds a PubSub output for users of Google Cloud Platform.
Which issue(s) this PR fixes:
None
Special notes for your reviewer:
This has been tested in a GKE environment on 8 varying clusters with 50+ nodes.  100% 'ok' observed through /debug/vars endpoint with over 90k alerts generated.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

42f3334 Adding GCP PubSub output
d5646a3 Update README.md

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign nibalizer
You can assign the PR to them by writing /assign @nibalizer in a comment when ready.
The full list of commands accepted by this bot can be found 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

@IanRobertson-wpe: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Welcome @IanRobertson-wpe! It looks like this is your first PR to falcosecurity/falcosidekick 🎉

Awesome. Thanks @IanRobertson-wpe.
Can you sign-off your commits please, our CI will refuse to merge without.
For my part I'll review and comment your changes.

I think you should rebase on upstream and fix conflicts too, please.

After your rebase, could you integrate prometheus metrics for your Output too? See: https://github.com/falcosecurity/falcosidekick/blob/d35ff2b22b1fe6765981d4a8c13136a882b9caec/outputs/slack.go#L136

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign issif after the PR has been reviewed.
You can assign the PR to them by writing /assign @issif in a comment when ready.
The full list of commands accepted by this bot can be found 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

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md
7644c8a Update config.go

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md
7644c8a Update config.go

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md
7644c8a Update config.go
572c36e Update config.go

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md
7644c8a Update config.go
572c36e Update config.go

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md
7644c8a Update config.go
572c36e Update config.go

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

45c0af9 Adding GCP PubSub output
1998cbe Update README.md
296463f Update README.md
7644c8a Update config.go
572c36e Update config.go

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

LGTM label has been added.  Git tree hash: 0d75a6ec169994a16c51121d3e5224845a222234

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Issif
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 [Issif]

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

/lgtm
👍 @IanRobertson-wpe thanks a lot, I will release 2.17.0 asap for sure

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Issif
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 [Issif]

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


Use data attributes instead of classes for binding

To provide more flexibility we are going to change the naming conventions.
Instead of using classes – .mod .mod-xyz – we will switch to data attributes.
This makes the binding completely independent from styling, so that TerrificJS is compatible with all CSS modularization «philosophies» (e.g. BEM, Atomic Design etc.).

The new naming conventions will be:

.mod .mod-foo => data-tc-name="foo"
.mod .mod-foo skin-foo-bar => data-tc-name="foo" data-tc-skin="bar"
data-connectors="overview" => data-tc-connector="overview" (added -tc- for more consistency)


Is it possible to give a maximum runtime per job?

I have found several instances where jobs on dataflow get 'stuck', meaning they run for much longer than expected.
So far this seems to be an intermittent problem, but when I am submitting hundreds of jobs, cancelling them manually becomes tedious.
Is there a way to give a time after which a job is force killed at the point of submission to dataflow? Presumably the user would want to manage this on a per job basis. For instance my CMIP6 recipes will rarely take longer than a few minutes, but e.g. @cisaacstern s climsim recipe often takes a few days.

Looks like there isn't a Dataflow feature for this, see https://stackoverflow.com/a/51410414. The responder there is Google's Dataflow product manager, so I take the response to be pretty authoritative, albeit a few years old. The suggested workaround probably wouldn't be desirable using the GitHub Action, as it would require the Action's runner process to stay blocked from closing until the Dataflow job timed out. But perhaps the general approach of a supervisor ("zombie killer" 🧟 ) process is transferable. Admittedly the idea of an additional operational layer is less appealing than a simple beam pipeline option, but in this case it doesn't seem like there's an alternative. A lightweight implementation could be a Github Workflow running a "zombie hunting" chron job? 🤔

BTW, I cancel all running jobs on dataflow with the following command:
❯ gcloud dataflow jobs list --status=active --format=json | jq -r ".[].id" | xargs -L1 gcloud dataflow jobs cancel --region=us-central1

That's a helpful command, @yuvipanda!
Is it correct to understand that a custom list of job id's could be passed as well (instead of just all jobs) by doing something like:
gcloud dataflow jobs cancel --region=us-central1 $SPACE_DELIMITED_JOBID_LIST

?

@cisaacstern yes, you can filter as you wish. If we were to stick to bash the easiest would be to filter in the jq step - pretty powerful.

Implemented a zombie killer gh workflow here. Works like a charm.

A bit off-topic but I wonder if there is a way to more gracefully end the job if there are no ids to cance (example)?

I separated #46 out, and will close this now.


Py2/3 support for Python 3 code using FileExistsError

I have code tested in Python 3 (3.5.2) that uses FileExistsError and have used pasteurize to attempt Py2/3 support. When I attempt to run the code under a Python 2.6.6 environment (installed importlib, unittest2, argparse beforehand), it encounters a NameError because of undefined FileExistsError:
Traceback (most recent call last):
  File "/home/dspruell/devel/project/env/bin/project-cmd", line 11, in <module>
    load_entry_point('project==0.2.4', 'console_scripts', 'project-cmd')()
  File "/home/dspruell/devel/project/env/lib/python2.6/site-packages/project/cli.py", line 86, in main
    except FileExistsError as e:
NameError: global name 'FileExistsError' is not defined

Following are the use in modules:
    try:
        args.func(args)
    except FileExistsError as e:
        parser.error('Refusing to clobber existing path ({err})'.format(err=e))

    try:
        os.makedirs(configdir)
    except FileExistsError as e:
        if not args.force:
            raise

For what it's worth, under Python 2.6 the exception that's raised in place of FileExistsError is OSError.
Is this something one should expect python-future to handle?

Thanks for asking, @dspruell. I have committed a patch to a new development branch called exceptions. You can use the new PEP3151 exceptions with code like this:
from builtins import FileNotFoundError

at the top of modules that invoke those exceptions.
Could you please try the new branch and report back about how well this works for you?

See also issue #254

@jmadler adding new Python3 exceptions to Python2 looks like a low hanging fruit that would make a lot of code much nicer.
This is the new Exception hierarchy compared to the old Exception hierarchy.


Fix Inconsistent Data Issue When Adding Product Images

Overview:
When adding product images, a discrepancy in database versions between development environments causes the image folder not to be deleted. This results in data inconsistency and potential clutter within the storage system.
Proposed Solution:
Folder Deletion Logic:

Implement logic to check and delete the image folder when adding new images to ensure old images are properly removed.
Ensure this logic is compatible across different development environments and database versions.

Closed #112


UpSample2D INT8 quantization not supported

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 18.04
TensorFlow installed from (source or binary): pip
TensorFlow version (or github SHA if from source): 2.0

Provide the text output from ~tflite_convert~ TFLiteConverter
2019-10-16 13:10:02.543859: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1
2019-10-16 13:10:02.551468: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.551740: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.645
pciBusID: 0000:01:00.0
2019-10-16 13:10:02.551828: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2019-10-16 13:10:02.552513: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10.0
2019-10-16 13:10:02.553132: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10.0
2019-10-16 13:10:02.553261: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10.0
2019-10-16 13:10:02.554087: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10.0
2019-10-16 13:10:02.554716: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10.0
2019-10-16 13:10:02.556627: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2019-10-16 13:10:02.556687: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.556988: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.557237: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
2019-10-16 13:10:02.557401: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-10-16 13:10:02.580750: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-10-16 13:10:02.581738: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x55e194a15110 executing computations on platform Host. Devices:
2019-10-16 13:10:02.581748: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): Host, Default Version
2019-10-16 13:10:02.624356: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.624717: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x55e194aa7ab0 executing computations on platform CUDA. Devices:
2019-10-16 13:10:02.624728: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): GeForce GTX 1080 Ti, Compute Capability 6.1
2019-10-16 13:10:02.624836: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.625102: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.645
pciBusID: 0000:01:00.0
2019-10-16 13:10:02.625122: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2019-10-16 13:10:02.625130: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10.0
2019-10-16 13:10:02.625137: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10.0
2019-10-16 13:10:02.625143: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10.0
2019-10-16 13:10:02.625149: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10.0
2019-10-16 13:10:02.625155: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10.0
2019-10-16 13:10:02.625162: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2019-10-16 13:10:02.625189: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.625459: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.625708: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
2019-10-16 13:10:02.625725: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2019-10-16 13:10:02.626255: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1159] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-10-16 13:10:02.626262: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1165]      0
2019-10-16 13:10:02.626265: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1178] 0:   N
2019-10-16 13:10:02.626314: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.626592: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.626856: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1304] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 9051 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
2019-10-16 13:10:02.739500: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.739771: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 1
2019-10-16 13:10:02.739810: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2019-10-16 13:10:02.740219: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.740510: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.645
pciBusID: 0000:01:00.0
2019-10-16 13:10:02.740538: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2019-10-16 13:10:02.740545: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10.0
2019-10-16 13:10:02.740551: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10.0
2019-10-16 13:10:02.740557: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10.0
2019-10-16 13:10:02.740563: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10.0
2019-10-16 13:10:02.740568: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10.0
2019-10-16 13:10:02.740574: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2019-10-16 13:10:02.740601: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.740873: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.741124: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
2019-10-16 13:10:02.741138: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1159] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-10-16 13:10:02.741142: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1165]      0
2019-10-16 13:10:02.741145: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1178] 0:   N
2019-10-16 13:10:02.741185: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.741460: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.741715: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1304] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 9051 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
2019-10-16 13:10:02.742758: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:716] Optimization results for grappler item: graph_to_optimize
2019-10-16 13:10:02.742766: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:718]   function_optimizer: function_optimizer did nothing. time = 0.002ms.
2019-10-16 13:10:02.742770: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:718]   function_optimizer: function_optimizer did nothing. time = 0ms.
2019-10-16 13:10:02.749704: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.749989: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 1
2019-10-16 13:10:02.750037: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2019-10-16 13:10:02.750314: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.750591: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.645
pciBusID: 0000:01:00.0
2019-10-16 13:10:02.750609: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2019-10-16 13:10:02.750615: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10.0
2019-10-16 13:10:02.750621: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10.0
2019-10-16 13:10:02.750627: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10.0
2019-10-16 13:10:02.750633: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10.0
2019-10-16 13:10:02.750639: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10.0
2019-10-16 13:10:02.750645: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2019-10-16 13:10:02.750670: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.750974: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.751224: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
2019-10-16 13:10:02.751237: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1159] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-10-16 13:10:02.751241: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1165]      0
2019-10-16 13:10:02.751244: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1178] 0:   N
2019-10-16 13:10:02.751285: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.751587: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1006] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2019-10-16 13:10:02.751843: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1304] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 9051 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
2019-10-16 13:10:02.757033: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:716] Optimization results for grappler item: graph_to_optimize
2019-10-16 13:10:02.757044: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:718]   constant folding: Graph size after: 10 nodes (0), 10 edges (0), time = 0.65ms.
2019-10-16 13:10:02.757047: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:718]   constant folding: Graph size after: 10 nodes (0), 10 edges (0), time = 0.14ms.
INFO: Initialized TensorFlow Lite runtime.
Traceback (most recent call last):
  File "/home/wd_ai/git-pkgs/yolov3-tf2/test_upsample2d_tflite.py", line 35, in <module>
    tflite_model = convert2tflite_int8(model)
  File "/home/wd_ai/git-pkgs/yolov3-tf2/test_upsample2d_tflite.py", line 28, in convert2tflite_int8
    tflite_model = converter.convert()
  File "/home/wd_ai/miniconda3/envs/tf2-n-pytorch/lib/python3.7/site-packages/tensorflow_core/lite/python/lite.py", line 450, in convert
    constants.FLOAT)
  File "/home/wd_ai/miniconda3/envs/tf2-n-pytorch/lib/python3.7/site-packages/tensorflow_core/lite/python/lite.py", line 239, in _calibrate_quantize_model
    inference_output_type, allow_float)
  File "/home/wd_ai/miniconda3/envs/tf2-n-pytorch/lib/python3.7/site-packages/tensorflow_core/lite/python/optimize/calibrator.py", line 78, in calibrate_and_quantize
    np.dtype(output_type.as_numpy_dtype()).num, allow_float)
  File "/home/wd_ai/miniconda3/envs/tf2-n-pytorch/lib/python3.7/site-packages/tensorflow_core/lite/python/optimize/tensorflow_lite_wrap_calibration_wrapper.py", line 115, in QuantizeModel
    return _tensorflow_lite_wrap_calibration_wrapper.CalibrationWrapper_QuantizeModel(self, input_py_type, output_py_type, allow_float)
RuntimeError: Quantization not yet supported for op: RESIZE_NEAREST_NEIGHBOR

Process finished with exit code 1

Also, please include a link to a GraphDef or the model if possible. (source code)
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
import numpy as np

def build_upsample_model():
    inputs = keras.Input(shape=(28, 28, 32), name='input')
    outputs = layers.UpSampling2D()(inputs)
    model = keras.models.Model(inputs=inputs, outputs=outputs, name='upsample_model')
    return model

def convert2tflite_int8(model):
    def repr_data_gen(shape):

        def gen_random_data():
            for _ in range(10):
                yield [np.array(np.random.random_sample(shape), dtype=np.float32)]

        return gen_random_data

    converter = tf.lite.TFLiteConverter.from_keras_model(model)
    converter.optimizations = [tf.lite.Optimize.DEFAULT]
    converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
    converter.representative_dataset = repr_data_gen((1, 28, 28, 32))

    tflite_model = converter.convert()

    return tflite_model

if __name__ == '__main__':
    model = build_upsample_model()
    tflite_model = convert2tflite_int8(model)

Any other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.

see comment: https://github.com/tensorflow/tensorflow/issues/33397#issuecomment-542880236

I submitted a PR to address the issue: https://github.com/tensorflow/tensorflow/pull/33492 .
Will close this one for now.


README.md updated

Description
Customized the README to include contributors and more personal information about the project.
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change Status

[X] Complete, tested, ready to review and merge
[ ] Complete, but not tested (may need new tests)
[ ] Incomplete/work-in-progress, PR is for discussion/feedback

Has This Been Tested?

[X] Yes

[X] What was tested?

I used StackEdit Markdown Visualizer to preview what the README will look like.

[ ] No

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My code has been reviewed and commented by at least two peers
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] There are no merge conflicts

looks good

you might want to add the link to the SwaggerUI API


Release workflow: Replace any image tag in codeflare-notebook-imagestream.yaml

Description

Right now replacement command is replacing only text which match version regex. The replacement should replace any value to accommodate usage of dev image.
How Has This Been Tested?

By manually running the workflow on own fork.
Merge criteria:

[ ] The commits are squashed in a cohesive manner and have meaningful messages.
[ ] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[ ] The developer has manually tested the changes and verified that the changes work

/lgtm

/approve


ImportError: Couldn't find a file matching the module name: deform_conv_cuda  (opt_in = False)

This error may be caused by another error when I execute compile.sh: "error: command '/usr/bin/gcc' failed with exit code 1". But I do not know how to solve the problem. Is there anyone who solves the problem successfully?

It's about the version the pytorch.

CUDA version may be the reason too.


[Bug]: Apple cannot verify that this app is free from malware

What happened?
When I want to install die App on my Mac i get: "Apple cannot verify "vibe_2.6.3_aarch64.dmg" is free from malware that may harm your Mac or comprise your privacy."
Steps to reproduce

Download dmg
Double click dmg
get message

What OS are you seeing the problem on?
MacOS
Relevant log output
No response

Thansk for the quick reply. That does not work, unfortunately :/ Can that be related to me using Sequoia (15.0.1)?

I'm having the same issue.
What happened?
When I double click on dmg file or right click and click open receive the message: "Apple cannot verify "vibe_2.6.3_aarch64.dmg" is free from malware that may harm your Mac or comprise your privacy."
Steps to reproduce

Download dmg
Double click dmg
get message

OR

Download dmg
Right click dmg
Choose "Open"
get message

What OS are you seeing the problem on?
MacOS Sequoia 15.1
Relevant log output
No response

Please try to right click -> open TWICE.

Please try to right click -> open TWICE.

Still didn't work.

See https://www.youtube.com/watch?v=aQRbftg80kg

Do you have Apple or Intel chip?

I managed to get I show up in the security section of the settings finally (https://support.apple.com/en-gb/guide/mac-help/mchleab3a043/mac). I just clicked on it more often and then could drag it into applications and of course then had to allow it once again in the settings to start. Hope that helps :)

Thanks @hornhaut, that worked.

I am also facing the same issue, Using the method above to unblock from the security setting does let me show the app and enable me to install it but it shows same error on opening the app from the Dock.


How to integrate custom SVG into plot viewer?

Feature: Notebook Editor, Interactive Window, Python Editor cells
Description
I'm not sure whether this is just a question, or a feature request.
I have Python code that generates custom plots in SVG format and displays them in the notebook output cell (_repr_svg_ / IPython.display). I would like to display these SVGs in such a way that they can be "expanded", i.e. there is the "Expand image" icon on hover, and when clicked the SVG is shown in the plot viewer ("Plots" tab).
As a question: The vscode-python documentation mentions that this feature works with matplotlib and Altair. Is there something I can do make it work with my plots, I assume via a JavaScript API?
As a feature: I propose that every SVG output cell can be "expanded".
Microsoft Data Science for VS Code Engineering Team: @rchiodo, @IanMatthewHuff, @DavidKutu, @DonJayamanne, @greazer, @joyceerhl

Alright, I figured it out. Apparently the "Expand image" function is activated if an object has an _repr_mimebundle_ method which returns  both a PNG and an SVG image. That is strange, since an SVG works perfectly fine for both display in the notebook and the plot viewer.
However, I found that the SVG display in the plot viewer does not appear to be entirely accurate. A detail of the same SVG, viewed in Inkscape vs VS Code:

As you can see, the rounded corner appears jagged in VS Code's plot viewer.

@allefeld Thanks for the report on this. Might be something that we can do to make it more clear how to support something in the plot viewer. What we did to support it initially was to set matplotlib to generate both SVGs and PNGs behind the covers. That was so that we could use the SVGs in the viewer. So I think that our plot viewer code is specifically looking for both PNG and SVG. But as you noted, just supporting SVG should be enough and I think that would be a simple change to make.
With regards to the output, we're not controlling rendering of the SVG ourselves, so we may not be able to fix this quickly, but we can take a peek at the component that we are using for our rendering in the plot viewer, maybe there is a better option that we can use.

Thanks!

take a peek at the component that we are using for our rendering in the plot viewer

Doesn't the chromium base contain SVG rendering? At  least this detail (rounded corner) appears correctly in Chrome.

Pretty sure we use this right now: https://chrvadala.github.io/react-svg-pan-zoom/?path=/story/react-svg-pan-zoom--readme
But I think that should still boil down to an SVG tag rendering in chromium.


Error Cannot read

Hello i got this error when the music finish TypeError: Cannot read properties of undefined (reading 'cache') in the console if you can help me

Hi there!
The bot is currently abandoned due to updates of packages and there is going to be an another massive update which will change 60% of the things. I'll update the bot as soon as possible after the update.

Ok man thx


fix #1874 - fix TIME return type

Codecov Report

Merging #1880 (571297d) into master (84aebcc) will decrease coverage by 0.24%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1880      +/-   ##
==========================================
- Coverage   95.06%   94.82%   -0.25%
==========================================
  Files         353      353
  Lines        3306     3306
  Branches      405      405
==========================================
- Hits         3143     3135       -8
- Misses         81       86       +5
- Partials       82       85       +3

Impacted Files
Coverage Δ

packages/client/lib/client/index.ts
87.38% <ø> (ø)

packages/client/lib/errors.ts
95.45% <0.00%> (-4.55%)
:arrow_down:

packages/client/lib/client/commands-queue.ts
76.31% <0.00%> (-3.95%)
:arrow_down:

packages/client/lib/cluster/cluster-slots.ts
59.80% <0.00%> (-0.99%)
:arrow_down:

Continue to review full report at Codecov.

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


visualization

"Excuse me, has the author written about the visualization of the Semantic Kitti dataset? Could the code be made public? Thank you!"

The code of visualization is from a long time ago and I can not find it now.


removed broken link

Don't have a current link for the microbit-Rust-on-Windows blog entry in the README, so just deleted it for now.
closes #157. closes #162

Actually, looks like https://flames-of-code.netlify.app/blog/rust-microbit-windows/ is the new location of the removed blog link: don't know how I missed that the first time. Not sure it adds anything, though, so let's leave it removed.


Adding Cask for Acronis True Image

If there’s a checkbox you can’t complete for any reason, that's okay, just explain in detail why you weren’t able to do so.
After making all changes to the cask:

[ x ] brew cask audit --download {{cask_file}} is error-free.
[ x ] brew cask style --fix {{cask_file}} reports no offenses.
[ / ] The commit message includes the cask’s name and version. - No versioning

Additionally, if adding a new cask:

[ x ] Named the cask according to the token reference.
[ x ] brew cask install {{cask_file}} worked successfully.
[ x ] brew cask uninstall {{cask_file}} worked successfully.
[ x ] Checked there are no open pull requests for the same cask.
[ x ] Checked the cask was not already refused in closed issues.
[ x ] Checked the cask is submitted to the correct repo.

Thank you for the submission. In the future, please use x in checklists (no spaces inside the brackets) and Github will make them clickable.


Less frequent CURLing

blockforwork is being polled waaaay too frequently. This doesn't seem to be causing instability, but it's certainly excessive.

problem seems to be solved by the new protocol


Some sub weapon costs are wrong.

Sprinkler should cost 80 instead of 90, and splash wall should cost 60 instead of 90.
Source is Heddy's sub saver chart available at this link: https://splatoonwiki.org/wiki/File:S2_Ink_Saver_Sub_Chart.png

Thanks for the report, I just pushed the fix. That's what I get for doing data entry on no sleep, I guess.


Event Viewer: visual is not applying filters correctly

Describe the bug
Event Viewer custom visual is not displaying the correct data when applying filters
To Reproduce
Steps to reproduce the behavior:

Open report with Event Viewer visual
Fill the fields
Apply several filters

Actual behavior
When applying several filters to the Event Viewer Visual it will show data that does not comply with the filters. If you expand the records you will see the visual is showing data that is not on the records that apply to those filters.
Expected behavior
Event Viewer Visual it will show data that comply with the filters.
Screenshots

Power BI info:

Desktop version: 2.107.841.0 64-bit (July 2022)

Additional context
Data from the customer filters correctly when used on other Power BI visuals.
Another visual with the same data and filters, showing just one record.

Thanks for your feedback.
But can you share the PBIX file?

Hello!
Yes, I attached the file. Please have a look. Could you notify me about any update of the issue please?
Thanks,
Suiumbika Galimova,
QA
Microsoft Power BI Custom Visuals

From: Jan Pieter Posthuma @.***>
Sent: Friday, July 22, 2022 11:19:30 PM
To: liprec/powerbi-eventViewer
Cc: Suiumbika Galimova; Author
Subject: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Thanks for your feedback.
But can you share the PBIX file?
—
Reply to this email directly, view it on GitHubhttps://github.com/liprec/powerbi-eventViewer/issues/27#issuecomment-1192906362, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AU3PF2CFYLWQDOEVBBXIUKDVVL65FANCNFSM54L6QKYQ.
You are receiving this because you authored the thread.Message ID: @.***>

Hi @Suiumbika,
Somehow, the PBIX file is not linked to the GitHub issue, but you can send it directly to my email<EMAIL_ADDRESS>?

Did you receive the pbix file in the previous email? I couldn't attach it in the GitHub, so I sent it to email at your request.

From: Jan Pieter Posthuma @.***>
Sent: Monday, July 25, 2022 1:58:18 PM
To: liprec/powerbi-eventViewer
Cc: Suiumbika Galimova; Mention
Subject: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Hi @Suiumbikahttps://github.com/Suiumbika,
Somehow, the PBIX file is not linked to the GitHub issue, but you can send it directly to my email<EMAIL_ADDRESS>?
—
Reply to this email directly, view it on GitHubhttps://github.com/liprec/powerbi-eventViewer/issues/27#issuecomment-1193898335, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AU3PF2DWTHNCFPYZKPMU3KTVVZXMVANCNFSM54L6QKYQ.
You are receiving this because you were mentioned.Message ID: @.***>

Adding Marco Talamante to the thread

From: Suiumbika Galimova
Sent: Monday, July 25, 2022 2:09:00 PM
To: liprec/powerbi-eventViewer; @.***
Subject: Re: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Did you receive the pbix file in the previous email? I couldn't attach it in the GitHub, so I sent it to email at your request.

From: Jan Pieter Posthuma @.***>
Sent: Monday, July 25, 2022 1:58:18 PM
To: liprec/powerbi-eventViewer
Cc: Suiumbika Galimova; Mention
Subject: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Hi @Suiumbikahttps://github.com/Suiumbika,
Somehow, the PBIX file is not linked to the GitHub issue, but you can send it directly to my email<EMAIL_ADDRESS>?
—
Reply to this email directly, view it on GitHubhttps://github.com/liprec/powerbi-eventViewer/issues/27#issuecomment-1193898335, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AU3PF2DWTHNCFPYZKPMU3KTVVZXMVANCNFSM54L6QKYQ.
You are receiving this because you were mentioned.Message ID: @.***>

Hello Jan,
Do you have any updates about the issue?

From: Suiumbika Galimova
Sent: Wednesday, July 27, 2022 5:40:47 PM
To: liprec/powerbi-eventViewer; @.; @.
Subject: Re: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Adding Marco Talamante to the thread

From: Suiumbika Galimova
Sent: Monday, July 25, 2022 2:09:00 PM
To: liprec/powerbi-eventViewer; @.***
Subject: Re: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Did you receive the pbix file in the previous email? I couldn't attach it in the GitHub, so I sent it to email at your request.

From: Jan Pieter Posthuma @.***>
Sent: Monday, July 25, 2022 1:58:18 PM
To: liprec/powerbi-eventViewer
Cc: Suiumbika Galimova; Mention
Subject: [EXTERNAL] Re: [liprec/powerbi-eventViewer] Event Viewer: visual is not applying filters correctly (Issue #27)
Hi @Suiumbikahttps://github.com/Suiumbika,
Somehow, the PBIX file is not linked to the GitHub issue, but you can send it directly to my email<EMAIL_ADDRESS>?
—
Reply to this email directly, view it on GitHubhttps://github.com/liprec/powerbi-eventViewer/issues/27#issuecomment-1193898335, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AU3PF2DWTHNCFPYZKPMU3KTVVZXMVANCNFSM54L6QKYQ.
You are receiving this because you were mentioned.Message ID: @.***>

Thanks for the PBIX file. The problem is that the chart is not capable of showing only a single event. And when you apply the filter, this issue prevents to update the chart with the new events.
I will add some lag time if there is only of event row in a next update.

Hello, thanks for the update.
Is there any ETA for the next update that will fix this?
Thanks in advance.

Thanks for referring the code that will help fix this issue. Is this already live or is the Cx able to update the visual? When will this be available?

I just submitted a new version for validation and certification, so it is not yet available. Usually it will take some weeks before the new version will hit the production ring of Power BI.

Thanks, do you know about how many weeks would it take to arrive? Just so I can provide the customer an ETA for the arrival of the fix.

It will take probably 5-6 weeks, if no errors occur.


[Bug] The end of the style is covered by the scroll bar

Describe the bug
The end of the style is covered by the scroll bar in some cases, causing can't click the end of the CSS line.
To Reproduce
It might not be an issue that can easily reproduce by steps. See the screenshot below, please.
Expected behavior
It should be easily jumping the cursor to the end by clicking the end of the line.
Screenshots

Details

@Higurashi-kagome i added support for resizing the editor + added additional space in the code editor, so it will be possible to mitigate this issue with more space (seems more related to the wrapping behavior in https://microsoft.github.io/monaco-editor/, i didn't really check if this is fixed in newer versions...). Wrapping is useful since we have limited space to write code, so keeping that behavior

@ankit Resizing might be helpful, I will test it in the future. I presume that it might be also considered to add a horizontal scroll bar, which would give users a chance to scroll to the end when got this issue.

Never mind, I was able to figure out a way to customize the wrapping behavior to avoid collision with the scrollbar. I also disabled the hover suggestions to reduce the noise.


uar-150 fix missing no more to add

https://companieshouse.atlassian.net/browse/UAR-150 The no more to add button was missing in action
Change description
Work checklist

[ ] Tests added where applicable
[ ] UI changes meet accessibility criteria

Merge instructions
We are committed to keeping commit history clean, consistent and linear.  A BREAKING CHANGE can be part of commits of any type,
types other than fix: and feat: are allowed, for example build:, chore:, ci:, docs:, style:, refactor:, perf:, test:, and others,
footers other than BREAKING CHANGE: <description> may be provided.

It's fine to block out the lists for now. We will be re-visiting this later.


Fix: Longhorn doesn't requeue the volume when failed to schedule or fail to add new replica

We should requeue the volume when failed to schedule or fail
to add new replica. By doing this, the volume controller can
try those operations again. This is a quick fix. Long-term
fix may be separating the replica replenishment and scheduling
logic into a different controller
longhorn/longhorn#3626

If Longhorn needs to rebuild multiple replicas for a large volume, will the 2nd or subsequent rebuilding get started in time after the 1st rebuilding is complete?

I think yes because after replica rebuilding, the engine.Status.rebuildStatus is updated. This update leads to enqueuing the corresponding volume CR. Then replenishCount logic is run again


Figuring out vorbis errors

Hey there, my issue may not be specifically related with this repo, but seeking help is quite hard on the subject.
Recently I browsing/sorting through some of my fresh encoded vorbis files, only to find out a few of them were unplayable, this was odd as I was sure I had tested them well and even listened to them a couple of times before. At the time I found they were corrupt, at the time I found them, I had just moved from the converting bed to my library, all using Amarok media player, and as you can imagine its my prime suspect.
Right after that I've found even more files getting corrupt in my library, and sometimes even minutes after last listening to them, so you can imagine my despair. I'd even check for disk failure of something similar, but tests went ok and only ogg files targeted.
Anyway, not sure where to look for help anymore, I've already tried tools like mp3splt, oggfix, and your own. Error seems to be on "corrupt secondary header"

Huh. Interesting. I made this tool exactly because of a problem like that... And I'm using Amarok too. Which version are you using? I'm currently using amarok5 (frameworks git), and that might be the reason why...
Also, is it the same for you that when you open the files in the hex editor, the first bytes are mostly zeroes with a 1 every now and then? If so, my tool should work for the most part. It might still be not playable with Amarok after using it, but it should be readable with FFmpeg. Though also not always, depends on how many bytes were overwritten.
Also, to make sure it doesn't happen again, just chmod -w all your ogg files. Except a few that you might want to test on, that is.

Hey thanks for the reply, so I had some more development on the issue: at the very least one bug matches it https://bugs.kde.org/show_bug.cgi?id=369672
So it seems to be happening with Amarok when changing tags, at least specifically for me when changing between various artists or not, I was able to replicate with at least another file.
I've also brought up the matter within the vorbis mail-list to see if someone can come up with a workaround. But anyway, I've also tried the ffmpeg copy track after using the tools, still ffmpeg doesn't recognize the format, I might try manually passing the codec to the input as well.
As for the hex editor, I've never really used one, so I might some hand holding on that, what utility can I use? (on Arch linux btw)

Did you actually edit the tags? In my case things get corrupted without editing anything (manually, at the very least). Hmm.
Yea, that sounds like the corruption is larger than just the header, then it won't work. Mind you, for me different files got corrupted with different length of the header getting erased, so the tool works on some files but not others. If FFmpeg refuses to recognise it, then no extra parameters will help, sorry.
The hex editor I use is Okteta, the KDE hex editor. It's pretty simple: open a bad file, then open a good file, and compare the top rows. The problem will be very easy to see right off the bat. This is how I made this tool, it simply copies the bytes from non-broken headers. The problem is that OGG files also have CRC checksums of the content, and that's not something that can be made to match if any of the content itself, not just the header, is corrupt...
If there is something else that can be done as per the mailing list, keep me informed and I'll see if I can put that functionality into this tool.

Damn, so if the damage is more than we can imagine then the file is lost.
I'll check the hex editor later. And the bug filed, we will try figure out if the issue comes from Amarok itself or some backend used to handle ogg files.

It's not lost per se, the data is all there, it's just the header that gets overwritten. It's just that beyond the first 48 bytes, the first vorbis stream starts, and I don't know the spec enough to make guesses as to what the bytes there mean and thus what they should be. It's nothing terribly important, as right after that the Vorbis tags are listed. The actual audio starts only at around 345 bytes into the file (more or less depending on how many tags you have and if there is an embedded album picture).
There is also a second CRC checksum there, which might also be problematic (not sure whether FFmpeg cares about those or not). And a strange variable-length field of 0xFFs, which I don't really know about either. I could test a few more things and see whether I can make it work beyond 48 bytes, though. Mind you, I didn't keep any of the corrupt files myself, so I don't have anything to test on, hm.

I'll wait to hear from the guy in the vorbis mail list, ask him to chime in too.
tried ffmpeg again with specified input options, it just exits with filename: end of file
If its matter of just the checksum and headers, then it could be possible to recalculate those like the encoder normally does (?).
Anyway, I could share one of my damaged files.

I'm reading the spec now, and yes, I think I can make my tool work with further corruption. Some metadata includes the number of channels and the bitrate, which I can't recreate, but I can make the tool ask you to input it, so that you can guess it. And yes, technnically FFmpeg should be able to recalculate the checksums after the file is made readable.
As for the files, I don't need the whole thing, but a screenshot of the first bytes in the hex editor would help (also to make sure that we got hit by the same bug).

OK, try now, I made it fix corruption up to the 71st byte. It should be enough.
Mind you, my code assumes 2 channel 44100 sample rate 256 kbps bitrate audio at the moment. If it's say 48000, the audio will sound slowed down until you recompile the tool with the appropriate SampleRate value (which would be \x80\xbb\x00\x00 in the case of 48000) and rerun it. I might make a dialog for choosing something else in the future.

Oh, now I noticed your file. That's very weird. Do you have a version that has corruption that has not been changed with fixing tools? Because from the looks of it, that file is perfectly fine save for the frame length information being missing for some weird reason. I don't really want to get into the frame parts of the OGG Vorbis spec, ugh.

Hey sorry I kinda missed your last messages and then forgot. Here is another file which I'm mostly sure didn't try to fix.
https://drive.google.com/file/d/0BxmeqItErkUFdnVmY1pXU05aWEE/view?usp=sharing
And possibly some more information, apparently all of these files look fine looking from mediainfo, including frequency, bitrate and etc.

Yea, indeed, so your corruption is something completely different, it's OggS packets that are inserted in the middle of the track for no apparent reason, while other things like vorbis packet headers (and probably good chunks of the data around them) are missing.
So unfortunately this tool can't help you, and I doubt anything can fix that sort of corruption altogether. It's not just the headers that are overwritten, it's the data itself that's been displaced and parts of it are missing altogether.

Gosh, well thanks, it was worth the try.
I see you're already following on bug tracker, lets hope we can find at least whats the source of this.


Fix alias of union types

I was having some issues using union types. I create a test to simulate my conditions.
      it('unions with alias', async () => {
        const mergedResult = await graphql(
          mergedSchema,
          `
            query {
              customerById(id: "c1") {
                ... on Person {
                  name
                }
                v1: vehicle {
                  ... on Bike {
                    bikeType
                  }
                }
                v2: vehicle {
                  ... on Bike {
                    bikeType
                  }
                }
              }
            }
          `,
        );

        expect(mergedResult).to.deep.equal({
          data: {
            customerById: {
              name: 'Exampler Customer',
              v1: { bikeType: 'MOUNTAIN' },
              v2: { bikeType: 'MOUNTAIN' },
            },
          },
        });
      });

This test doesn't pass but is a valid query.
I looked at the code and I found in /src/stitching/mergeSchemas.ts that the method filterSelectionSet  is doing this when it find a set of fields of a type:
L612
 if (
        parentType instanceof GraphQLInterfaceType ||
        parentType instanceof GraphQLUnionType
      ) {
        selections = selections.concat({
          kind: Kind.FIELD,
          name: {
            kind: Kind.NAME,
            value: '__typename',
          },
        });
      }

So, is adding '__typename' field to the list of field requested in case of a union type or an interface. But when resolve each of field:
L584
if (
          parentType instanceof GraphQLObjectType ||
          parentType instanceof GraphQLInterfaceType
        ) {
          const fields = parentType.getFields();
          const field =
            node.name.value === '__typename'
              ? TypeNameMetaFieldDef
              : fields[node.name.value];
          if (!field) {
            return null;
          } else {
            typeStack.push(field.type);
          }
        }

Is not considering the case of a union type. I fix this situation by adding the case of the union.
I think this PR could fix https://github.com/apollographql/graphql-tools/issues/474.
TODO:

[ ] If this PR is a new feature, reference an issue where a consensus about the design was reached (not necessary for small changes)
[X] Make sure all of the significant new logic is covered by tests
[X] Rebase your changes on master so that they can be merged easily
[X] Make sure all tests and linter rules pass
[ ] Update CHANGELOG.md with your change

Indeed it does fix #474

Thanks @Jarlakxen, this saved my day!


chore(TensorProduct/RightExactness): move three lemmas to Algebra/Exact

The location was suggested by #find_home. This addresses a porting TODO.

bors merge


[Bug]: GoogleChrome Version in Evergreen is 112 but when you download is it the expected 113

What happened?
Hi, i am facing with my app factory the issue, that 113 would not created. I looked then into evergreen and there only 112 is available. I downloaded this as a test and found out that the msi in behind is the 113 what is needed and what should be the latest.
We solved it now with workaround, but can u chnage this little mistake or can i help with that in any way?
Hopefully i posted it not wrong, otherwise give me a hint
Best regards
Version
2405.1054
What PowerShell edition/s are you running Evergreen on?
Windows PowerShell
Which operating system/s are you running Evergreen on?
Windows 10+
Have you reviewed the documentation?

[X] Troubleshooting at: https://stealthpuppy.com/evergreen/troubleshoot/
[X] Known issues at: https://stealthpuppy.com/evergreen/issues/

Verbose output
test

See #562 #574


fix: Installation Setup Complete event to fire always after the super user is created

Description
As we are executing the monos in parallel for Installation Setup Complete event using Mono.when(). Now if any of the mono throws exception, subscriptions of other monos will get cancelled automatically. To avoid this dependency we are moving the sendInstallationSetupAnalytics mono in a separate thread. Also as a part of this PR we are handling the possible root cause of exceptions in NetworkUtils class to handle the timeouts and have unknown as a fallback IP address value in error scenarios.
PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/22388
Type of change

Bug fix (non-breaking change which fixes an issue)

Testing
How Has This Been Tested?

[x] Manual

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] 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
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/ok-to-test

/ok-to-test


honeycomb-server

PR for #75

For honeycomb-asset see #84

@chrishelgert All points from the review are done! 🤝


add rule for file name style

Sticking to a set of known styles at first, could be enhanced to support a custom pattern as well.

Thanks for the PR @davidjgoss ! I added a couple of comments, please take a look and let me know if the changes I'm asking for sound reasonable to you :)

Pull Request Test Coverage Report for Build 561

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 97.507%

Totals

Change from base Build 559:
-0.3%

Covered Lines:
712

Relevant Lines:
722

💛  - Coveralls

Thanks for making the changes!
Published with v4.1.0


Reduce flake8 max-line-length

Description
This documentation outlines the process of reducing the maximum line length in the project's source code. It provides an overview of the changes made to adhere to a new maximum line length limit, enhancing code readability and maintainability.
Changed Behaviour
After implementing this change, the source code files will adhere to a stricter maximum line length limit. This adjustment improves code readability and ensures consistency throughout the project. Users and developers working with the codebase will benefit from clearer and more concise code formatting.
Fixes
Fixes # (3105)
Type of change

Code maintenance/cleanup

Your tests are failing - have a look at the error messages which appear in the "Details" link on the "checks" section of this PR. You should also be seeing those when you run make flake8 in your development environment.

sorry, you should see these errors when you run make mypy, not make flake8

Thank you @benclifford  for bringing this to my attention. I'll review the error messages in the 'Details' link of the 'checks' section on the PR, as well as when I run 'make mypy' in my development environment. I'll work on addressing the issues and ensure that the tests pass successfully.

The Outreachy application period is over, so I'm closing your PR - thanks for your participation in Parsl+Outreachy so far!


Why use "Iterator" for Adapter?

Overview (Required)
I see there is an abstract "ArrayRecyclerAdapter" class which implements the Iterator interface. My wonder is why it is need?
In the case we really want the ability to iterate over the list, this line makes me feel unsafe.
Once you iterator over the list member, its content can be changed (calling Iterator#remove for example), and this changed may not be properly observed (i.e one may not call notifyChange properly due to the lack of documentation). The next question is should we allow the list to be changed by being an Iterator (rather than by normal add/addAll method)? In that case, please document out this usage by a simple comment.

@konifar Just a bit unclear, but it is not a fatal issue. The point is: why we need it to be iterator :p. Nothing special here. (A miss-use of it can be trouble, but it is rare).

Sorry, I don't remember why I implemented iterator 🙇
But as you said, it looks unnecessary now.

This is improved by @shiraji ! Thanks!


[IOTDB-985] Unclear message when password is wrong

JIRA: https://issues.apache.org/jira/projects/IOTDB/issues/IOTDB-985

Cherry pick to rel/0.11 branch?

Tests failed...
Fix CI and cherry pick the commit to rel/0.11 branch?

CI was fixed and the PR for rel/0.11 is ready.


Squelch github linter warnings about embedded structs without json tags.

This looks like the proper way to denote fields that we don't want marshalled.

There's more going on here than just adding that tag, so withdrawing this.


Nested Acorns -  delete and updates on stand alone apps fail

acorn version v0.7.0-alpha1-129-g9238600a+9238600a
Steps to reproduce the problem:
Deploy nested acorns.
acorns: {
    "my-acorn1": {
        image: "ghcr.io/acorn-io/library/hello-world:latest"
    }
    "my-acorn2": {
        image: "docker.io/sangeetha/myfirstacorn:v0.0.1"
    }
}

acorn apps
NAME              IMAGE          HEALTHY   UP-TO-DATE   CREATED   ENDPOINTS                                                                         MESSAGE
test1             79ffabbb3e81   0         0            8s ago                                                                                OK
test1.my-acorn1   1a6c64d2ccd0   1         1            8s ago    http://webapp-test1-my-acorn1-dcb52faa-9f078f1f.local.oss-acorn.io => webapp:80   OK
test1.my-acorn2   12e4e9a38517   1         1            8s ago    http://myweb1-test1-my-acorn2-d0a51b09-7fa1cefb.local.oss-acorn.io => myweb1:80   OK

Attempting to delete child apps , results in apps getting redeployed.
Not able to update individual apps.
acorn update -l test1=value1 test1.my-acorn2
  ✗  ERROR:  App.api.acorn.io "test1.my-acorn2" is invalid: metadata.name: Invalid value: "test1.my-acorn2": a DNS-1035 label must consist of lower case alphanumeric characters or '-', start with an alphabetic character, and end with an alphanumeric character (e.g. 'my-name',  or 'abc-123', regex used for validation is '[a-z]([-a-z0-9]*[a-z0-9])?')

If the intent is for us to not allow for deleting/updating the child app independently in the nested acorn, we should be able to not attempt these actions and provide user with a proper error message.

@cjellick @ibuildthecloud do we want to support directly updating and deleting nested acorns like this?

I think this issue, https://github.com/acorn-io/acorn/issues/1596, and https://github.com/acorn-io/acorn/issues/1600 need the same fundamental question answered: can a user update a nested acorn app or service (ie one with a dot in the name because it was launched by another acorn).
For now, I am saying we DO NOT want to support that. @ibuildthecloud may come in and override me, but that's the call i'm making for now.

Ok, confirmed with @ibuildthecloud and closing the loop on this.
You SHOULD be able to delete a nested app/service and the expected behavior is that it redeploys
You SHOULD NOT be able to update a nested acorn/service "except in a devsession"
I believe this is the current behavior for both, so moving this to QA.

Tested with acorn version - v0.8.0-alpha7-98-gbb130866+bb130866
We now provide proper error message when attempting to update nested acorn apps.
 acorn update -l test1=value1 mytestnested.my-acorn2
  ✗  ERROR:  App.api.acorn.io "mytestnested.my-acorn2" is invalid: metadata.name: Invalid value: "mytestnested.my-acorn2": To update a nested Acorn or a service, update the parent Acorn instead.

@g-linville Wanted conformation on this behavior w.r.t deploying nested acorn in devsession.
Deploy nested acorn in dev mode.
Attempting to update nested acorn app or the standalone app within the nested acorn fails.
 acorn update -l test1=value1 mytestnesteddev.my-acorn2
  ✗  ERROR:  App.api.acorn.io "mytestnesteddev.my-acorn2" is invalid: metadata.name: Invalid value: "mytestnesteddev.my-acorn2": To update a nested Acorn or a service, update the parent Acorn instead.
sangeethahariharan@Sangeethas-MacBook-Pro secretgetter % acorn update -l test1=value1 mytestnesteddev
  ✗  ERROR:  App.api.acorn.io "mytestnesteddev" is invalid: status.devSession: Invalid value: "": app is locked by dev session

closing this. dont see what else we want to change here


Issue in extract.py - import quote

Got this error while importing YouTube
File "/usr/local/lib/python3.5/dist-packages/pytube/init.py", line 16, in
from pytube.streams import Stream
File "/usr/local/lib/python3.5/dist-packages/pytube/streams.py", line 17, in
from pytube import extract
File "/usr/local/lib/python3.5/dist-packages/pytube/extract.py", line 7, in
from pytube.compat import quote
ImportError: cannot import name 'quote'

I think that is a problem with the pytube, uninstalling pytube and installing pytube3 solved the problem in my case.

Correct. Also, you will need to use Python 3.6 or above

Working now, switched from python 3.5 to 3.8 and installed pytube3. Thanks.


macbook pro GPU version, successfully opened CUDA library, but not found the GPU

Hi ALL:
I am a chinese student, so may be English is bas. Sorry.
now I use the tensorflow GPU version. I user the pip to down the python3 GPU version, and down the all about the GPU file.
But i can successfully opened CUDA library, but not found the GPU, like this:
In [1]: import tensorflow as tf I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcublas.dylib locally I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.dylib locally I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcufft.dylib locally I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcuda.1.dylib locally I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcurand.dylib locally
In [2]: tf.Session() E tensorflow/stream_executor/cuda/cuda_driver.cc:491] failed call to cuInit: CUDA_ERROR_NO_DEVICE I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:153] retrieving CUDA diagnostic information for host: wangxiaoweideWindows.local I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:160] hostname: wangxiaoweideWindows.local I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:185] libcuda reported version is: 346.3.6 I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:189] kernel reported version is: Invalid argument: expected %d.%d or %d.%d.%d form for driver version; got "" I tensorflow/core/common_runtime/gpu/gpu_init.cc:81] No GPU devices available on machine.
and I find the I can't deviceQuery the GPU:
➜  ~ nvcc -V nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2015 NVIDIA Corporation Built on Mon_Apr_11_13:23:40_CDT_2016 Cuda compilation tools, release 7.5, V7.5.26
 ➜  ~ ~/cuda-samples/bin/x86_64/darwin/release/deviceQuery /Users/codeMan/cuda-samples/bin/x86_64/darwin/release/deviceQuery Starting...  CUDA Device Query (Runtime API) version (CUDART static linking) cudaGetDeviceCount returned 38 -> no CUDA-capable device is detected Result = FAIL
now I use the mac os, and Xcode8, how to solve it ?

If you can't run deviceQuery, then the problem is not with TensorFlow. Perhaps your computer does not have a CUDA-capable GPU

@yaroslavvb
My macbook pro 2014 have NVIDIA 750M, and I find the mac GPU course to download the library.
so how to solve? I don't know. THX

OK. I solve, is easy:NVIDIA CUDA 7.5 FOR MAC OS X RELEASE
download this, then OK!!!!!!
http://www.nvidia.com/object/macosx-cuda-7.5.30-driver.html
@yaroslavvb THX!

Glad you solved the problem @wwxFromTju. We hope TensorFlow serves you well in your studies. If you have any other questions in the future, the Stack Overflow community is a better forum for support. We try to keep this issue tracker focused on bugs and feature requests.

Thanks, That helps me.

Hello @jart @wwxFromTju
I have similar problem as yours.:
Any help appreciated!! thanks!
"libcuda reported version is: 310.42.25;
kernel reported version is: Invalid argument: expected %d.%d or %d.%d.%d form for driver version; got ""
My detailed problem is here: https://github.com/tensorflow/tensorflow/issues/2882
In brief: CUDA Driver (from Apple > System Preferences > CUDA)
CUDA Driver Version: 8.0.57
GPU Driver Version: 10.10.14 310.42.25f02

My setup:
I'm on Mac OS X 10.11.6. Installed CUDA 8, and CUDNN 5.1. I've followed the install instructions from official TF site. (as of Jan 23, 2017)
./deviceQuery
./deviceQuery Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

cudaGetDeviceCount returned 38
-> no CUDA-capable device is detected
Result = FAIL

@laventura sounds like you don't have CUDA-capable device (if your video card is AMD, it is not CUDA-capable)

@yaroslavvb
Here are the reports from System Report:  (About This Mac > System Report > Graphics )
So - does this support CUDA or does it not? I 'm at a loss to figure this out now.
 It seems your problem is outside of tensorflow since devicequery fails, maybe Nvidia support forums have tips

I've been running between CUDA/GPU and Tensorflow issues... 😩😩
TensorFlow on GPU worked for me earlier, with an older version of TensorFlow (0.10? cant recall) and   perhaps older CUDA too (also can't recall)
I've seen the networks train faster with this same GPU...
Unfortunately, upgrading TF led to many of these errors.. and now I can't figure out if it is GPU/CUDA problem or TF.
Of course, nobody in the Nvidia DevTalk forums have had similar issues... 😟
[The older problem was that TF couldn't use all the GPU memory....]
(See here: https://github.com/aymericdamien/TensorFlow-Examples/issues/38#issuecomment-265595019)

./deviceQuery failing indicates this is not a TF problem, but a general GPU problem

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain biomassiv.es has exceeded the max emails per hour (122/100 (122%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
------ The body of the message is 5256 characters long; only the first
------ 5000 or so are included here.
Received: from github-smtp2-ext4.iad.github.net ([<IP_ADDRESS>]:48764 helo=github-smtp2a-ext-cp1-prd.iad.github.net)
by chi-server32.websitehostserver.net with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256)
(Exim 4.87)
(envelope-from<EMAIL_ADDRESS>id 1cWmia-0032g0-Op
for<EMAIL_ADDRESS>Thu, 26 Jan 2017 10:16:12 -0600
Date: Wed, 25 Jan 2017 13:25:14 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com;
s=pf2014; t=1485379514;
bh=6z/AkFDojFc8QDhBXTHoeUbzRf+AWSxwJCLdajE99mk=;
h=From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID:
List-Archive:List-Post:List-Unsubscribe:From;
b=iYzUvQiiIlFeLCLDQslc/bdByhGKReWQ0ncUmNl/48FWVUBdFdEHDGYU83YoU3dzU
PLH5UC7CG6J9Kbr99g7NxOZsdeH/BDN5DxKCL+3txE83r0vj5shuDzcVgOwwn2Du6R
pp9I1AUWA3yEjsTO2CxyxCXetJ8lH3QAb0sbrHrw=
From: Atul Acharya<EMAIL_ADDRESS>Reply-To: tensorflow/tensorflow<EMAIL_ADDRESS>To: tensorflow/tensorflow<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [tensorflow/tensorflow] macbook pro GPU version, successfully
opened CUDA library, but not found the GPU (#4858)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_588917ba96a54_1d6c3fa0f1c2f138236643";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: laventura
X-GitHub-Recipient: biomassives
X-GitHub-Reason: subscribed
List-ID: tensorflow/tensorflow <tensorflow.tensorflow.github.com>
List-Archive: https://github.com/tensorflow/tensorflow
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AELU4gthhf9cfFjfk3zWNvG6DixiDos0ks5rV726gaJpZM4KSDvL
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>----==_mimepart_588917ba96a54_1d6c3fa0f1c2f138236643
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
@yaroslavvb
Here are the reports from System Report:  (About This Mac > System Report > Graphics )
So - does this support CUDA or does it not? I 'm at a loss to figure this out now.

Reply to this email directly or view it on GitHub:
https://github.com/tensorflow/tensorflow/issues/4858#issuecomment-275237366
----==_mimepart_588917ba96a54_1d6c3fa0f1c2f138236643
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: quoted-printable
@yaro=
slavvb
Here are the reports from System Report:  (About This Mac > Sys=
tem Report > Graphics )
So - does this support CUDA or does it not? I 'm at a loss to figu=
re this out now.
NVIDIA GeForce GT 750M:
  Chipset Model:	NVIDIA GeForce GT 750M
  Type:	GPU
  Bus:	PCIe
  PCIe Lane Width:	x8
  VRAM (Total):	2048 MB
  Vendor:	NVIDIA (0x10de)
  Device ID:	0x0fe9
  Revision ID:	0x00a2
  ROM Revision:	3776
  gMux Version:	4.0.8 [3.2.8]
  Displays:
Color LCD:
  Display Type:	Retina LCD
  Resolution:	2880 x 1800 Retina
  Retina:	Yes
  Pixel Depth:	32-Bit Color (ARGB8888)
  Main Display:	Yes
  Mirror:	Off
  Online:	Yes
  Built-In:	Yes
---- =
Intel Iris Pro:
Chipset Model:	Intel Iris Pro
Type:	GPU
Bus:	Built-In
VRAM (Dynamic, Max):	1536 MB
Vendor:	Intel (0x8086)
Device ID:	0x0d26
Revision ID:	0x0008
gMux Version:	4.0.8 [3.2.8]

&m=
dash;You are receiving this because you are subscribed to this thre=
ad.Reply to this email directly, view it on GitHub, or mute the thread.=

@biomassives you seem to have started spamming github threads, so I have blocked you.  Please contact us offline once you've fixed whatever you're doing to stop spamming threads.

@laventura hello, I'm running exactly the same problem as you, with ./deviceQuery failing. Did you solve that problem? Thanks!

@laventura Hello, have you solved your problem? I have run into exactly the same problem, with ./deviceQuery failing indicates the CUDA-capable device, but I follow the instruction on here. Thanks!