Update scalatest to 3.2.10

Updates org.scalatest:scalatest from 3.2.9 to 3.2.10.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (3.2.9).
You might want to review and update them manually.
build.sbt

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalatest", artifactId = "scalatest" } ]

labels: test-library-update, semver-patch, old-version-remains

Codecov Report

Merging #244 (2806ece) into master (93812b0) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #244   +/-   ##
=======================================
  Coverage   96.19%   96.19%
=======================================
  Files           4        4
  Lines         105      105
  Branches        6        6
=======================================
  Hits          101      101
  Misses          4        4

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 93812b0...2806ece. Read the comment docs.


kbld inspect should have an output option for lock file

Describe the problem/challenge you have
I am bringing in new capabilities, for example from a helm template call, and I want to quickly and efficiently build a kbld configuration file that I know encompasses the images outlined in that template.
$ helm template harbor bitnami/harbor | kbld inspect -f -
Images

Image     docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261
Metadata  -
Resource  deployment/harbor-chartmuseum (apps/v1) cluster

... [removed for brevity]

Image     docker.io/bitnami/redis:6.0.9-debian-10-r66
Metadata  -
Resource  statefulset/harbor-redis-master (apps/v1) namespace: default

14 images

Succeeded

This output, while very helpful, requires a fair bit of massaging to get into a kbld config format.  There is a JSON output, but even that output is a far cry from kbld's config format.
Describe the solution you'd like
Something along these lines:
$ helm template harbor bitnami/harbor | kbld inspect -f - -o kbld
apiVersion: kbld.k14s.io/v1alpha1
kind: Config
minimumRequiredVersion: 0.24.0
overrides:
- image: docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261
- image: docker.io/bitnami/harbor-adapter-clair:2.1.2-debian-10-r34
- image: docker.io/bitnami/harbor-adapter-trivy:2.1.2-debian-10-r37
- image: docker.io/bitnami/harbor-clair:2.1.2-debian-10-r33
- image: docker.io/bitnami/harbor-core:2.1.2-debian-10-r30
- image: docker.io/bitnami/harbor-jobservice:2.1.2-debian-10-r31
- image: docker.io/bitnami/harbor-notary-server:2.1.2-debian-10-r30
- image: docker.io/bitnami/harbor-notary-signer:2.1.2-debian-10-r31
- image: docker.io/bitnami/harbor-portal:2.1.3-debian-10-r0
- image: docker.io/bitnami/harbor-registry:2.1.2-debian-10-r31
- image: docker.io/bitnami/harbor-registryctl:2.1.2-debian-10-r31
- image: docker.io/bitnami/nginx:1.19.6-debian-10-r25
- image: docker.io/bitnami/postgresql:11.10.0-debian-10-r52
- image: docker.io/bitnami/redis:6.0.9-debian-10-r66

(I used helm template harbor bitnami/harbor | kbld inspect -f - --json | jq -r '.Tables[0].Rows[].image' to get the list of images)
This would also need to accept a kbld config as input, since some helm charts or similar manifests hide images in places that need to be added to the searchRules
Anything else you would like to add:
For super bonus points, and possibly outside the scope of this request, allow something to keep the original helm template in the output as well, so a --preserve-output  option or similar:
$ helm template harbor bitnami/harbor | kbld inspect -f - --preserve-output -o kbld
---
apiVersion: kbld.k14s.io/v1alpha1
kind: Config
minimumRequiredVersion: 0.24.0
overrides:
- image: docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261
- image: docker.io/bitnami/harbor-adapter-clair:2.1.2-debian-10-r34
- image: docker.io/bitnami/harbor-adapter-trivy:2.1.2-debian-10-r37
- image: docker.io/bitnami/harbor-clair:2.1.2-debian-10-r33
- image: docker.io/bitnami/harbor-core:2.1.2-debian-10-r30
- image: docker.io/bitnami/harbor-jobservice:2.1.2-debian-10-r31
- image: docker.io/bitnami/harbor-notary-server:2.1.2-debian-10-r30
- image: docker.io/bitnami/harbor-notary-signer:2.1.2-debian-10-r31
- image: docker.io/bitnami/harbor-portal:2.1.3-debian-10-r0
- image: docker.io/bitnami/harbor-registry:2.1.2-debian-10-r31
- image: docker.io/bitnami/harbor-registryctl:2.1.2-debian-10-r31
- image: docker.io/bitnami/nginx:1.19.6-debian-10-r25
- image: docker.io/bitnami/postgresql:11.10.0-debian-10-r52
- image: docker.io/bitnami/redis:6.0.9-debian-10-r66
---
# Source: harbor/charts/postgresql/templates/secrets.yaml
apiVersion: v1
kind: Secret
metadata:
  name: harbor-postgresql
  labels:
    app.kubernetes.io/name: postgresql
    helm.sh/chart: postgresql-10.2.1
    app.kubernetes.io/instance: harbor
    app.kubernetes.io/managed-by: Helm
type: Opaque
data:
  postgresql-postgres-password: "cEhlTzU4RFFRbQ=="
  postgresql-password: "bm90LXNlY3VyZS1kYXRhYmFzZS1wYXNzd29yZA=="
---
# Source: harbor/templates/chartmuseum/chartmuseum-secret.yaml
apiVersion: v1
kind: Secret
metadata:
  name: harbor-chartmuseum-secret
  labels:
    app.kubernetes.io/name: harbor
    helm.sh/chart: harbor-9.3.1
    app.kubernetes.io/instance: harbor
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/component: chartmuseum
type: Opaque
data:
  CACHE_REDIS_PASSWORD: ""
---
... [rest removed]

Some additional context which is pretty important in retrospect: most kbld commands assume accessibility to the containers that are being evaluated.  This assumption works great for most use cases, but in the event you're unable to actually reach out to the repository where the containers are hosted or that repository might be invalid, you need a solution that can work without inspecting the containers in real-time.

Some additional context which is pretty important in retrospect: most kbld commands assume accessibility to the containers that are being evaluated.  This assumption works great for most use cases, but in the event you're unable to actually reach out to the repository where the containers are hosted or that repository might be invalid, you need a solution that can work without inspecting the containers in real-time.

@voor could you also add context on what you are trying to do with list of images that were returned. i think understanding full workflow will give us better ideas how to address this e2e.

@voor could you also add context on what you are trying to do with list of images that were returned. i think understanding full workflow will give us better ideas how to address this e2e.

Sure!
The full end to end solution is to then take this file and add on overrides.  We relocate the images from (continuing the above example) docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261 to registry.example.com/oss/chartmuseum:0.12.0-debian-10-r261, so we then massage the output lock file into something that looks like this:
---
apiVersion: kbld.k14s.io/v1alpha1
kind: Config
minimumRequiredVersion: 0.24.0
overrides:
- image: docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261
  newImage: registry.example.com/oss/chartmuseum:0.12.0-debian-10-r261
  preresolved: true
- image: docker.io/bitnami/harbor-adapter-clair:2.1.2-debian-10-r34
  newImage: registry.example.com/oss/harbor-adapter-clair:2.1.2-debian-10-r34
  preresolved: true
- image: docker.io/bitnami/harbor-adapter-trivy:2.1.2-debian-10-r37
  newImage: registry.example.com/oss/harbor-adapter-trivy:2.1.2-debian-10-r37
  preresolved: true
- image: docker.io/bitnami/harbor-clair:2.1.2-debian-10-r33
  newImage: registry.example.com/oss/harbor-clair:2.1.2-debian-10-r33
  preresolved: true
- image: docker.io/bitnami/harbor-core:2.1.2-debian-10-r30
  newImage: registry.example.com/oss/harbor-core:2.1.2-debian-10-r30
  preresolved: true
- image: docker.io/bitnami/harbor-jobservice:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-jobservice:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/harbor-notary-server:2.1.2-debian-10-r30
  newImage: registry.example.com/oss/harbor-notary-server:2.1.2-debian-10-r30
  preresolved: true
- image: docker.io/bitnami/harbor-notary-signer:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-notary-signer:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/harbor-portal:2.1.3-debian-10-r0
  newImage: registry.example.com/oss/harbor-portal:2.1.3-debian-10-r0
  preresolved: true
- image: docker.io/bitnami/harbor-registry:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-registry:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/harbor-registryctl:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-registryctl:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/nginx:1.19.6-debian-10-r25
  newImage: registry.example.com/oss/nginx:1.19.6-debian-10-r25
  preresolved: true
- image: docker.io/bitnami/postgresql:11.10.0-debian-10-r52
  newImage: registry.example.com/oss/postgresql:11.10.0-debian-10-r52
  preresolved: true
- image: docker.io/bitnami/redis:6.0.9-debian-10-r66
  newImage: registry.example.com/oss/redis:6.0.9-debian-10-r66
  preresolved: true

This is happening completely offline, we don't have access to docker.io or registry.example.com at the time of creating this lock file.
We commit this config file into our git alongside the helm template output, and then in a completely separate workflow download containers from docker.io and upload them to registry.example.com using a separate tool.  That process is a little more cryptic, as we're actually downloading the container layers from docker.io, outputting them into a Docker Distribution file hierarchy and storing that file hierarchy into S3 following the S3 storage driver format for Docker Distribution/Registry outlined here https://github.com/docker/docker.github.io/blob/master/registry/storage-drivers/s3.md

Sure!
The full end to end solution is to then take this file and add on overrides.  We relocate the images from (continuing the above example) docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261 to registry.example.com/oss/chartmuseum:0.12.0-debian-10-r261, so we then massage the output lock file into something that looks like this:
---
apiVersion: kbld.k14s.io/v1alpha1
kind: Config
minimumRequiredVersion: 0.24.0
overrides:
- image: docker.io/bitnami/chartmuseum:0.12.0-debian-10-r261
  newImage: registry.example.com/oss/chartmuseum:0.12.0-debian-10-r261
  preresolved: true
- image: docker.io/bitnami/harbor-adapter-clair:2.1.2-debian-10-r34
  newImage: registry.example.com/oss/harbor-adapter-clair:2.1.2-debian-10-r34
  preresolved: true
- image: docker.io/bitnami/harbor-adapter-trivy:2.1.2-debian-10-r37
  newImage: registry.example.com/oss/harbor-adapter-trivy:2.1.2-debian-10-r37
  preresolved: true
- image: docker.io/bitnami/harbor-clair:2.1.2-debian-10-r33
  newImage: registry.example.com/oss/harbor-clair:2.1.2-debian-10-r33
  preresolved: true
- image: docker.io/bitnami/harbor-core:2.1.2-debian-10-r30
  newImage: registry.example.com/oss/harbor-core:2.1.2-debian-10-r30
  preresolved: true
- image: docker.io/bitnami/harbor-jobservice:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-jobservice:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/harbor-notary-server:2.1.2-debian-10-r30
  newImage: registry.example.com/oss/harbor-notary-server:2.1.2-debian-10-r30
  preresolved: true
- image: docker.io/bitnami/harbor-notary-signer:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-notary-signer:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/harbor-portal:2.1.3-debian-10-r0
  newImage: registry.example.com/oss/harbor-portal:2.1.3-debian-10-r0
  preresolved: true
- image: docker.io/bitnami/harbor-registry:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-registry:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/harbor-registryctl:2.1.2-debian-10-r31
  newImage: registry.example.com/oss/harbor-registryctl:2.1.2-debian-10-r31
  preresolved: true
- image: docker.io/bitnami/nginx:1.19.6-debian-10-r25
  newImage: registry.example.com/oss/nginx:1.19.6-debian-10-r25
  preresolved: true
- image: docker.io/bitnami/postgresql:11.10.0-debian-10-r52
  newImage: registry.example.com/oss/postgresql:11.10.0-debian-10-r52
  preresolved: true
- image: docker.io/bitnami/redis:6.0.9-debian-10-r66
  newImage: registry.example.com/oss/redis:6.0.9-debian-10-r66
  preresolved: true

This is happening completely offline, we don't have access to docker.io or registry.example.com at the time of creating this lock file.
We commit this config file into our git alongside the helm template output, and then in a completely separate workflow download containers from docker.io and upload them to registry.example.com using a separate tool.  That process is a little more cryptic, as we're actually downloading the container layers from docker.io, outputting them into a Docker Distribution file hierarchy and storing that file hierarchy into S3 following the S3 storage driver format for Docker Distribution/Registry outlined here https://github.com/docker/docker.github.io/blob/master/registry/storage-drivers/s3.md

Hey @voor, thanks for submitting this. We think its a great idea to have kbld inspect output a kbld Config format. We are going to discuss with product and add a story to our backlog.
As a general question, what other output formats do we think we could support in the future? That may influence whether we use a generic flag like kbld -f - -o kbld or something more specific like --kbld-config-output.

Hey @voor, thanks for submitting this. We think its a great idea to have kbld inspect output a kbld Config format. We are going to discuss with product and add a story to our backlog.
As a general question, what other output formats do we think we could support in the future? That may influence whether we use a generic flag like kbld -f - -o kbld or something more specific like --kbld-config-output.

A very similar request mentioned in this Slack conversation: https://kubernetes.slack.com/archives/CH8KCCKA5/p1630636823106500


Hackers

Will hackers be able to ruin this type of server?

 Remember woomy arras?

 Remember woomy arras?

Perhaps. I suggest you try.

Perhaps. I suggest you try.

answer is yes

yes, the packets should have been changed to make hacking more difficult

@Erisfiregamer1
i SWeaR tO The FuCKING goDS FAriS90, I ReMEMBER yOU. ReMemBeR WOoMY ArRaS? we neVEr FOrgoT, and LEaVe tHis FucKiNG PLaCe.


Changing VLC port on MacOS

Hi @RGPaul
Thanks for the project!
Any idea how to change the default port from 8080 on MacOS?
Thanks in advance

Unfortunately I have no idea how to change the default port.

Okay I found out that there is a configuration file: ~/Library/Preferences/org.videolan.vlc/vlcrc
If you open this file you can change the port.
Around line 3760 there is something like this:
# HTTP server port (integer)
#http-port=8080

You can change it for example to this:
# HTTP server port (integer)
http-port=8888

That works for me

Thanks a lot @RGPaul.
Here's another way I found out as well through GUI:


Inline Settings Modal: certain fields don't accept additional props

Description
When adding fields to the inline settings modal config, when trying to set field-specific config, a type issue blows up the site.
Still trying to figure out which fields are affected by this. Right now, the select field and the toggle field (with the new toggleLabels feature) get a type error.
Steps to reproduce
Head to demo-next, on the nesting page there are some settings modal fields defined on the first InlineGroup. Add a 'select' field and try to pass options, e.g:
{
  name: 'select',
  component: 'select',
  options: [1, 2, 3, 4, 5],
},

Expected result
The fields should render in the modal as expected if the field configuration is correct.
Actual result
The site blows up.
Type '{ name: string; component: string; options: number[]; }' is not assignable to type 'Field<AnyField>'.
  Object literal may only specify known properties, and 'options' does not exist in type 'Field<AnyField>'.
    125 |                   name: 'select',
    126 |                   component: 'select',
  > 127 |                   options: [1, 2, 3, 4, 5],
        |                   ^
    128 |                 },
    129 |               ]}
    130 |             >

Reproducible off master.

This may just be an issue in the demo in the monorepo. I tried to recreate via the webpack helpers on an external project and didn't run into this issue.

Closing until we see another instance.


chore Porting to GCC-12

Proposed changes
Issue Number: close #18559
Problem summary
The definitions of _mm_cvtsi128_si16 conflicts.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[x] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Tomorrow launch data

Starlink 4-19 tomorrow:

Scheduled June 17 at 12:08:50 p.m. ET (16:08:50 UTC)
Core is B1060
Landing on ASOG

:+1: Thanks

The API is showing he next launch as June 1st 2022.  Looks like the API data is not updated with the most recent launch data.

Yes, it still reads 2022-06-01 instead of 2022-06-17


doctrine.yaml configuration issue

I've had an issue when trying to configure a Symfony application using this package and doctrine/orm 2.8. The error which gets thrown is:
Unrecognized option "uuid_binary_ordered_time" under "doctrine.dbal.types.mapping_types". Available options are "class", "commented".

Looking at the doctrine yaml reference, it seems that the doctrine.dbal.types.mapping_types parameter has been removed in 2.8. Omitting it from the doctrine.yaml configuration appears to fix the issue.
I am not entirely sure if this would be 100% correct. As of now, all of the testing I've done shows that everything is linked up appropriately. I've taken the liberty of updating README.md and creating a PR for it (#159).

doctrine.dbal.types.mapping_types is something defined by doctrine/doctrine-bundle, not doctrine/orm - check your dependency graph.


[Calyx/Cider + Frontends] Metadata rewrite

This implements the proposal in #994, the only major difference with the described minimum proposal is that this uses #{ and }# as the delimiting characters, rather than { and } as the latter are likely to appear in source positions.
This means that the metadata now appears at the end of the file like:
...
METADATA #{
 // Some stuff
}#

On the IR side the stuff between the brackets is treated as an opaque string so it only gets parsed as the metadata source map when given to Cider.
The main benefit is that this simplifies the user calls, so that the following now suffices to pass source position from the frontends
fud e --to debugger tests/frontend/systolic/array-3.systolic -s systolic.flags "--write-metadata " -q

fud e --to debugger lenet.relay -s relay.flags "--write-metadata " -q

If metadata is not present or an empty string it is not printed by the IR printer.
There are also some minor changes to the language parser to accommodate the optional existence of metadata, mostly because pest_consume was fighting me

LGTM!

@cgyurgyik just a note that the metadata format changed slightly from the original proposal


Posts in archive-product.twig instead of Products

Hi,
That's a nice piece of code we have here, thanks for sharing your work !
Everything's fine with the default single-product.twig & content-product.twig files i copied from the package, but i have an issue with archive-product.twig where the wc_get_loop_prop loop is returning Timber\Integrations\WooCommerce\Product instances of blog posts instead of products, here :
<ul class="products columns-{{ fn('wc_get_loop_prop', 'columns')|e }}">
      {% if fn('wc_get_loop_prop', 'total') %}
          {% for product in posts if fn('have_posts') %}
             {{ dump(product) }} {# <- Got Blog posts as Timber\Integrations\WooCommerce\Product here #}

            {{ fn('wc_get_template_part', 'content', 'product' ) }}
        {% endfor %}
    {% endif %}
</ul>

I could force the posts in the context in woocommerce.php, but that might not be the best solution :
add_filter('timber/woocommerce/context', function($context){
    if ( is_archive() ) {
            $posts = Timber::get_posts();
            $context['posts'] = $posts;
        }
    return $context;
});

Timber\Integrations\WooCommerce\WooCommerce::render_default_template();

Any hint on what could be the problem ?

Hey @tameroski! Thanks for the kind words :).
Yeah, this was actually a compatibility problem when using posts that don’t have the product post type on a shop page. I naively checked for is_woocommerce() and applied the Product class to all Timber posts in that condition. I’ve been working on a solution for this in the last couple of weeks, because I ran into the same problems and I think I now have a solution that works well. Check out the Release Candidate: https://github.com/mindkomm/timber-integration-woocommerce/releases/tag/0.6.0-rc.1.
I’d be happy if you could test it and report back if it solves your problem:
composer require mindkomm/timber-integration-woocommerce:dev-master

Hi @gchtr !
Thanks for the update.
Unfortunately, after upgrading to dev:master and updating the twig templates in my theme, i still got the same behaviour
{% if fn('wc_get_loop_prop', 'total') %}
    {% for product in posts %}

        {{ dump(product) }} //  Still got a list of blog posts here, instead of a list of products

        {##
         # Depending on your WooCommerce display settings, the
         # `woocommerce_product_subcategories` function might reset the $wp_query global. By
         # calling `have_posts()`, we check if there are posts we can display.
         #}
        {% if fn('have_posts') %}
            {{ fn('wc_get_template_part', 'content', 'product' ) }}
        {% endif %}
    {% endfor %}
{% endif %}

The products count displayed through {% do wc_action('woocommerce_archive_description') %} just before the loop is accurate, though. This is weird.

@tameroski Okay, in that case we’ll need to investigate further. Just so I understand you correctly:

Do you want to display any blog posts alongside your products on your products archive, or do you only want your products on your products archive?
What page did you set as your page for posts in Settings → Reading?
Is your products archive also your front page, or a different page?

No, i don't need to display any blog posts alongside my products in that project
The posts page is a custom "Blog" page. So is the front page.
The archive page is not the front page

Damn, I can’t reproduce your issue. So let’s see:
woocommerce.php
// Do you have posts or products here?
var_dump( Timber::get_posts() );

Timber\Integrations\WooCommerce\WooCommerce::render_default_template();

archive-product.twig
{{ dump(posts) }} {#  Do you have posts or products here? #}

{% if fn('wc_get_loop_prop', 'total') %}
	{{ dump(posts) }} {#  Do you have posts or products here? #}

    {% for product in posts %}
        {% if fn('have_posts') %}
			{{ dump(product) }} {#  Do you have a blog post or a product here? #}

            {{ fn('wc_get_template_part', 'content', 'product' ) }}
        {% endif %}
    {% endfor %}
{% endif %}

What do you get in your views/woocommerce/content-product.twig file? Blog posts or products?
What else have you got in your archive-product.twig view? Is your code example everything you have in there?
Could it be that something else is hooking into the timber/context filter an is updating posts? Another plugin? Something else in your theme?
Does flushing your permalinks help?
Sometimes we still see weird compatibility bugs with other plugins. So does deactivating other plugins (except for WooCommerce) help?

Hi,
So i made a few tests as requested. Here's what i get :
woocommerce.php
Timber::get_posts() returns an array of Timber\Integrations\WooCommerce\Product. So far so good.
archive-product.twig
{{ dump(posts) }} {#  I've got a Timber\PostQuery with "post_type=post" here #}

{% if fn('wc_get_loop_prop', 'total') %}
	{{ dump(posts) }} {#  Same here. I've got a Timber\PostQuery with "post_type=post" here #}

    {% for product in posts %}
        {% if fn('have_posts') %}
			{{ dump(product) }} {#  Got a Timber\Post #}

            {{ fn('wc_get_template_part', 'content', 'product' ) }}
        {% endif %}
    {% endfor %}
{% endif %}

content-product.twig
Here is the weird part : i've got a WC_Product_Simple here, but the same on each iteration.
And the hooks are returning the Timber\Post data :sweat_smile:
Other questions

My templates are just simple copies of the ones in the packages. I only changed {% for posts in posts %} for {% for product in posts %} so i can get a product var in content-product. If i rollback this change, i've got Timber\Integrations\WooCommerce\Product instances in content-product.twig instead of WC_Product_Simple :confused:
Disabling all other plugins had no effect.
Flushing the permalinks had no effect.
The only thing hooking on timber/context is the package's Woocommerce.php

I'll try to have a deeper look into this on my side today.

Ok, i finally found what's the issue. Spoiler : i'm very sorry for wasting some of your time.
As i display blog posts on several pages in the theme, i was adding them to the context of all pages, including archives, but did'nt pay attention to that ... Sorry for the earlier misleading comment.
So the workaround for displaying posts and products on the same page, is adding posts to the context with a different variable name, i guess ?

@tameroski Cool, I’m glad you found the issue and that it’s not directly related to the integration. And no worries, we’ve all been there. 😊

So the workaround for displaying posts and products on the same page, is adding posts to the context with a different variable name, i guess ?

Well, if you want to keep your global posts variable, you could update your WooCommerce pages to use products instead of posts. In the newest version of the integration, you can pass a context to render_default_template() that is merged with Timber::get_context().
woocommerce.php
Timber\Integrations\WooCommerce\WooCommerce::render_default_template( [
    'products' => Timber::get_posts(),
] );

Then, in your Twig file, you would have to make sure that you loop over products instead of posts.
{% for product in products %}
    {% if fn('have_posts') %}
        {{ fn('wc_get_template_part', 'content', 'product' ) }}
    {% endif %}
{% endfor %}

However, because in Timber using posts as the name for default query, you might run into other issues. So I would actually recommend to use a different variable name for your blog posts in your global context.
And I would add conditial checks for when your blog posts are actually added to the global context. Maybe you could also write a small function that would get the blog posts when needed:
{% for post in fn('theme_get_blog_posts') %}

{% endfor %}

functions.php
function theme_get_blog_posts() {
	return Timber::get_posts( [
        // Your custom blog post query here.
    ] );
}

I think I can close this :)


--maxWorkers behavior unintuitive

🐛 Bug Report
The behavior of --maxWorkers isn't totally clear.
Usage information from jest --help:
  --maxWorkers, -w              Specifies the maximum number of workers the
                                worker-pool will spawn for running tests. This
                                defaults to the number of the cores available on
                                your machine. (its usually best not to override
                                this default)                           [number]

Expected
This sounds to me like the option should set a ceiling on the number of workers, and that the actual number of workers used would still vary depending on other factors.
Is this the case? What are those factors?

The number of tests/suites?
The number of CPUs available?
Other hardware resources?

In particular, I expect to get the lesser of 1) jest's inferred worker count (node os.cpus().length), and 2) the specified integer.
Actual
It appears that --maxWorkers in practice sets the actual number of workers, not a ceiling on the number of workers.
Why
I want to set a ceiling to avoid database contention, but below that I still want the number of workers to scale with the number of processor cores. This way I can still get extra concurrency on a many-core machine without totally swamping a dual-core notebook.
What to do

Are my observations correct?
Either change --maxWorkers' behavior or usage information
Maybe a new way set a ceiling? (e.g. --maxWorkers <7)

"Maximum number of workers" could be interpreted as "unless there's fewer test suites to run", which I think is currently the other limit - but I agree that this is unintuitive, the number of cores should also be an upper bound (at least I can't think of a reason why you'd want more workers than cores).
Do you want to send a PR fixing this? Here's the code that currently determines the internal maxWorkers value :) https://github.com/facebook/jest/blob/908161251af23cde7dcf78ba8b5acf828a59998a/packages/jest-config/src/getMaxWorkers.ts#L32

Sure, if that's all it takes! I was expecting to encounter more complexity than this. I'll try to prepare a PR in the next few days.

I ran into this and agree with @jrr. I need my worker count to be the minimum of "cpu count" and a hardcoded maximum value. Expected --maxWorkers to do that.


glScissors Instructions

basically the same as #2393 but using Tshirtman's file structure and his properties.

Hi, can someone merge this PR please? Thanks.

That was fast :)


[Question]: Is it possible to remove the [DISCORD] prefix?

Question
Is it possible to remove the [DISCORD] prefix from users who send messages from discord?

Thanks


Tab bars cover first line of terminal

I have a fresh installation of hyper on windows. I have installed hyper-native through npm, and then put it in the hyper config file under "plugins". It's fully functional, except the top bar is missing, the top line of text is underneath the main menu button, and while active, the tabs cover the top line of text.
If I scroll over the upper-right corner, I do get a red "x". I would guess that the top bar isn't being rendered?
This is what it looks like after typing cls followed by echo "this is the first line":

This theme is only meant to be used on macOS. Looks like you're using it on Windows... 😊


Added mappings for Xbox 360 Controller on Linux

Added button code for pressing in thumbsticks
Fixed typo where bumpers were referred to as axis, instead of triggers

Also I started mapping out the Windows versions, but I ran into some issues. Namely that the guide button wouldn't register, and both triggers were "Axis 4", with one being negative (resulting in some weirdness and overlapping values). I can make a pull request with a partially complete set of Windows values if you want though.

This + the windows mapping would be very helpful! I hope this gets merged.
FWIW, these match what I found in my testing as well (linux).
Thanks for your work @WilliamHayward

@Tom-Ski - Not sure what "Backend" means specifically in this context, so here's some general information on the circumstances:
OS: Xubuntu 16.04
Controllers: First party and third party wired Xbox 360 Controller
IDE: Eclipse Neon
Java version: 1.8
Hope that helps!

For what it's worth, I am using this code with the LWJGL3 desktop backend.
On Jan 13, 2017 22:59, "William Hayward"<EMAIL_ADDRESS>wrote:

@Tom-Ski https://github.com/Tom-Ski - Not sure what "Backend" means
specifically in this context, so here's some general information on the
circumstances:
OS: Xubuntu 16.04
Controllers: First party and third party wired Xbox 360 Controller
IDE: Eclipse Neon
Java version: 1.8
Hope that helps!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/libgdx/libgdx/pull/4438#issuecomment-272599830, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AB-fVe1854UqTp65v4OVy52FnuwQgXjdks5rSEg6gaJpZM4K8cWk
.

Lwjgl vs Lwjgl3


Run manager with 2 replicas

This pr is to run the manager with 2 replicas for high availability.
We are testing this if our issue is resolved in https://issues.redhat.com/browse/ECOPROJECT-1855.

/test 4.14-openshift-e2e

Just increasing replicas to 2 is not enough to resolve ECOPROJECT-1855. AntiAffinity is not configured to the deployment. So 2 of the controllers may be executed on the same node.
Now it's changed to configure podAntiAffinity according to https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/

/test 4.14-openshift-e2e

Just increasing replicas to 2 is not enough to resolve ECOPROJECT-1855. AntiAffinity is not configured to the deployment. So 2 of the controllers may be executed on the same node.

That's an interesting point we should probably consider that for our other operators which are using the same approach.
However from what I understand the change (i.e anti-affinity for control-plane) only makes sure the manager pod isn't running on a control plane node, so I'm not sure how it would solve the problem.
Am I missing something ?

The following configuration ensures that no two pods with the label "control-plane: controller-manager" can't be scheduled on the same node.
              affinity:
                podAntiAffinity:
                  requiredDuringSchedulingIgnoredDuringExecution:
                  - labelSelector:
                      matchExpressions:
                      - key: control-plane
                        operator: In
                        values:
                        - controller-manager
                    topologyKey: kubernetes.io/hostname

For example, it's trying to deploy two manager pods, but the only one worker is available now.
In my env, the manager pod doesn't have a matching toleration with the "node-role.kubernetes.io/master", so the manager pods can be deployed on worker nodes only.
[root@lbdns self-node-remediation]# oc get node
NAME       STATUS                     ROLES                  AGE   VERSION
master-0   Ready                      control-plane,master   43d   v1.27.6+f67aeb3
master-1   Ready                      control-plane,master   43d   v1.27.6+f67aeb3
master-2   Ready                      control-plane,master   43d   v1.27.6+f67aeb3
worker-0   Ready                      worker                 43d   v1.27.6+f67aeb3
worker-1   Ready,SchedulingDisabled   worker                 43d   v1.27.6+f67aeb3
worker-2   Ready,SchedulingDisabled   worker                 43d   v1.27.6+f67aeb3

Before applying this patch, both of manager pods can be deployed on the worker-0, but now  the above AntiAffinity is configured to the deployment. So the 2nd manager pod can't be deployed on the worker-0 and it becomes the "Pending" status.
[root@lbdns self-node-remediation]# oc get pods -o wide
NAME                                                              READY   STATUS      RESTARTS   AGE     IP            NODE       NOMINATED NODE   READINESS GATES
self-node-remediation-controller-manager-88646cd74-cs5m8          1/1     Running     0          20m     <IP_ADDRESS>   worker-0   <none>           <none>
self-node-remediation-controller-manager-88646cd74-jbglq          0/1     Pending     0          2m29s   <none>        <none>     <none>           <none>

The 1st manager pod, self-node-remediation-controller-manager-88646cd74-cs5m8, is already deployed on the worker-0.
It has the "control-plane=controller-manager" label. So any pod with the "control-plane=controller-manager" label won't be deployed on the worker-0. This is the reason why the 2nd manager pod is in the "Pending" status.
[root@lbdns self-node-remediation]# oc describe pod self-node-remediation-controller-manager-88646cd74-cs5m8
Name:                 self-node-remediation-controller-manager-88646cd74-cs5m8
Namespace:            openshift-operators
Priority:<PHONE_NUMBER>
Priority Class Name:  system-cluster-critical
Service Account:      self-node-remediation-controller-manager
Node:                 worker-0/<IP_ADDRESS>
Start Time:           Thu, 22 Feb 2024 16:10:31 +0000
Labels:               control-plane=controller-manager
                      pod-template-hash=88646cd74
                      self-node-remediation-operator=

We can confirm the events if the AntiAffinity is working well as expected.
[root@lbdns self-node-remediation]# oc describe pod self-node-remediation-controller-manager-88646cd74-jbglq
...
Tolerations:                 node.kubernetes.io/memory-pressure:NoSchedule op=Exists
                             node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason            Age                  From               Message
  ----     ------            ----                 ----               -------
  Warning  FailedScheduling  77s (x4 over 4m31s)  default-scheduler  0/6 nodes are available: 1 node(s) didn't match pod anti-affinity rules, 2 node(s) were unschedulable, 3 node(s) had untolerated taint {node-role.kubernetes.io/master: }. preemption: 0/6 nodes are available: 1 node(s) didn't match pod anti-affinity rules, 5 Preemption is not helpful for scheduling..

After one more worker node(worker-1) is available, the 2nd manager pod will be scheduled on the worker-1 soon.
[root@lbdns self-node-remediation]# oc adm uncordon worker-1
node/worker-1 uncordoned
[root@lbdns self-node-remediation]# oc get pods -o wide
NAME                                                              READY   STATUS      RESTARTS   AGE   IP            NODE       NOMINATED NODE   READINESS GATES
ed37de5c79174808125e3dbffd6aef0c79224569c22a7bd5a9056f7af1gh962   0/1     Completed   0          15h   <IP_ADDRESS>   worker-0   <none>           <none>
quay-io-kkii-self-node-remediation-operator-bundle-latest         1/1     Running     0          15h   <IP_ADDRESS>    worker-0   <none>           <none>
self-node-remediation-controller-manager-88646cd74-cs5m8          1/1     Running     0          42m   <IP_ADDRESS>   worker-0   <none>           <none>
self-node-remediation-controller-manager-88646cd74-jbglq          0/1     Running     0          24m   <IP_ADDRESS>   worker-1   <none>           <none>
self-node-remediation-ds-c74fx                                    1/1     Running     0          15h   <IP_ADDRESS>   worker-2   <none>           <none>
self-node-remediation-ds-jgjlj                                    1/1     Running     0          15h   <IP_ADDRESS>   worker-1   <none>           <none>
self-node-remediation-ds-nbslh                                    1/1     Running     0          15h   <IP_ADDRESS>   master-1   <none>           <none>
self-node-remediation-ds-p5fsv                                    1/1     Running     0          15h   <IP_ADDRESS>   master-0   <none>           <none>
self-node-remediation-ds-x4g7p                                    1/1     Running     0          15h   <IP_ADDRESS>   worker-0   <none>           <none>
self-node-remediation-ds-x8f67                                    1/1     Running     0          15h   <IP_ADDRESS>   master-2   <none>           <none>

Thanks for the explanation, and really good job of catching this use-case !
/lgtm
Just a small Nit: I think you meant "can" instead of "can't"

no two pods with the label "control-plane: controller-manager" can't be

/hold

/test ?

/test 4.14-openshift-e2e


Update gdf to write vx_type_int64 type tensor to file

Gdf needs to be updated to write int64 type tensor to file. Writes the wrong values

Merged with #330


bin problem in histograms

Describe the bug
I have a data table of 79 observations and 50 variables. I generate the profiling report regularly. I have used pandas-profiling 2.1 for quite a long time.
There are some variables with the discrete values of (0, 1, 2, 3, 4, 5). The histogram looked like this in version 2.1:

The same report in version 2.8 looks like this:

In version 2.8 there are 10 bins created which is not the best solution in this case.
I have tried to set the number of bins manually in the yaml config file but it was unsuccessful.
I am not sure if it is a bug or it is only my misunderstanding of the configuration and parameters.
Please help me to solve this problem!
Thanks a lot!
To Reproduce
We would need to reproduce your scenario before being able to resolve it.
Data:
 #   Column             Non-Null Count  Dtype
---  ------             --------------  -----
31  OK75_num           79 non-null     int64

The values are (0, 1, 2, 3, 4, 5) values.
Code: Preferably, use this code format:
from pandas_profiling import ProfileReport
profile = ProfileReport(df, config_file='profiler_settings.yml')
profile.to_file("profiler_report.html")
pool_size: 7
plot:
    histogram:
        bins: 6
        bayesian_blocks_bins: no
    image_format: svg
    dpi: 800
    scatter_threshold: 1000
    correlation:
        cmap: RdBu
        bad: '#000000'
    missing:
        cmap: RdBu
        force_labels: yes
title: "Report title"
progress_bar: yes
variables:
    descriptions: {}
vars:
    num:
        quantiles:
        - 0.05
        - 0.25
        - 0.5
        - 0.75
        - 0.95
        skewness_threshold: 20
        low_categorical_threshold: 5
        chi_squared_threshold: 0
    cat:
        length: yes
        unicode: no
        cardinality_threshold: 50
        n_obs: 6
        chi_squared_threshold: 0
        coerce_str_to_date: no
    bool:
        n_obs: 3
    file:
        active: no
    image:
        active: no
        exif: yes
        hash: yes
sort: None
missing_diagrams:
    bar: no
    matrix: no
    heatmap: no
    dendrogram: no
correlations:
    pearson:
        calculate: no
        warn_high_correlations: yes
        threshold: 0.9
    spearman:
        calculate: no
        warn_high_correlations: no
    kendall:
        calculate: no
        warn_high_correlations: no
    phi_k:
        calculate: no
        warn_high_correlations: no
    cramers:
        calculate: no
        warn_high_correlations: yes
        threshold: 0.9
    recoded:
        calculate: no
        warn_high_correlations: no
        threshold: 0.0
interactions:
    targets: []
    continuous: yes
categorical_maximum_correlation_distinct: 6
n_obs_unique: 5
n_extreme_obs: 5
n_freq_table_max: 6
#n_freq_table_max: 10
memory_deep: no
duplicates:
    head: 10
samples:
    head: 5
    tail: 5
reject_variables: no
notebook:
    iframe:
        height: 800px
        width: 100%
        attribute: srcdoc
html:
    minify_html: yes
    use_local_assets: yes
    inline: yes
    navbar_show: yes
    file_name: None
    style:
        theme: None
        #theme: "flatly"
        logo: ''
        primary_color: '#337ab7'
        #primary_color: "#2c3e50"
        full_width: yes

Version information:

Python version: Python 3.7.3 64 bit (anaconda3).
Environment: vs code and local Jupyter Notebook
pip: If you are using pip, run pip freeze in your environment and report the results. The list of packages can be rather long, you can use the snippet below to collapse the output.

I suggest you to turn on plot.histogram.bayesian_blocks_bins in your case. It was set to false by default in recent release because it spent too much time on large data sets.
As for the plot.histogram.bins parameter, it's kind of misleading and actually works only if bayesian_blocks_bins is true. Regular histograms always use numpy to automatically choose the number of bin.
https://github.com/pandas-profiling/pandas-profiling/blob/be8baee64cebb49aea187fa05efe8ba84e7823c8/src/pandas_profiling/model/summary.py#L170
I suggest that use plot.histogram.bins also as parameter in general histograms. (How about -1=auto?). This is going to be a compact PR if someone wants to work on this.

Than you for your reply, @loopyme,
I have tried with these settings:
plot:
    histogram:
        bins: 6
        bayesian_blocks_bins: yes

The result is not what I expected. Looks like this:

The histogram should be build from this table:

I think your idea about plot.histogram.bins is great and straight forward. I would imagine if someone will need to define different number of bins for each variable. Is it possible to define it somehow?

After some tests, I found my error and I am very sorry that I pointed out the wrong bug position. I think cause of this problem is complex, the most direct reason(May not be the real reason) comes from here:
https://github.com/pandas-profiling/pandas-profiling/blob/58d4a5408e6064a22c4155466de3deac6c894b9a/src/pandas_profiling/report/structure/variables/render_real.py#L100
bayesian_blocks_bins can do something with the histogram, but it doesn't seem to work the way @pvojnisek want either. I believe the problem is not in the adjustment of the default config, but in the fact that plot.histogram.bins does not control the render behavior.
Different config for each variable is currently not supported, however.

@sbrugman  Any comment or existing solution on the bug? I will continue to work on this issue if necessary.

Thanks for reporting this @pvojnisek. As @loopyme points out, the bin size used to be (unintelionally) hard-coded in render_real.py. The next release will pre-compute histograms earlier in the process anyway, which will in addition to more efficient parallelization include a fix for this problem.

The v2.9.0rc1 release is out, and should resolve this issue.
Until this version is fully released, you can install it via pip in the following way:
pip install --pre -U pandas-profiling

It would be very helpful to know if the release candidate adequately solves the issue.


Check response data type before appending

My implementation of responses sometimes has integers as the response content. This will of course produce an error trying to access an index of an integer like an array.
I have added a check to make sure the response data is an array before trying to attach the debug property to the response.
Also: I have added a small convenience for seeing the total time of all the queries in the query collection.

@mlanin added :)

Tests are failing now :(

@mlanin looks like for some reason the $this->json() method is returning the standard Illuminate\Http\Response type instead of the TestResponse, which makes sense why it can't find the assertJsonMissingExact() method.
Did I do anything wrong in the return type?
/** @test */
public function is_does_not_add_debug_if_response_is_integer()
{
    $this->app['router']->get('foo', function () {
        lad('test if integer');

        return response()->json(1234);
    });

    $this->json('get', '/foo')
         ->assertStatus(200)
         ->assertJsonMissingExact([
            'debug' => [
                'dump' => [
                    'test if integer',
                ]
            ]
         ]);
}

Tests are failing for php 5.6 version. The highest laravel version that supports this is 5.4.36. But this version doesn't have assertJsonMissingExact method :(

Can we include this version requirement of laravel in composer.json then? The copy I have installed v5.7.28.

But this package supports 5.4 version. Your PR is really good, please, adjust your test and I'll merge it asap :)

But this package supports 5.4 version. Your PR is really good, please, adjust your test and I'll merge it asap :)

I've updated the composer.json to use version of packages that are compatible with your requirements so composer doesn't try to install a newer version. I also added requirements for sqlite since it was missing from my machine and the tests were failing (Ubuntu 19).

Closing from lack of activity from the maintainer. Feel free to reopen if you want it merged.


How to write unittest for WebSocketConsumer class?

Hi there,
I am trying to write some test cases for my websocket consumer class (which inherits JsonWebsocketConsumer ) But I keep getting an error saying "AssertionError: Channel name not valid".  Could you kindly provide some help about where went wrong?
Here is approximately my test code:
class MyTestCase(ChannelTestCase):
       def test_a_thing(self):
            with apply_routes([route_class(WSConsumer)]):
                    client = Client()
                    consumer = client.send_and_consume('websocket.receive', {'METHOD': 'subscribe'})

Is there any examples about how to unittest websocket consumer class? I was looking at the code under channels.tests.test_generic.

Hmm, that looks like a valid use of it. Could you post the full traceback?

Traceback (most recent call last):
File "my_app_root_folder/my_app/consumers/tests.py", line 26, in testConnect
consumer = client.send_and_consume('websocket.receive', {'method': 'SUBSCRIBE'})
File "my_app_root_folder/venv/lib/python2.7/site-packages/channels/tests/base.py", line 126, in send_and_consume
self.send(channel, content)
File "my_app_root_folder/venv/lib/python2.7/site-packages/channels/tests/base.py", line 105, in send
self.channel_layer.send(to, content)
File "my_app_root_folder/venv/lib/python2.7/site-packages/asgiref/inmemory.py", line 45, in send
assert self.valid_channel_name(channel), "Channel name not valid"
AssertionError: Channel name not valid

Channels are identified by a unicode string name....
So use "u" string prefix for channels names or just import  unicode_literals at the
from __future__ import unicode_literals

Aha, yes, that's probably it. We should improve the error message.

Yes, putting the 'u' prefix fixed the invalid channel name issue.
I am still confused about how to test my websocket consumer class. client.send_and_consume() returns an object of MyWebSocketConsumer, but doesn't trigger the consumer method itself. How should I trigger it?
My code looks like this:
 def testSubscribe(self):
        with apply_routes([route_class(MyWebSocketConsumer)]):
            client = Client()
            data = {
                'text': {'method': 'SUBSCRIBE'},
                'path': '',
                'order': 1
            }
            consumer = client.send_and_consume(u'websocket.receive', data)
            print consumer

Should I just call this after send_and_consume()?
consumer({'method': 'SUBSCRIBE'})

By default when you call send_and_consume method client just put new message to the channel_layer, then trying to find consumer for this message and call this consumer at success (otherwise AssertionError will be called). Usually you don't need to look at a result of send_and_consume method, because it return result of consumer (consumers as function usually return nothing and classbased consumers return result of __init__  method - self as you see ). Often we expect some replying at receive action, so in this case use client.receive method to check an answer. For consumers with other actions you must check your expectations in other ways.
By the way, use HttpClient for easy testing websocket consumers.
More suitable example:
from channels.tests import ChannelTestCase
from channels.tests import apply_routes, HttpClient

class MyConsumer(JsonWebsocketConsumer):

    def receive(self, content, **kwargs):
        self.send({'result': 'ok', 'task': content['task']})

class MyTestCase(ChannelTestCase):

    def test_consumer(self):

        with apply_routes(route_class(MyConsumer, path='/')):
            client = HttpClient()
            client.send_and_consume(u'websocket.receive', path='/', text={'task': 'test'})
            self.assertEqual(client.receive(), {'result': 'ok', 'task': 'test'})
            self.assertFalse(client.receive())  # check that is nothing to receive

I figured out that in my case it didn't trigger the consumer because I passed in 'order' as 1...
Changing it to 0 fixed it.
Thank you very much for the help!


docs(svelte-scoped): change "server hooks" to "hooks.server.js" in error message and docs

The docs say server.hooks.js instead of hooks.server.js so fixing that, also updated the error message to be more clear about what the file name should be.

Thanks for fixing the title! 😊


⚠ Samsung has degraded performance

In 23d44e4, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 3060 ms

Resolved: Samsung performance has improved in cca1db0.


Semantic versioning

Can you use semantic versioning, please?
This <IP_ADDRESS> looks really weird and doesn't exmplain well what happened with new release.
http://semver.org/

If it just "looks weird", then I don't see a big reason to change. Here's how to read the less.php versions:
Version numbers can be viewed as LESSJS.LESSPHP

LESSJS: The first three numbers (1.7.0) represent the less.js version that less.php was built off of
LESSPHP: Minor changes to make backwards-compatible bug fixes (PATCH)

Dup of #155

Semantic versioning allows you do this, for instance, I'm using following: MAJOR.MINOR.PATCH+build-BUILD_NUMBER.
So you can use it like LESSJS+less.php-LESSPHP or something similar, just to follow rules.
It is not a big reason, but semantic versioning is really nicely described, well known and self-explaining, so I decided that it might be a good thing to adopt here.
Obviously, it is up to you, as maintainer, to use it or not.

So instead of <IP_ADDRESS>, it sounds like you're suggesting ```1.7.0+build-7````. Is that right?

Yes, it might be so (but I'm using it primarily for own projects and build number is always increasing).
Taking third-party thing (as basis or dependency) I usually add shortcut of own project and build number.
So, it might be as 1.7.0+lp7 where lp is less.php.
Basically you can put anything after +, moreover, if you'll try to compare 1.7.0+lp1 with 1.7.0+lp2, latter will be correctly understood as newer.

If it just "looks weird", then I don't see a big reason to change. Here's how to read the less.php versions:

Well, those who rely on it as a library mostly understand the interpretation of a 1.7.1 or 1.8.1 as:
MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.

It is not so much about "looks weird" but to make it easier for users to conceive an awareness about possible breakages or bug fixes based on the common semver.

Maybe do something like
LESSJS+less.php-LESSPHP
like was suggestion so like one release for bugfixes and another for new features that is just for less.php and not used by less.js or based on less.js or is based on it.


navbar With .nav-tabs Not Collapsing Correctly

When a collapsible nav bar is styled with class 'nav-tabs', it does not collapse correctly. Rather than a series of stacked tabs, it renders a tabbed horizontal nav bar.
I've created two jsfiddles to demonstrate the bug:
The first one http://jsfiddle.net/4G9cY/ works correctly. Its navbar <ul> is styled with class="navbar-nav".
The second demo http://jsfiddle.net/WkA2K/ demonstrates the buggy behavior. When clicking on the menu button, the menu does not render as it should (i.e., it should have stacked menu items as in the first example). The only difference between this example and the previous is the value assigned to the class attribute: "navbar-nav" in the first example and "nav-tabs" in the second example.

Was there ever a solution to this problem?

+1 for nav-tabs in navbar.


.NetCore 2.2 not using ViewFeature or IRazorCompiledItemprovider

.NetCore 2.2 not using ViewFeature or IRazorCompiledItemprovider
I recently made a custom IApplicationFeature for ControllerFeature which is added after adding MVC to the services 👍
services.AddMvc()
.ConfigureApplicationPartManager(apm =>
 {
      apm.FeatureProviders.Add(new CustomControllerProvider(typeof(Startup).Assembly));
  // apm.FeatureProviders.Add(new CustomViewProvider(typeof(Startup).Assembly));
  // apm.ApplicationParts.Add(new CustomRazorViewProvider(typeof(Startup).Assembly));
})

While this appear to work fine for the ControllerFeature, .net core seems to ignore any changes made in in the ViewFeature or RazorCompiledItemProvider.
When using the ViewFeature provider, the code execute PopulateFeature multiple time (for each assembly I am assuming) and even if I clear the entire list of ViewDescriptors, the views appear to load fine as if no changes had been done.
I thought it was perhaps because the ViewFeature is now marked as obsolete, so I have tried implementing the IRazorCompiledItemProvider as an application part as suggested. However the results are even worse, views are still loaded even if no items are returned by the CompiledItems property.
I am starting to believe that something silly might have been missed, do we need to do anything unusual within our controllers to obtain the views such as using dependency injection with a specific type or it should just works with the embedded View() method.
Sorry if I might have misunderstood how the feature should work, there is not much documentation about it. I haven't tested adding views yet , perhaps these implementations only support adding elements as opposed to the ControllerFeature which support both adds and removes. It would still be an issue regardless though.

@javiercn / @pranavkm - any ideas on this? Should we move this issue to AspNetCore?

Should we move this issue to AspNetCore?

Yes please

This issue was moved to aspnet/AspNetCore#9748


improve codebase: add unit testing

Resolves #176

We plan to go step by step:

Unit tests
Functional tests (perhaps using docker)

CI already working and testing on https://github.com/ubiquity/ubiquibot/actions/runs/5574793016/jobs/10183863908
Adding and polishing more tests

I reviewed my specification and I still think we should consider setting up a GitHub Actions Docker runtime. I haven't done a deep dive on researching these matters so I'm not 100% confident on the best way forward. The business problem I am aiming to solve is to minimize or eliminate the reliance on our manual quality assurance processes.
The worst is when pull requests pass reviews, and then bugs appear in staging/production.
@rndquu @molecula451 curious on your input here.

and I am in pair with that vision, but I remind that's why you have @rndquu and I for the good QA and making sure things work as of highest standard

Stale

@pavlovcik this was not at all stale thing is rndquu changed the game of the original descripción which was to create an initial base for unit testing ive opened the PR before the asked changed. That i stale a bit. But then i reincorporate and i was desigining a Payload mock testing for the commands this is not trivial and was taking time

The last update on this was 19 days ago. It doesn't look like it's being worked on anymore which is why I closed it.


Cannot compile the latest commit with uart debug disabled

ntic -DPRINTF_INCLUDE_CONFIG_H -DGIT_HASH="ab0c372" -DENABLE_FMRADIO_875_108 -DENABLE_FMRADIO -DENABLE_UART -DENABLE_SMALL_BOLD -DENABLE_MUTE_RADIO_FOR_VOICE -DENABLE_VOX -DENABLE_REDUCE_LOW_MID_TX_POWER -DENABLE_TX1750 -DENABLE_MDC1200 -DENABLE_RESET_AES_KEY -DENABLE_KEEP_MEM_NAME -DENABLE_WIDE_RX -DENABLE_F_CAL_MENU -DENABLE_CTCSS_TAIL_PHASE_SHIFT -DENABLE_REVERSE_BAT_SYMBOL -DENABLE_AM_FIX -DENABLE_SQUELCH_MORE_SENSITIVE -DENABLE_FASTER_CHANNEL_SCAN -DENABLE_RX_SIGNAL_BAR -DENABLE_TX_AUDIO_BAR -DENABLE_COPY_CHAN_TO_VFO_TO_CHAN -DENABLE_SIDE_BUTT_MENU -DENABLE_KEYLOCK  -I c:/1of11/ -I c:/1of11//external/CMSIS_5/CMSIS/Core/Include/ -I c:/1of11//external/CMSIS_5/Device/ARM/ARMCM0/Include -c main.c -o main.o
main.c: In function '_putchar':
main.c:53:2: error: implicit declaration of function 'UART_Send' [-Werror=implicit-function-declaration]
53 |  UART_Send((uint8_t *)&c, 1);
|  ^~~~~~~~~
main.c: In function 'Main':
main.c:74:2: error: implicit declaration of function 'UART_Init'; did you mean 'BOARD_Init'? [-Werror=implicit-function-declaration]
74 |  UART_Init();
|  ^~~~~~~~~
|  BOARD_Init
main.c:79:3: error: implicit declaration of function 'UART_SendText' [-Werror=implicit-function-declaration]
79 |   UART_SendText(UART_Version_str);
|   ^~~~~~~~~~~~~
cc1.exe: all warnings being treated as errors

ENABLE_UART                      := 1
ENABLE_UART_DEBUG                := 1
Both must be turned on simultaneously, and I noticed that the firmware will become larger.

Yes, I noticed that FW is bigger also, Same option as always but the size is oversized 700 bytes then previously. I never used uart debug option - always was 0

Yes, so I have turned off other functions. The latest update requires both options to be turned on simultaneously.

The latest commit ab0c372 uses
if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG)
I don't want to assume the intention but maybe that was supposed to be or (||) instead of and (&&)?

If needed then the latest commit can be avoided by git checkout 78da1d5

fixed it

I was still having issues compiling. My fix was to replace
#if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG)
	#include "driver/uart.h"

with
#if defined(ENABLE_UART) || defined(ENABLE_UART_DEBUG)
	#include "driver/uart.h"

in the following files:
audio.c
frequencies.c
functions.c
main.c
mdc1200.c
settings.c
app/action.c
app/aircopy.c
app/app.c
app/fm.c
app/generic.c
app/main.c
app/menu.c
app/search.c
ui/menu.c

show me the errors

main.c: In function 'Main':
main.c:69:2: error: implicit declaration of function 'UART_Init'; did you mean 'BOARD_Init'? [-Werror=implicit-function-declaration]
  UART_Init();
  ^~~~~~~~~
  BOARD_Init
main.c:74:3: error: implicit declaration of function 'UART_SendText' [-Werror=implicit-function-declaration]
   UART_SendText(UART_Version_str);
   ^~~~~~~~~~~~~
cc1: all warnings being treated as errors
make: *** [Makefile:508: main.o] Error 1

uart.c isn't being loaded with:
# UART Programming 2.9 kB
ENABLE_UART                      := 1
ENABLE_UART_DEBUG                := 0

25fee55 did it, thanks!


Blank page after connecting a wallet

After connecting a wallet (both NEAR and Sender) I'm redirected to https://app.burrow.cash/#/deposit which shows only a blank page. Refreshing the page changes nothing. Tested on recent Chrome, Safari and Firefox.
There is an interesting log in the console:
TypeError: Cannot read properties of undefined (reading 'toLocaleString')
    at $c036515f367a8fa2$var$Reward (rewards.tsx:90:20)
    at pc (react-dom.production.min.js:157:137)
    at ti (react-dom.production.min.js:267:460)
    at Ni (react-dom.production.min.js:250:347)
    at ji (react-dom.production.min.js:250:278)
    at Pi (react-dom.production.min.js:250:138)
    at Ei (react-dom.production.min.js:243:163)
    at react-dom.production.min.js:123:115
    at m (scheduler.production.min.js:18:343)
    at Xn (react-dom.production.min.js:122:325)
h$ @ react-dom.production.min.js:216
react-dom.production.min.js:216 TypeError: Cannot read properties of undefined (reading 'toLocaleString')
    at $c036515f367a8fa2$var$RewardGridRow (rewards.tsx:172:22)
    at pc (react-dom.production.min.js:157:137)
    at ti (react-dom.production.min.js:267:460)
    at Ni (react-dom.production.min.js:250:347)
    at ji (react-dom.production.min.js:250:278)
    at Pi (react-dom.production.min.js:250:138)
    at Ei (react-dom.production.min.js:243:163)
    at react-dom.production.min.js:123:115
    at m (scheduler.production.min.js:18:343)
    at Xn (react-dom.production.min.js:122:325)
h$ @ react-dom.production.min.js:216
rewards.tsx:90 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'toLocaleString')
    at $c036515f367a8fa2$var$Reward (rewards.tsx:90:20)
    at pc (react-dom.production.min.js:157:137)
    at ti (react-dom.production.min.js:267:460)
    at Ni (react-dom.production.min.js:250:347)
    at ji (react-dom.production.min.js:250:278)
    at Pi (react-dom.production.min.js:250:138)
    at Ei (react-dom.production.min.js:243:163)
    at react-dom.production.min.js:123:115
    at m (scheduler.production.min.js:18:343)
    at Xn (react-dom.production.min.js:122:325)

Seems to be fixed in https://github.com/NearDeFi/burrow-cash/commit/09839554d41350d9bba69e9ad9101daa512aa459, thanks!


Add EF copyright and license to all files

This project needs to address the comments below to use EF copyright (detailed below)
https://github.com/jakartaee/cdi-tck/pull/522#issuecomment-1887267172

At today's CDI call, we have agreed that for the files not contributing by Red Hat, use the following copyright text:
Copyright (c)  Contributors to the Eclipse Foundation

Ok, so to check I have this right, every file should begin with a comment saying either:
 Copyright {year}, {owner}, and individual contributors
 by the @authors tag. See the copyright.txt in the distribution for a
 full listing of individual contributors.

or
Copyright (c) {year} Contributors to the Eclipse Foundation

Followed by:
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Where {year} is the year when the file was first published and {owner} is the copyright owner of the original contribution.
I have a few additional questions:

Should we add this info to CONTRIBUTING.adoc so that new users can find it?

I couldn't find the copyright.txt file mentioned in the first header. Should that exist somewhere?

The first header says to check the @author tag for the copyright owner, whereas NOTICES.md says

For more information regarding authorship of content, please consult the listed source code repository logs.

Does that discrepancy need to be corrected?

Thank you @Azquelt for taking a further look at this.

Ok, so to check I have this right, every file should begin with a comment saying either:
 Copyright {year}, {owner}, and individual contributors
 by the @authors tag. See the copyright.txt in the distribution for a
 full listing of individual contributors.

Based on the EF Handbook, I think the following lines should be removed:

by the @authors tag. See the copyright.txt in the distribution for a
full listing of individual contributors.

@starksm64 please confirm.

or
Copyright (c) {year} Contributors to the Eclipse Foundation

Followed by:
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Where {year} is the year when the file was first published and {owner} is the copyright owner of the original contribution.
I have a few additional questions:
1. Should we add this info to CONTRIBUTING.adoc so that new users can find it?

yes. This is a requirement by EF Handbook. It was missed in the past. We need to add it for both cdi and cdi-tck project in this release.

2. I couldn't find the copyright.txt file mentioned in the first header. Should that exist somewhere?

3. The first header says to check the `@author` tag for the copyright owner, whereas NOTICES.md says
   > For more information regarding authorship of content, please consult the listed **source code repository logs**.

   Does that discrepancy need to be corrected?

The confusing text should be removed. See my comments above.

I would like to point out that certain files in the CDI API have a slightly different, shorter and more "to the point" license header, starting since #597 / #598. Going forward, maybe we should use that?

I would like to point out that certain files in the CDI API have a slightly different, shorter and more "to the point" license header, starting since #597 / #598. Going forward, maybe we should use that?

yes, that was exactly what I proposed by deleting the 2 lines as per my previous comments.

@Azquelt I did not spot the deletion of the following lines from your PR:

by the @authors tag. See the copyright.txt in the distribution for a
full listing of individual contributors.
I keep this issue open for you to confirm the above sentences are removed form the files.

I've opened #762 to remove those two lines from all headers.


Missing extension module "lib/index.js"

In the seach-notebook branch when building the UI :
make install-ui

We get:
cd packages/notebook-search && jupyter labextension install --no-build .
**Note: Removing dead /home/alogo/workspace/NaaVRE/packages/notebook-containerizer "@jupyter_vre/notebook-containerizer"
An error occurred.
ValueError: "/home/alogo/workspace/NaaVRE/packages/notebook-search" is not a valid extension:
Missing extension module "lib/index.js"
See the log file for details:  /tmp/jupyterlab-debug-pzy1s6q4.log
make: *** [Makefile:41: install-ui] Error 1

We need it to install nodejs:
 conda install -c conda-forge nodejs


Our rss / feedrapp is showing German advertisement

Suddenly our RSS-reader (uses feedrapp service) is showing German ads sometime (not every single time, only after a few screen refreshes). Example: screenshot
Is this a know issue?

Please set the support property to false or you don't want to support the project :)


feat(FOROME-1425): Reworking wizard scenarios

https://quantori.atlassian.net/browse/FOROME-1425

@Lapk1n Wasn't able to reproduce, in my case it rolled back exactly to the correct step.


No fusion found using tests data

Hi Shifu,
no fusion found using tests data
./genefuse -r Homo_sapiens_assembly19.fasta -f druggable.hg19.csv -1 R1.fq.gz -2 R2.fq.gz -h r1r2n.html
15:51:11 start with 4 threads
15:51:50 mapper indexing done
15:52:20 sequence number before filtering: 0
15:52:20 removeByComplexity: 0
15:52:20 removeByDistance: 0
15:52:20 removeIndels: 0
15:54:5 matcher indexing done
15:54:5 removeAlignables: 0
15:54:5 found 0 fusions
./genefuse -r Homo_sapiens_assembly19.fasta -f druggable.hg19.csv -1 genefuse.R1.fq.gz -2 genefuse.R2.fq.gz -h genefuser1r2n.html
15:55:45 start with 4 threads
15:56:25 mapper indexing done
15:56:36 sequence number before filtering: 0
15:56:36 removeByComplexity: 0
15:56:36 removeByDistance: 0
15:56:36 removeIndels: 0
15:58:25 matcher indexing done
15:58:25 removeAlignables: 0
15:58:25 found 0 fusions
Dataset was downloaded from: http://opengene.org/dataset.html
Thanks.

I just tried again with command: ./genefuse -r ~/data/ref/hg19.fa -1 ~/data/fq/genefuse.R1.fq.gz -2 ~/data/fq/genefuse.R2.fq.gz -h test.html -j test.json -f genes/druggable.hg19.csv
and got:
15:1:4 start with 4 threads
15:1:47 mapper indexing done
15:2:38 sequence number before filtering: 1329
15:2:38 removeByComplexity: 0
15:2:38 removeByDistance: 39
15:2:38 removeIndels: 67
15:4:3 matcher indexing done
15:4:3 removeAlignables: 8

Probably you used incorrect reference? I used hg19 downloaded from UCSC. Did you checked the downloaded files using MD5?

Hi sfchen,
I have the same problem. I used all the demo files you provided including the reference genome. but I still got nothing in my result.

Hi sfchen,
I have experienced the same problem as others have reported here. Have you gotten to the bottom of this?
Thanks.

Can you guys check md5 for the downloaded FASTQ file?

http://opengene.org/dataset.html
You should download following files:
Paired-end FASTQ files for GeneFuse testing (Illumina platform)
genefuse.R1.fq.gz (size: 62 M, MD5: 171e6dfa0af37fe95c826005bc5fcdf9)
genefuse.R2.fq.gz (size: 66 M, MD5: e756cf01e256186dccaa9e700d85a342)

Hi sfchen,
Yes those are the same md5 I get when I check on the downloaded FASTQs.  The command I run is: ./genefuse -r Homo_sapiens_assembly19.fasta -f druggable.hg19.csv -1 genefuse.R1.fq.gz -2 genefuse.R2.fq.gz -h report.html >result
I have downloaded the .fasta file from ensembl.
Thanks.

The druggable.hg19.csv is in the genes folder
Have you checked the error message?

I mean, you should run:
./genefuse -r Homo_sapiens_assembly19.fasta -f genes/druggable.hg19.csv -1 genefuse.R1.fq.gz -2 genefuse.R2.fq.gz -h report.html >result

I have downloaded via wget the druggable.hg.csv from the genes folder. In the results document there are no reported errors

Errors are saved to STDERR, not STDOUT. So you cannot find errors in the result file.
Can you just run the command without redirecting to result?

I do not get any STDERR or STDOUT files regardless of if I redirect to result or not. I am running the binary if this may make a difference. Thank you for your help by the way.

Apologies I meant I do not get an STDOUT file at all.

You used >, which redirected STDOUT to the file you specified.

But even if I exclude > there is no STDERR file - that is what I meant not the lack of STDOUT apologies for confusion.

You didn't redirect STDERR, so it would be printed on terminal.
You can use following command to also redirect STDERR:
Yes those are the same md5 I get when I check on the downloaded FASTQs. The command I run is: ./genefuse -r Homo_sapiens_assembly19.fasta -f druggable.hg19.csv -1 genefuse.R1.fq.gz -2 genefuse.R2.fq.gz -h report.html >result & 2>err.log

I have ran again and no errors are reported. I notice however the FASTQ files don't have the 15 million lines you mention in a different thread - they have more like 800,000. Maybe this is the issue?

Hi sfchen, I have again ran genefuse on fastqs which I know to contain translocations. Your software did not call these. This is more just to let you know than a specific request or question.

Thanks, I will try to reproduce it.

Hi sfchen,
I am in the same situation. I do not find genefusion in the test dataset.

I found the answer in https://github.com/OpenGene/GeneFuse/issues/31 -- the NCBI version of hg19 had a different chromosome naming convention, so it doesn't work. The version downloadable from UCSC is fine:
wget http://hgdownload.cse.ucsc.edu/goldenPath/hg19/bigZips/hg19.fa.gz
(then unzip)


Kanopy app Crashes

Kanopy is a digital media app for library patrons.   (com.kanopy)
Install Kanopy, give it the requested permissions.  A library login is need to proceed.  Log in and do a search for any video media and attempt to play it.  Somewhere along the way the app invariably crashes, and this happens quite often.
Android Version:  9
OS Version: LineageOS for MicroG 16.0-20200816 (reproduced on cheeseburger and gts210vewifi)
MicroG Services Core Version: <IP_ADDRESS>315
No Google account registered.
Google device registration ON.
App in question is registered with GCM.

Log attached.
KanopyLog.txt


Fix StackOverflowException in StyleExtensions.GetStyleSheets()

Contribution Type
What types of changes does your code introduce? Put an x in all the boxes that apply:

[x] Bug fix (non-breaking change which fixes an issue, please reference the issue id)
[ ] New feature (non-breaking change which adds functionality, make sure to open an associated issue first)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] My change requires a change to the documentation
[ ] I have updated the documentation accordingly
[x] I have added tests to cover my changes
[x] All new and existing tests passed

Description
Refer to issue https://github.com/AngleSharp/AngleSharp/issues/1084. Reimplemented StyleExtensions.GetStyleSheets() to use a stack on the heap instead of the program stack to avoid stack overflow exceptions. I have kept the original depth-first ordering of the return value.
I did make a unit test, but because AngleSharp.Css is not available here I believe I need to mock the styling service and return a dummy object to be able to assert something. To keep the execution time low I created a thread with a small stack size. Using the main thread gave an execution time of 3 seconds or so on "my machine" because we need a very deep DOM. Using a 64KB stack made the unit test run in just 85ms (also on "my machine").

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


skip r43 on ppc64le

#43 skip r43 on ppc64le

@conda-forge-admin please rerender

It fails on both R 4.2 and 4.3, no? Have you tracked down the problem so we can document it? Seems like maybe r-htmlwidgets version.

@yangxingyu588 side question: is there an "upstream" Issue on another repository (Bioconda?) that I can follow to understand the motivation for which packages are getting Arch migrations? I think there was some mention of Bioconductor for Arch.

yes, you are right, we are going to make bioconductor work on linux aarch64.https://github.com/Bioconductor/BBS/pull/293and [https://github.com/bioconda/bioconda-recipes/pull/40550
Also cc @Yikun Jiang @martin-g

Addressed in #43.


custom backward function with upstream gradients.

❓ Questions and Help
What is your question?
How to implement backward with upstream gradients?
I want to implement multi-staged backpropagation with pytorch-lightning.
This is my implementation code with pytorch.
My implementation
And I want to convert this code (that is below) to pytorch-lightning version.
As following multi-staged backpropagation, I need to implement explicit chain rule.
But I don't know how to write code in pytorch-lightning version.
Code
(AS-IS)

(TO-DO)
def training_loop(self, batch, batch_idx):
    # I want to write code for multi-staged backpropagation...
    pass

Sorry.. Closed Issue. I solve this. I just write code backward method overriding...


node-red crashes when smartfritz is used

I can not use this package at all. Each time I trigger the nodes my node-red crashes. Is somebody else experiencing this?

Ok, found the problem and fixed it locally. But how to contribute? Is the maintainer still reading this? Why are there so many unmerged branches in forks?

Maybe the maintainer is not working on this anymore. In this case you can create a fork to share your changes.

There is a more active branch here: https://github.com/mpolitze/node-red-contrib-smartfritz/tree/fixed
already asked @mpolitze if they want to maintain a public package. If not I will merge theirs and mine.


Fix app container build, fix security vulnarabilities in dependencies

Describe your changes

Issue ticket number and link

Checklist - Manual tasks

[ ] Examples are executing successfully
[ ] Created/updated unit tests. Code Coverage percentage on new code shall be >= 80%.
[ ] Created/updated integration tests.
[ ] Devcontainer can be opened successfully
[ ] Devcontainer can be opened successfully behind a corporate proxy
[ ] Devcontainer can be re-built successfully
[ ] Extended the documentation (e.g. README.md, CONTRIBUTING.md, Velocitas)

General: please follow the pattern of branch naming:
Feature: feature/feature_name
Bug: bugfix/bugfix_name
User specific: user/user_id

Please don't forget to add "--udpate" flag into ./install_dependencies.sh in line 119

I wouldn't like to add the --update flag, as I'm not sure about its general behaviour. Currently the issue occurs in local environment only, where the wrong revision could be cached. This should not happen in CI workflows.


Notifications

People should be notified in the nav menu when new events have been added, players have set attendance status or other important events.

When a player requests to join team and coaches accept, the coach gets a notification saying the player has accepted a request. Needs attention. Some notification type being sent wrong somewhere.


Default value for RenewalMinimumValidDays

I have a custom ACME service which issues certificates valid for 14 days.
With the default settings "Show details for the renewal" tells me:
Expires:             2023.5.1
Renewal due:         2023.5.8
...
Order 1/1:           main
  - Renewed:         1 times
  - Last thumbprint: 27E911B48E979ABE6E896F46FF2A9F0687BDD404
  - Last date:       2023.4.17
  - Next due:        2023.5.8

The renewal due date looks a little late.
If I change "RenewalMinimumValidDays" to 7, which according the documentation should be the same as the default null, it looks a lot better:
Expires:             2023.5.1
Renewal due:         2023.4.24
...
Order 1/1:           main
  - Renewed:         1 times
  - Last thumbprint: 27E911B48E979ABE6E896F46FF2A9F0687BDD404
  - Last date:       2023.4.17
  - Next due:        2023.4.24

Tested with the latest v<IP_ADDRESS>0

Thanks for the bug report, this should be fixed in this build: https://ci.appveyor.com/project/WouterTinus/win-acme-s8t9q/builds/46894264/artifacts

Yes, this looks good.
Thanks for the quick fix!


About obtaining explanations of the models

Hello, I really appreciate your wonderful work and I have read the code. To obtain the explanations of the models, according to the code (model.explain()), it seems that the contribution maps were calculated in the same way as the IxG post-hoc explanation method, and I have two questions here:
(1) As mentioned in the paper, the dynamic linear weights W(x) in y(x) = W(x)x (or W_(1->L) in this paper) were visualized to obtain explanations. And as I understand, in the code, the gradient of the input was regarded as the dynamic linear weights. Why are these two equivalent?
(2) For rows 1+2 of Fig. 6 in the paper, the results of "IxG" and "Ours" are different, and "Ours" are obviously better. What is the difference between the implementation of model.explain() in the code and "IxG"? By the way, what is the target layer for visualization of GradCAM in Fig. 6?
I am looking forward to your reply. Thank you very much!

Hi,
Thanks a lot for your message and your interest! To obtain the explanations, we indeed rely on the model's backward pass (i.e. the gradient). Note, however, that the gradient is modified: specifically, the "dynamic weights" w(x) are detached from the computational graph in every layer when the model is in explanation mode (see code). This treats the weights w(x) as input-independent as far as the gradient is concerned, and the gradient computation thus returns the weight matrix w. This also explains the difference you observed in the model explanations between IxG and Ours.
I hope this answers the question! If not, let me know :)
Cheers
Moritz

Hi,
Thanks a lot for your message and your interest! To obtain the explanations, we indeed rely on the model's backward pass (i.e. the gradient). Note, however, that the gradient is modified: specifically, the "dynamic weights" w(x) are detached from the computational graph in every layer when the model is in explanation mode (see code). This treats the weights w(x) as input-independent as far as the gradient is concerned, and the gradient computation thus returns the weight matrix w. This also explains the difference you observed in the model explanations between IxG and Ours.
I hope this answers the question! If not, let me know :)
Cheers Moritz

Got it, Thank you very much!


Introduced golangci-lint

Codecov Report

Merging #51 (b102b7a) into main (8b3e574) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #51   +/-   ##
=======================================
  Coverage   90.29%   90.29%
=======================================
  Files           9        9
  Lines         505      505
=======================================
  Hits          456      456
  Misses         43       43
  Partials        6        6

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 8b3e574...b102b7a. Read the comment docs.


Swap the order of _write_to_stream() / _process_response() in requests download.

Since this doesn't actually change the interface, none of the docs for latest/ or 0.2.2/ need be changed.
Once merged, I propose this commit be tagged as the NEW-AND-IMPROVED 0.2.2 release
/cc @tseaver

LGTM, including moving the 0.2.2 tag (since PyPI still has 0.2.1 as the latest release).


Support for energy counter being reset

Energy counters like sensor.ferroamp_external_energy_consumed may be
reset in Energy Hub leading to lower values than previously known being
received from Ferroamp. Current code ignores all lower values since
these sensors should be TOTAL_INCREASING. However, the total increasing
concept in HA has support for counters being reset, so it's ok to provide
a lower value. For more info please see:
https://developers.home-assistant.io/docs/core/entity/sensor/#state-class-total_increasing
This fix will accept lower value if they are "much lower". If a value is
only 10 % lower it will still be ignored, since users have reported that
invalid values sometimes comes from Ferroamp. However, if values are lower
than this we now will accept them. The statistics functionality in HA will
handle this. However the sensor itself will get the newer lower value.

Feel free to merge and release whenever you feel ready. It's just a matter of running the Release-workflow manually.

Thanks! I'll try do a release 👍

Aaah, darn,  it's due to that you didn't use the conventional commits format of your commit-message. Not sure why the lint-checks didn't find that though. Is it ok if I rewrite history and force-push?

Oh - sorry - didn't know.
Maybe I can do it so I know how to get it right? Should I have a fix: in front or how does it work?

@argoyle maby we should add some information about this in the readme? I also had some issues with this once when i submitted a pr 😄

Oh - sorry - didn't know.
Maybe I can do it so I know how to get it right? Should I have a fix: in front or how does it work?

Fix is as good as anything I would say.

@argoyle maby we should add some information about this in the readme? I also had some issues with this once when i submitted a pr 😄

Yeah, probably a good idea. I'll take a look at why the check didn't catch it as well.

Thanks 🙂. When I think about it, I think it's better you rewrite the history - if we can do that in the master branch?

Done! Try to re-run the release-job again.

Now it worked! 🥳 thanks for the help!


[New Scheduler] Add DataManagementService

Description
This component is in charge of storing data to ETCD.
It is based on eventual consistency.
If it fails to store data for some reason, it keeps retrying until data is stored.
Related issue and scope

[ ] I opened an issue to propose and discuss this change (#????)

My changes affect the following components

[ ] API
[ ] Controller
[ ] Message Bus (e.g., Kafka)
[ ] Loadbalancer
[ ] Invoker
[ ] Intrinsic actions (e.g., sequences, conductors)
[ ] Data stores (e.g., CouchDB)
[ ] Tests
[ ] Deployment
[ ] CLI
[ ] General tooling
[ ] Documentation

Types of changes

[ ] Bug fix (generally a non-breaking change which closes an issue).
[x] Enhancement or new feature (adds new functionality).
[ ] Breaking change (a bug fix or enhancement which changes existing behavior).

Checklist:

[x] I signed an Apache CLA.
[x] I reviewed the style guides and followed the recommendations (Travis CI will check :).
[x] I added tests to cover my changes.
[ ] My changes require further changes to the documentation.
[ ] I updated the documentation where necessary.

I think we need to merge a PR for CI tests for scheduler components before merging this PR.
Since some downstream is running their CI tests based on the upstream core repo, we need to differentiate scheduler tests from the others. Need to see if we can setup another dedicated pipeline for scheduler components in Travis.
And when all components contribution is over, we can merge the pipeline into existing unit/system pipelines.

Just comes up in my mind is it would be great to write down some documents for each component in Wiki.

Waiting for this PR(https://github.com/apache/openwhisk/pull/5067) to be merged.

I wrote a document about this module: https://cwiki.apache.org/confluence/display/OPENWHISK/DataManagementService

Codecov Report

Merging #5063 (c7ad646) into master (e05aa44) will decrease coverage by 6.97%.
The diff coverage is 44.69%.

@@            Coverage Diff             @@
##           master    #5063      +/-   ##
==========================================
- Coverage   81.63%   74.66%   -6.98%
==========================================
  Files         205      207       +2
  Lines       10013    10183     +170
  Branches      442      467      +25
==========================================
- Hits         8174     7603     -571
- Misses       1839     2580     +741

Impacted Files
Coverage Δ

...la/org/apache/openwhisk/core/etcd/EtcdClient.scala
26.22% <ø> (ø)

...apache/openwhisk/core/service/WatcherService.scala
91.66% <ø> (+2.08%)
:arrow_up:

...openwhisk/core/service/DataManagementService.scala
44.27% <44.27%> (ø)

.../scala/org/apache/openwhisk/core/WhiskConfig.scala
95.48% <100.00%> (+0.02%)
:arrow_up:

...core/database/cosmosdb/RxObservableImplicits.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...ore/database/cosmosdb/cache/CacheInvalidator.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...e/database/cosmosdb/cache/ChangeFeedConsumer.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...core/database/cosmosdb/CosmosDBArtifactStore.scala
0.00% <0.00%> (-95.85%)
:arrow_down:

...sk/core/database/cosmosdb/CosmosDBViewMapper.scala
0.00% <0.00%> (-93.90%)
:arrow_down:

...tabase/cosmosdb/cache/CacheInvalidatorConfig.scala
0.00% <0.00%> (-92.31%)
:arrow_down:

... and 22 more

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 e05aa44...c7ad646. Read the comment docs.

It's ready to merge.

@bdoyle0182 Do you have any other comments on this PR?

Just one comment. LGTM