Cilium North-South Load balancing does uneven connection across backend pods

Bug report
General Information

Cilium version (run cilium version)

cilium version
Client: 1.9.4 07b62884c 2021-02-03T11:45:44-08:00 go version go1.15.7 linux/amd64
Daemon: 1.9.4 07b62884c 2021-02-03T11:45:44-08:00 go version go1.15.7 linux/amd64

- Kernel version (run `uname -a`) - 4.18.0-240.15.1.el8_3.x86_64 ; Red Hat Enterprise Linux release 8.3
- Orchestration system version in use (e.g. `kubectl version`, ...) v1.17.14

How to reproduce the issue

Deploy nginx with two or three pods
Create k8s service with external ip
Generate load to created service external ip(In my setup, external ip is part of the node where cilium agent runs)
I have used httperf(https://github.com/httperf/httperf) for traffic generation. it creates individual connection and make one request per connection and closes it, connections are not reused. I am logging the client connection’s remote port for each request, none of the requests has the same remote port at same time which proves each connection had just one request.
httperf --server  --port 80 --num-conns 40000 --rate 300 --timeout 1

Connection distribution between Two pods is 74.9% & 25.1%
Connection distribution between Three pods is 66.7% & 16.5% & 16.7%
Connection distribution between Five pods is 59.9% , 9.9% , 10.1% , 10.1%, 10.1%
Connection distribution between Fifty pods is 50% on one pod and 1% each across other pods.
All these test returns with 100% 200 response and no errors.
cilium status --verbose
KVStore:                Ok   Disabled
Kubernetes:             Ok   1.17 (v1.17.14) [linux/amd64]
Kubernetes APIs:        ["cilium/v2::CiliumClusterwideNetworkPolicy", "cilium/v2::CiliumEndpoint", "cilium/v2::CiliumNetworkPolicy", "cilium/v2::CiliumNode", "core/v1::Endpoint", "core/v1::Namespace", "core/v1::Node", "core/v1::Pods", "core/v1::Service", "networking.k8s.io/v1::NetworkPolicy"]
KubeProxyReplacement:   Strict   [ens9 (Direct Routing)]
Cilium:                 Ok       OK
NodeMonitor:            Listening for events on 96 CPUs with 64x4096 of shared memory
Cilium health daemon:   Ok
IPAM:                   IPv4: 2/255 allocated from <IP_ADDRESS>/24,
Allocated addresses:
  <IP_ADDRESS> (health)
  <IP_ADDRESS> (router)
BandwidthManager:       Disabled
Host Routing:           Legacy
Masquerading:           Disabled
Clock Source for BPF:   ktime
Controller Status:      17/18 healthy
  Name                                  Last success   Last error   Count   Message
  cilium-health-ep                      2m3s ago       31s ago      1       Get "http://<IP_ADDRESS>:4240/hello": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
  dns-garbage-collector-job             13s ago        never        0       no error
  endpoint-1253-regeneration-recovery   never          never        0       no error
  endpoint-264-regeneration-recovery    never          never        0       no error
  k8s-heartbeat                         13s ago        never        0       no error
  mark-k8s-node-as-available            1h14m6s ago    never        0       no error
  metricsmap-bpf-prom-sync              3s ago         never        0       no error
  neighbor-table-refresh                6s ago         never        0       no error
  resolve-identity-264                  31s ago        never        0       no error
  restoring-ep-identity (1253)          1h14m6s ago    never        0       no error
  sync-endpoints-and-host-ips           7s ago         never        0       no error
  sync-lb-maps-with-k8s-services        1h14m6s ago    never        0       no error
  sync-policymap-1253                   5s ago         never        0       no error
  sync-policymap-264                    31s ago        never        0       no error
  sync-to-k8s-ciliumendpoint (1253)     6s ago         never        0       no error
  sync-to-k8s-ciliumendpoint (264)      1s ago         never        0       no error
  template-dir-watcher                  never          never        0       no error
  update-k8s-node-annotations           1h14m12s ago   never        0       no error
Proxy Status:   OK, ip <IP_ADDRESS>, 0 redirects active on ports 10000-20000
Hubble:         Ok   Current/Max Flows: 1156/4096 (28.22%), Flows/s: 0.26   Metrics: Disabled
KubeProxyReplacement Details:
  Status:              Strict
  Protocols:           TCP, UDP
  Devices:             ens9 (Direct Routing)
  Mode:                DSR
  Backend Selection:   Maglev (Table Size: 509)
  Session Affinity:    Enabled
  XDP Acceleration:    Native
  Services:
  - ClusterIP:      Enabled
  - NodePort:       Enabled (Range: 30000-32767)
  - LoadBalancer:   Enabled
  - externalIPs:    Enabled
  - HostPort:       Enabled
BPF Maps:   dynamic sizing: on (ratio: 0.002500)
  Name                          Size
  Non-TCP connection tracking   1772123
  TCP connection tracking       3544246
  Endpoint policy               65535
  Events                        96
  IP cache                      512000
  IP masquerading agent         16384
  IPv4 fragmentation            8192
  IPv4 service                  65536
  IPv6 service                  65536
  IPv4 service backend          65536
  IPv6 service backend          65536
  IPv4 service reverse NAT      65536
  IPv6 service reverse NAT      65536
  Metrics                       1024
  NAT                           3544246
  Neighbor table                3544246
  Global policy                 16384
  Per endpoint policy           65536
  Session affinity              65536
  Signal                        96
  Sockmap                       65535
  Sock reverse NAT              1772123
  Tunnel                        65536

@karthikt-yahoo what happens when you use another host as the traffic generator (httperf)?

@karthikt-yahoo what happens when you use another host (2 in total) as the traffic generator (httperf)?

I tested by generating traffic with two httperf clients on two individual hosts to External-IP service with two backend pods. request/connection distribution to backed pods is 74% and 26%

@karthikt-yahoo Check source ports distribution. Maybe add logging of source ports to httperf if it doesn't do that.

@karthikt-yahoo Check source ports distribution. Maybe add logging of source ports to httperf if it doesn't do that.

I am logging the source port(client port on the TCP) on my nginx server for each request, none of the requests has the same source port at same time which proves connection source port is not reused.

@brb do you suspect it could be because of the kernel version 4.18.0-240.15.1.el8_3.x86_64 ; Red Hat Enterprise Linux release 8.3. thanks

External IP - <IP_ADDRESS>
pod 1 --> <IP_ADDRESS>
pod 2 --> <IP_ADDRESS>
siege -b -c 1  http://<IP_ADDRESS> -t 1s -v
{	"transactions":			         471,
"availability":			      100.00,
"elapsed_time":			        0.27,
"data_transferred":		        0.27,
"response_time":		        0.00,
"transaction_rate":		     1744.44,
"throughput":			        1.02,
"concurrency":			        0.93,
"successful_transactions":	         471,
"failed_transactions":		           0,
"longest_transaction":		        0.01,
"shortest_transaction":		        0.00
}
connection table
root@lb1:/home/cilium# cilium bpf ct list global | grep -i <IP_ADDRESS> |  wc -l
472 --> total connection, clear sport are changing
root@lb1:/home/cilium# cilium bpf ct list global | grep -i <IP_ADDRESS>  |  wc -l
122 --> connection to pod 1 from LB
root@lb1:/home/cilium# cilium bpf ct list global | grep -i <IP_ADDRESS>  |  wc -l
350 --> connection to pod 2 from LB

Connection distribution between Fifty pods is 50% on one pod and 1% each across other pods. btw, for more than ~5 backend pods, you might want to consider increasing the Maglev table size to something larger (rough rule of thumb: next prime near ~backend size * 100, see https://docs.cilium.io/en/v1.9/gettingstarted/kubeproxy-free/#maglev-consistent-hashing-beta)
  Mode:                DSR
  Backend Selection:   Maglev (Table Size: 509)

Do you have a dump of cilium bpf lb maglev list for the 2/3/5 backend pod case?

increased to 16381 with 2 backend, still the same behavior  @borkmann

@borkmann with random, its working fine and observed 50% to pod 1 and 50% to pod2 with 2 backend test.
This observation is specific to Maglev

increased to 16381 with 2 backend, still the same behavior with Maglev @borkmann

Could you dump cilium bpf lb maglev list?

increased to 16381 with 2 backend, still the same behavior with Maglev @borkmann

Could you dump cilium bpf lb maglev list?

Dumped the External service info that we use for testing, please let us know if you need further more information.
https://git.vzbuilders.com/gist/karthikt/83ebada16bb079d439511b4af54eff41

@karthikt-yahoo @sureshvis the observed issue should be fixed with https://github.com/cilium/cilium/pull/15808 . Thanks a lot for reporting!


Add support for factory states [enhancement]

Currently if you use @transformerModel MyModel tag it will create an instance of model using
factory(MyModel::class, 1)
This works for most cases, but sometimes we have an endpoint that returns only specific type of models (eg. only admin users or only active products).
Using a different item as example makes no sense, and might even be confusing
(I had an endpoint that only returns one type of banners that had an extra field, but example was missing this field when incorrect type of banner was returned)
My suggestion is to add optional parameters to @transformerModel tag that will work as states.
So eg. @transformerModel User admin with_example_password will use following factory instead factory(User::class, 1)->states(['admin', 'with_example_password'])

I created a MR quest for this! Please let me know if it can be merged

Will this also be made available to the @apiResourceModel ?

My MR is only for the @apiResourceModel (at least that's why I made it)

This is now supported in Scribe 🙂.


README Preview doesn't supports checkboxes

[x] Search the issue repository to ensure your report is a new issue
[x] Recreate the issue after disabling all extensions
[x] Simplify your code around the issue to better isolate the problem

Version Info

Version: 1.47.2 (user setup)
Commit: 17299e413d5590b14ab0340ea477cdd86ff13daf
Date: 2020-07-15T18:22:06.216Z
Electron: 7.3.2
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.18362

Steps to Reproduce:

Create a README.md
Enter markdown for checkboxes

- [x] step 1
- [ ] step 2

Open preview for the readme. It should look something like this

Instead, the preview must have been something like this:

[x] step 1
[ ] step 2

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

https://marketplace.visualstudio.com/items?itemName=bierner.markdown-checkbox


fix(datastore): query for missing optional associations

Issue #, if available:
https://github.com/aws-amplify/amplify-ios/issues/1792
Description of changes:
Check points: (check or cross out if not relevant)

[ ] Added new tests to cover change, if needed
[ ] Build succeeds with all target using Swift Package Manager
[ ] All unit tests pass
[ ] All integration tests pass
[ ] Security oriented best practices and standards are followed (e.g. using input sanitization, principle of least privilege, etc)
[ ] Documentation update for the change if required
[ ] PR title conforms to conventional commit style
[ ] If breaking change, documentation/changelog update with migration instructions

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #1849 (7229c55) into main (71782aa) will decrease coverage by 0.17%.
The diff coverage is 98.21%.

@@            Coverage Diff             @@
##             main    #1849      +/-   ##
==========================================
- Coverage   59.38%   59.21%   -0.18%
==========================================
  Files         715      699      -16
  Lines       22056    21682     -374
==========================================
- Hits        13098    12838     -260
+ Misses       8958     8844     -114

Flag
Coverage Δ

API_plugin_unit_test
62.51% <ø> (ø)

AWSPluginsCore
71.15% <ø> (-0.08%)
:arrow_down:

Amplify
46.94% <ø> (+0.01%)
:arrow_up:

Analytics_plugin_unit_test
?

Auth_plugin_unit_test
78.67% <ø> (ø)

DataStore_plugin_unit_test
76.46% <98.21%> (+0.05%)
:arrow_up:

Geo_plugin_unit_test
52.12% <ø> (ø)

Predictions_plugin_unit_test
26.81% <ø> (ø)

Storage_plugin_unit_test
58.04% <ø> (ø)

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

Impacted Files
Coverage Δ

...ategoryPlugin/Storage/SQLite/Statement+Model.swift
99.21% <98.21%> (-0.79%)
:arrow_down:

...Plugin/Sync/Support/MutationEvent+Extensions.swift
61.90% <0.00%> (-21.43%)
:arrow_down:

...e/AWSPluginsCore/Auth/AWSAuthServiceBehavior.swift
75.00% <0.00%> (-12.50%)
:arrow_down:

...tion/AWSPinpointAnalyticsPluginConfiguration.swift

...sions/AWSPinpointAnalyticsPlugin+HubCategory.swift

...nalyticsPlugin/Dependency/AWSPinpointAdapter.swift

...AnalyticsPlugin/Support/Utils/RepeatingTimer.swift

...ntAnalyticsPlugin+AWSPinpointEndpointProfile.swift

...y/AWSPinpointAdapter+AnalyticsClientBehavior.swift

...ntAnalyticsPlugin/AWSPinpointAnalyticsPlugin.swift

... and 10 more

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


Windows: Registration script does not work behind proxy

Have you tried troubleshooting?
Troubleshooting doc Yes
Agent Version and Platform
Version of your agent? N/A as issue is prior to agent running
OS of the machine running the agent? Windows
Azure DevOps Type and Version
If dev.azure.com, what is your organization name? https://dev.azure.com/LiberataUK
What's not working?
Hi,
The registration script for powershell in Windows that gets shown in a deployment group doesn't always work when the user is behind a proxy, it detects the proxy ok but the download of the agent zip file fails as the credentials are not set properly on the proxy.
Can the script can be customized to include proxy credentials?
Thanks :)
Agent and Worker's Diagnostic Logs
N/A as issue is prior to agent running

Hey @SiulOgait, could you please clarify which PowerShell script you are using to register the pipeline agent? Would you mind sharing an example of this script?

@SiulOgait, is this issue still actual to you?

Hi, Sorry for the late response.
I'm using the pre-filled PowerShell script with PAT enabled that is
generated when you create a deployment group.
[image: image.png]
Thanks for your help. Regards
On Fri, Mar 4, 2022 at 8:13 AM Alexander Smolyakov @.***>
wrote:

Hey @SiulOgait https://github.com/SiulOgait, could you please clarify
which PowerShell script you are using to register the pipeline agent? Would
you mind sharing an example of this script?
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/azure-pipelines-agent/issues/3774#issuecomment-1058935059,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARN2T5J5VWI3K2XATQGZJQ3U6HA37ANCNFSM5P2F6OXQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

@SiulOgait, thanks for clarification! This question is more relevant for the Azure DevOps side, although this repo is mostly for the pipeline agent itself - could you please open a ticket on https://developercommunity.visualstudio.com/search?space=21 to get right eyes on it?

Hi,
I read that the script can be customized to suit varied requirements but I haven't found any info on it. Can you please let me know how to customize the script to bypass the proxy issue or how to add the proxy credentials to the script.
Cheers,


[BUG] exception no such file or directory, chmod '/node_modules/playwright-internal/lib/cli/cli.js' occurred in custom focal docker-image

I have tried to replace python with ruby inside following docker configuration https://github.com/microsoft/playwright/blob/master/utils/docker/Dockerfile.focal
custom Dockerfile
FROM ubuntu:focal
# === INSTALL Node.js ===
ARG PLAYWRIGHT_VERSION=1.14.1
# Install node14
RUN apt-get update && apt-get install -y curl && \
    curl -sL https://deb.nodesource.com/setup_14.x | bash - && \
    apt-get install -y tzdata -y nodejs

# Feature-parity with node.js base images.
RUN apt-get update && apt-get install -y --no-install-recommends git ssh && \
    npm install -g yarn

# Create the pwuser (we internally create a symlink for the pwuser and the root user)
RUN adduser pwuser

# Install Ruby 2.6

RUN apt -y update && apt -y install software-properties-common && apt-add-repository -y ppa:brightbox/ruby-ng && apt -y install ruby2.6

# === BAKE BROWSERS INTO IMAGE ===

ENV PLAYWRIGHT_BROWSERS_PATH=/ms-playwright

# 1. Add tip-of-tree Playwright package to install its browsers.
#    The package should be built beforehand from tip-of-tree Playwright.

RUN apt-get update && apt-get install -y wget default-jdk \
    && wget -qO /tmp/playwright.tar.gz https://github.com/microsoft/playwright/archive/refs/tags/v"$PLAYWRIGHT_VERSION".tar.gz \
    && tar -xf /tmp/playwright.tar.gz --directory=/tmp/

# 2. Install playwright and then delete the installation.
#    Browsers will remain downloaded in `/ms-playwright`.
#    Note: make sure to set 777 to the registry so that any user can access
#    registry.
RUN mkdir /ms-playwright

RUN mkdir /tmp/pw
RUN cd /tmp/pw
RUN npm init -y
RUN ls -la /tmp/
RUN npm i /tmp/playwright.tar.gz
RUN DEBIAN_FRONTEND=noninteractive npx playwright install-deps
RUN rm -rf /tmp/pw
RUN rm /tmp/playwright.tar.gz
RUN chmod -R 777 /ms-playwright

WORKDIR /workspace

COPY . /workspace

RUN bundle install

CMD ["/bin/bash"]

Describe the bug
When I have tried to build Dockerfile after run npm i /tmp/playwright.tar.gz, exception below occurred.
Step 14/22 : RUN npm i /tmp/playwright.tar.gz
 ---> Running in d8df7ffd946d
npm WARN @1.0.0 No description
npm WARN @1.0.0 No repository field.

npm ERR! code ENOENT
npm ERR! syscall chmod
npm ERR! path /node_modules/playwright-internal/lib/cli/cli.js
npm ERR! errno -2
npm ERR! enoent ENOENT: no such file or directory, chmod '/node_modules/playwright-internal/lib/cli/cli.js'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR!


Substreams ability to add dynamic inputs

Currently Substreams do not allow  the abiliy to add dynamic inputs when running a substreams. To accomodate this feature we suggest the following modification to the substreams manifest
modules:
  ...

  - name: map_transfers
    kind: map
    initialBlock: 12287507
    inputs:
      - params: sf.substreams.v1.ListParams
        default: {"my": "default", "value": "world"} // optional, let's start without.
      - source: sf.ethereum.type.v1.Block
    output:
      type: proto:eth.erc721.v1.Transfers
  ...

A few things to note:

There needs to be a params as an input, and it needs to be the first one. For the time being we will only support string
the params key that is on the same "level" as inputs is a default value. The user running the substreams will have the abiliyt to override it via the CLI or in code while performing his GRPC request

substreams run -p -e localhost:9000 substreams.yaml map_transfer \
  -p map_transfer={"json": "representation", "of": "the 'param' type"} \
  -p other_module={"bob": "dylan"} \
  --start-block 12375267 \
  -t +1

The serialized inputs will need to be added to the modules' hash for cache purposes.
message MapParams {
  map<string,string> params = 1;
}
message ListParams {
  repeated string = 1;
}

On the command line, we could also help with the known type sf.substreams.v1.Params:
substreams run ... -p map_transfer=bob=123 -p other_module=hello=world&my=friend
substreams run ... -p map_transfer=0x123123,0x234234 -p other_module=hello=world&my=friend

the moment a --param module=HERE param HERE doesn't start with a {.

The other option was to use params as a string, the manifest be:
modules:
- name: mymod
  inputs:
  - params: string
  - eth.Block
  params: "default string"

with support on the CLI for something like:
-p mymod=hello=world&other=var \
-p othermod=0x123123123

Use case with Antelope:

goal is to add a field in the final output module that's going to a sink, to add the chain_id to certain objects.
the consuming process is not aware of the endpoint.. and the substreams module is made to be totally generic, so upon running the substreams, it'd be useful to be able to inject some metadata, from the caller, that ends up inside the stream.

Second use case:

You have a general purpose token balance tracker substreams

Your goal is to track only a SUBSET of those assets. You could specify the contract address, token symbol, whatever.

Another question, is where it lands in the protobuf model:
https://github.com/streamingfast/substreams/blob/develop/proto/sf/substreams/v1/modules.proto

  message Input {
    oneof input {
      Source source = 1;
      Map map = 2;
      Store store = 3;
      Params params = 4;  # This added
    }

    message Params {  # This added
      string value = 1;
    }

Python code to tweak params would do:
[mod for mod in pkg.modules.modules if mod.name == "store_pools"][0].inputs[0].value = "myvalue"

Previous design:
Currently Substreams do not allow  the abiliy to add dynamic inputs when running a substreams. To accomodate this feature we suggest the following modification to the substreams manifest
modules:
  ...

  - name: map_transfers
    kind: map
    initialBlock: 12287507
    inputs:
      - params: sf.substreams.v1.ListParams
        default: {"my": "default", "value": "world"} // optional, let's start without.
      - source: sf.ethereum.type.v1.Block
    output:
      type: proto:eth.erc721.v1.Transfers
  ...

A few things to note:

There needs to be a params as an input, and it needs to be the first one. For the time being we will only support string
the params key that is on the same "level" as inputs is a default value. The user running the substreams will have the abiliyt to override it via the CLI or in code while performing his GRPC request

substreams run -p -e localhost:9000 substreams.yaml map_transfer \
  -p map_transfer={"json": "representation", "of": "the 'param' type"} \
  -p other_module={"bob": "dylan"} \
  --start-block 12375267 \
  -t +1

The serialized inputs will need to be added to the modules' hash for cache purposes.
message MapParams {
  map<string,string> params = 1;
}
message ListParams {
  repeated string = 1;
}

On the command line, we could also help with the known type sf.substreams.v1.Params:
substreams run ... -p map_transfer=bob=123 -p other_module=hello=world&my=friend
substreams run ... -p map_transfer=0x123123,0x234234 -p other_module=hello=world&my=friend

the moment a --param module=HERE param HERE doesn't start with a {.


Feature Request: Log Correlation With Traces

Hello! Thanks for the great plugin!
It would be great to be able to support the ability to have Nginx logs correlated with traces similar to how we can correlate application level logs with traces.

Closing since we discovered this is actually possible today by injecting the "$datadog_trace_id" in our logs!


cf create-buildpack mangles CF buildpack contents when called with a directory

The cf create-buildpack command is usually called with a zip file, but it can
also be called with a directory that contains the contents of a buildpack. Currently, the command skips the buildpack's manifest.yml file when zipping it up. This manifest.yml file is distinct from an app manifest.yml, and is necessary for all of the CF buildpacks to function.
Command
cf create-buildpack my_buildpack ./my-buildpack-directory 1

What occurred
The manifest.yml file at the root of the buildpack is not available because the same code used to zip apps is used to zip the buildpack. This makes all of the official CF buildpacks fail with an opaque error message that is difficult to debug:
   Downloaded app package (68K)
   -----> Download go 1.9.1
   -----> Running go build supply
Error staging application: App staging failed in the buildpack compile phase
FAILED

What you expected to occur
The buildpack to be uploaded without any missing files.
Maybe .git and other VCS directories should be excluded though? The manifest.yml file is actually the only one that seems unreasonable to remove: https://github.com/cloudfoundry/cli/blob/master/cf/appfiles/cf_ignore.go#L80
Is there a reason we don't upload the manifest.yml file for apps?
Any other relevant information
See: https://pivotal.slack.com/archives/C05692KCR/p1525979858000109

HI @sclevine we've confirmed that the refactor fixed this issue and will be releasing this in the upcoming release. Let us know if you have any additional questions/comments by reopening this issue or creating a new one. Thanks.


stat: ensure area is included in json output

I noticed that the area is not captured by the json output from the stat command.
This adds the area information into the json output just like the regular text output.

@nakengelhardt thanks for approving. This PR appears to be failing one test, but in looking at it, it seems to be unrelated (the master branch also seems to have this issue). Thanks.


Fix panic when trying to get location_info when the locations doesn't contain the frame index.

Panics are observed when running defmt print while piping from a tcp socket from either an OpenOCD debugger or a J-Link debugger.
thread 'main' panicked at 'no entry found for key', print\src\main.rs:151:41
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

The panic occurs because the map doesn't contain the frame index, contrary to the comment that this PR also deletes.
// NOTE(`[]` indexing) all indices in `table` have been verified to exist in the `locs` map
let loc = locs.as_ref().map(|locs| &locs[&frame.index()]);

This PR uses get which returns an Option::None if the map doesn't contain the frame index, and then only uses the location if there was a) any locations, and b) the locations contained the frame index.
This fixes the panic and now I'm able to see the rest of the log which I wasn't previously able to see due to the panic.

Thank you for your contribution.
bors r+


Commands in debug widget gets hidden

Testing #16026
Have the following compound configuration in launch.json in VSCode repo
"compounds": [
		{
			"name": "Debug VSCode",
			"configurations": [
				"Launch VSCode",
				"Attach to Extension Host"
			]
		}
	]

Start the above compound config
Switch between two configurations in the launch widget

This will mess up the widget and there is no way to terminate it.
This could be related/similar to the issue #16596

Yes, probably a duplicate. Thanks for filing though since this has easier steps to repro

Closing as duplicate, is fixed now


Pixiv galleries don't work

Whenever I click on a gallery under pixiv search, it says there are no results.

Closing in favor of issue #2485


improvementAdd log while deserialize column statistics failed.

Add log while deserialize column statistics failed.

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

run external

run external


Docker compose issues + possible solution.

Trying to use this image in a docker-compose setup with cassandra is impossible. The issue is that cassandra takes so long to startup and kong bails if cassandra isn't running.
I solved this by adding monit to the base image https://hub.docker.com/r/articulate/kong-monit/ and https://github.com/articulate/docker-kong-monit
We could easily roll this back into this repo by creating a secondary Dockerfile.monit and then having docker hub build that along with the other Dockerfile.  The normal one will be tagged how it is right now, but we can have the monit version tagged as monit-latest and monit-0.5.3.
This gives the person using the image the choice.
I'd be happy to PR the changes and work with whoever needed to get this done.

I am not an expert of Compose, but I think somebody suggested using restart: always as a way to get around this problem.

You are right, restart: always fixes this perfectly.
Closing.


Is the "query_api.py" file missing

RecLM-emb/shell/test_data_pipeline.sh, line 56, shows python preprocess/gpt_api/query_api. py, but there is no query_api. py file in the RecLM-emb/preprocess/gpt_api/ directory, only the api. py file. May I ask if the file is missing?

Thanks for your feedback.
The actual file used here is api.py. We will correct the script.


Add tooltips to filter apply/clear icons  (to localized String.js)

Per Filter Change Call on 3/23/2015
Add tooltips to filter apply/clear icons (Please ensure the textual tooltip are included in the NLS localizedstring.js.

applyFilter: "Apply Filter", // Shown as a tooltip for apply filter icon.
clearFilter: "Clear Filter" //  Shown as a tooltip for clear filter icon.
Added to localizedstring.js.
Need to verify in NLS browser


Simple 'options' logic + "suppressStackTrace" option

The way my testing workflow is set up I don't need to see the full stack trace of errors in the console (the stack traces are reachable elsewhere). Since I wanted to give my developers a little treat and use karma-nyan-reporter in the console I added an option to suppress the stack trace all together.
Since there was no option system set up I added a little bit of functionality to create a defaultOptions object and merge that with any incoming options from the "config" object passed in by Karma.
The reasoning for using a function and returning a new instance of "defaultOptions" is in the unlikely event that two NyanCat instances are created, their options objects won't conflict.
If you have any suggestions or changes or just don't like this/me please let me know.

@Ashwell Thanks for the pull request! This is a great addition. I would be happy to merge it in. Could you squash your commits into a single commit with the message formatted following this guide?

@Ashwell - I squashed the commit messages and merged in via local branch. Your change is in release v0.0.51. Note that I changed the option to suppressErrorReport. Thanks again for the contribution!

I was just looking to get to this today, you beat me to it @dgarlitt! I'm glad I could be of service!


"request" module version update to 2.83.0

Hi,
I building an Angular Universal 5.x PWA with your Node SDK.
I get a warning on build:
WARNING in ./node_modules/har-validator/node_modules/ajv/lib/async.js
119:15-28 Critical dependency: the request of a dependency is an expression
 @ ./node_modules/har-validator/node_modules/ajv/lib/async.js
 @ ./node_modules/har-validator/node_modules/ajv/lib/ajv.js
 @ ./node_modules/har-validator/lib/node4/promise.js
 @ ./node_modules/request/lib/har.js
 @ ./node_modules/request/request.js
 @ ./node_modules/request/index.js
 @ ./node_modules/optimizely-server-sdk/lib/plugins/event_dispatcher/index.js
 @ ./node_modules/optimizely-server-sdk/index.js
 @ ./dist/server/main.bundle.js
 @ ./server.ts

WARNING in ./node_modules/har-validator/node_modules/ajv/lib/compile/index.js
13:21-34 Critical dependency: the request of a dependency is an expression
 @ ./node_modules/har-validator/node_modules/ajv/lib/compile/index.js
 @ ./node_modules/har-validator/node_modules/ajv/lib/ajv.js
 @ ./node_modules/har-validator/lib/node4/promise.js
 @ ./node_modules/request/lib/har.js
 @ ./node_modules/request/request.js
 @ ./node_modules/request/index.js
 @ ./node_modules/optimizely-server-sdk/lib/plugins/event_dispatcher/index.js
 @ ./node_modules/optimizely-server-sdk/index.js
 @ ./dist/server/main.bundle.js
 @ ./server.ts

WARNING in ./node_modules/har-validator/node_modules/ajv/lib/async.js
96:20-33 Critical dependency: the request of a dependency is an expression
 @ ./node_modules/har-validator/node_modules/ajv/lib/async.js
 @ ./node_modules/har-validator/node_modules/ajv/lib/ajv.js
 @ ./node_modules/har-validator/lib/node4/promise.js
 @ ./node_modules/request/lib/har.js
 @ ./node_modules/request/request.js
 @ ./node_modules/request/index.js
 @ ./node_modules/optimizely-server-sdk/lib/plugins/event_dispatcher/index.js
 @ ./node_modules/optimizely-server-sdk/index.js
 @ ./dist/server/main.bundle.js
 @ ./server.ts

I have changed in my fork and run all your test and all pass.
https://github.com/dbreuer/node-sdk/commit/5e0b60b70b6cc5f398c27d7a0ef51236c62fd05d
Here a repo to replicate the issue:
https://github.com/dbreuer/node-sdk/tree/dbreuer/node-sdk-angular-universal-test
Thank you
David B.

Thanks for opening this issue. We are not able to upgrade the library at the moment because that version of request breaks backwards compatibility with legacy node 0.10 and 0.12, which we are currently still supported. Stay tuned as we will be deprecating support for legacy node in the near future and should be able to upgrade the version of the request package.


Sync symbol properties with libIndexStore

libIndexStore has a new SwiftAsync symbol property, add this to the
headers.
Also add the missing ProtocolInterface property in IndexStoreDB.
Resolves rdar://83780222

Doesn't look like properties are passed through into the Swift API, so I didn't add any tests. Would it be worth adding?


TypeScript 4.1: Could not find a declaration file for module 'react/jsx-runtime'

THIS IS NOT AN ISSUE WITH create-react-app; The typings for<EMAIL_ADDRESS>are not released yet and need to address this issue. The WIP can be found here. I already created a note for this issue on the PR.
I actually don't know whether this is an issue with the type definitions for react or react-scripts.
When upgrading to TypeScript 4.1.x I will get the following error:
Could not find a declaration file for module 'react/jsx-runtime'. '.../node_modules/react/jsx-runtime.js' implicitly has an 'any' type.
  If the 'react' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react`  TS7016

Adding the following to the react-app-env.d.ts resolved the issue, but feels hacky.
declare module "react/jsx-runtime" {
  export default any;
}

Would appreciate any information on whether that is an issue that needs to be solved within create-react-app or something that needs to be addressed by the type definitions.
Here the tsconfig.json for reference:
{
  "compilerOptions": {
    "target": "es5",
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noFallthroughCasesInSwitch": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react-jsx"
  },
  "include": [
    "src"
  ]
}

The behavior can be observed in this or build: https://github.com/n1ru4l/obs-character-info/pull/17

I’m getting this issue outside of CRA with Typescript 4.1.2

For reference:
https://github.com/facebook/react/blob/89d4fe141a28b54807901126063249cab6483f89/packages/react/jsx-runtime.js#L1-L9
It seems like this must be addressed in the @types/react package.

I noted this on the PR for updating @types/react for<EMAIL_ADDRESS>over here: https://github.com/DefinitelyTyped/DefinitelyTyped/pull/48971#pullrequestreview-535291028
Gonna close this as it is not an issue related to create-react-app.

This got now adressed in https://github.com/DefinitelyTyped/DefinitelyTyped/pull/49701

there are now types for react and react-dom version 17 available, shouldn't you bump them in CRA?

A search for this error, lands at this specific page. So, I am going to put what worked for me here, for those who come later. I understand there is a lot of linking, pointing out that and this. For me, I just want my students to get started with running react, without having to go through ten different links.
I am sure, this is not 'the' solution, but 'a' solution for someone who just wants to create a simple hello world react app with typescript.  The search engines have already indexed this page as the top hit for this error, so yes. putting it here.
[exceprt from my developer work diary]
Okay, let's try that again.
npx create-react-app try-react -–template typescript

Manually changing files from .js to .tsx (for files with JSX content) and .ts (for files that dont use JSX)
Please install typescript by running npm install typescript. (error)
npm install typescript

Now, I get the big error. Could not find a declaration file for module 'react/jsx-runtime'. '/node_modules/react/jsx-runtime.js' implicitly has an 'any' type.
npm i --save-dev @types/react

Next, error. Could not find a declaration file for module 'react-dom'. '/node_modules/react-dom/index.js' implicitly has an 'any' type.
npm i --save-dev @types/react-dom

Next, error. TypeScript error in /src/index.tsx(17,1): Expected 1 arguments, but got 0.
solution: comment out // reportWebVitals(); or actually send something, like this.
reportWebVitals(console.log)

Next, error.
import { ReportHandler } from 'web-vitals';

add the above import to reportWebVitals.ts.
And, finally, it is done.

FWIW, ran into this issue after a Dependabot version bump to TypeScript 4.1.3 and yarn add @types/react --dev was enough to resolve the compilation error.

Solve with>   rm -rf node-modules, rm -rf package-lock.json,  yarn install,

Solve with>   rm -rf node-modules, rm -rf package-lock.json,  yarn install,

FWIW, ran into this issue after a Dependabot version bump to TypeScript 4.1.3 and yarn add @types/react --dev was enough to resolve the compilation error.

You should group updates and use yarnDedupeFewer: https://docs.renovatebot.com/configuration-options/#postupdateoptions

FWIW, ran into this issue after a Dependabot version bump to TypeScript 4.1.3 and yarn add @types/react --dev was enough to resolve the compilation error.

You should group updates and use yarnDedupeFewer: https://docs.renovatebot.com/configuration-options/#postupdateoptions

Solve with> rm -rf node-modules, rm -rf package-lock.json, yarn install, and yarn add @types/react --dev

If you're using yarn. You must remove yarn.lock as well before run yarn install

still broken in stock CRA with typescript...
solved with
yarn add @types/react --dev
or
npm i --save-dev @types/react

Fixed here in this version

After deleting and re-installing your node modules, if the error persists and you're using VS Code, make sure to run TypeScript: Restart TS Server in the Command Palette

"yarn add @types/react --dev" did the trick

After deleting and re-installing your node modules, if the error persists and you're using VS Code, make sure to run TypeScript: Restart TS Server in the Command Palette

This worked for me!

dsfsadf

export default must be exist in component file.

adding "noImplicitAny": false to tsconfig.json inside "compilerOptions": {...} did the trick

npm i -D @types/react worked for me

yarn add @types/react --dev

This worked!

Reboot my computer worked for me (not a joke), I use VSCode.


python311Packages.twitchapi: 4.1.0 -> 4.2.0

Description of changes
Diff: https://github.com/Teekeks/pyTwitchAPI/compare/refs/tags/v4.1.0...v4.2.0
Changelog: https://github.com/Teekeks/pyTwitchAPI/blob/refs/tags/v4.2.0/docs/changelog.rst

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 286402 run on x86_64-linux 1

2 packages marked as broken and skipped:

python312Packages.twitchapi
python312Packages.twitchapi.dist

3 packages built:

home-assistant-component-tests.twitch
python311Packages.twitchapi
python311Packages.twitchapi.dist


replacing panics & expect with returning results

It would be great to bubble out errors via Result rather than panics for stability of consumers of Pete

Agreed, modulo errors that are post-fork but pre-exec in Command. I think panic/abort is the only safe thing we can do there.


Are defer and pending deprecated?

What is the future of defer/pending methods? Are they deprecated? Its not clear from the deprecated APIs documentation (it just says discouraged). Will they ever be removed from the library?

They'll likely never be removed but please do not use them.

They are deprecated in 3.0 but not removed, you will get a warning if you have warnings enabled in 3.0

@benjamingr @petkaantonov could you provide some explanation as to why we shouldn't use them / why they've been deprecated? I saw this in the docs:

The use of Promise.defer and deferred objects is discouraged - it is much more awkward and error-prone than using new Promise.

However that argument isn't very compelling without some examples or explanation as to how it's more "awkward" or "error-prone".

@jcready :
function getUserStatus() {
  return new Promise(resolve, reject) {
      makeNetworkRequest("/userstatus", resolve, reject); // promisifying a poor API manually);
  });
}

function getUserStatus() {
   var d = Promise.defer();
   makeNetworkRequest("/userstatus", v => d.resolve(v), e => dreject(r));
  return d.promise;
}

The difference is when makeNetworkRequest  might  throw synchronously. In the new Promise example the consumer of the method only cares about rejections - in the .defer() case they have to handle both synchronous and asynchronous exceptions. This is effectively for the same reason then is always run asynchronously - providing an API that is sometimes asynchronous - in general or in the way it emits errors - is problematic.


Changing version of nuget package used in #load does not download latest nuget package

What You Are Seeing?
I have a build.cake script that contains the following pre-processor directive:
#load "nuget:?package=MyPackage&version=0.1.0-feat-mg-16017-co0020"

I can successfully build my project through build.ps1. But then, I want to use a new version of this nuget package. I therefore change my load directive to use version 21:
#load "nuget:?package=MyPackage&version=0.1.0-feat-mg-16017-co0021"

When I start build.ps1, it continues to use version 20.
What is Expected?
build.ps1 / cake should download version 21 of my nuget pacakge and use it.
What version of Cake are you using?
0.19.3
Are you running on a 32 or 64 bit system?
64
What environment are you running on?  Windows? Linux? Mac?
Windows
Are you running on a CI Server?  If so, which one?
No
How Did You Get This To Happen? (Steps to Reproduce)
See above

This is an known issue/limitation, It's ok the radar to be fixed, but not the current highest priority.
The workaround we recommend for now is to do a checksum on build.cake/packages.config and clear tools/addins if that changes.
You can see an example of this in the recommended build.ps1/build.sh in
https://github.com/cake-build/resources

Closing as a duplicate of https://github.com/cake-build/cake/issues/1521


Tristan/optional project

This merge requests removes the requirement that BuildStream should be launched within a project directory, or that -C/--directory should be specified to indicate a project directory.
When Stream finds itself trying to load an Element, then an Error is raised if a Project was not loaded, but not if only ArtifactElements are loaded.
Tests for the various commands which support operation on artifact names have been enhanced to also test the cases where a project is not loaded.

This pull requests depends on first landing https://github.com/apache/buildstream/pull/1433

This pull requests depends on first landing https://github.com/apache/buildstream/pull/1433

I understand this PR has other dependencies but just wanted to give it an overall +1. It'll be handy to not have to specify a project in such cases.

I understand this PR has other dependencies but just wanted to give it an overall +1. It'll be handy to not have to specify a project in such cases.


Log input filename

@Redmar-van-den-Berg wrote a lovely MultiQC module for this tool in https://github.com/ewels/MultiQC/pull/1795, but the method for finding a sample name is a bit rough:
# There is no sample name in the log, so we use the root of the
# file as sample name (since the filename is always stats.dat
name = f["root"]

It would be much nicer if the stats.dat file could log one or two more things - most importantly, the input file name(s). That way, the file can be interpreted by itself without needing directory structure for context.

Thank you for this suggestion.
Would something like this be acceptable?
input: R1.fq R2.f1 R3.fq
total: 8
usable: 7
unique: 4
clusters: 3

It would be much nicer if the stats.dat file could log one or two more things

Which other things do you have in mind?

Given that the file seems to already be valid YAML (at least the example from @Redmar-van-den-Berg is), how about sticking to YAML? Would make downstream usage super easy for people.
So then, something like this:
input: [R1.fq, R2.f1, R3.fq]
total: 8
usable: 7
unique: 4
clusters: 3

or this:
input:
  - R1.fq
  - R2.f1
  - R3.fq
total: 8
usable: 7
unique: 4
clusters: 3

For other stuff, I can refer to my now ancient and slightly-ranty blog post on the topic, but generally I really appreciate things like the software name, software version number, the command / parameters used. So if you end up with the results file in isolation you're able to know how it was generated.

Well, it is a text file that happens to conform to the YAML standard, but we can pretend that this was intentional.

I really appreciate things like the software name, software version number, the command / parameters used.

I will see what I can do. Do you have any preferences for key names?

A happy accident 😊 No preference. Thanks so much!

I added an option to write a separate metadata file.
Such a file would look like this:
name: humid
version: 1.0.2
parameters:
  word_length: 24
  allowed_mismatches: 1
  log_name: /dev/stderr
  dir_name: out
  run_statistics: false
  filter_duplicates: true
  annotate_fastq_files: false
  use_edit_distance: false
  use_maximum_clustering: false
  write_metadata: true
  files:
    - data/R1.fq.gz
    - data/R2.fq.gz
    - data/R3.fq.gz

Would this work nicely with MultiQC?

Looks great! Though does it need to be an option / a separate file? The author of HiSAT did the same and (selfishly) it's a bit of a hassle from the MultiQC side. People often forget to run with the flag or don't realise that they need to, or worse are using a pipeline written by someone else where the flags are difficult / impossible to change. So I would personally advocate for always saving this information by default, unless there's a reason not to.

It would be nice to always write the metadata file, and optionally include the statistics in this file when humid is executed with the -s flag. That way, all the relevant information is always in the same place.
We might also want to add an optional flag to humid where the user can specify the sample name to be put in the metadata file.

@ewels

Though does it need to be an option / a separate file?

I think so, yes. In my opinion a command line tool should produce as little clutter as possible by default. I also think that it is the responsibility of the caller to document which parameters are used, but I can see the reasons for facilitating this.
@Redmar-van-den-Berg

optionally include the statistics in this file

I would prefer not to mix metadata with results.

Ok 👍🏻 The only remaining complication is knowing which metadata file corresponds to which results file. We can assume that they must both be in the same directory, but it gets complicated if there are multiple runs in one location.

Good point.

it gets complicated if there are multiple runs in one location.

That is why we added the output directory (-d) option. We could use the sample name here as @Redmar-van-den-Berg suggested.
Alternatively, instead of using flags, we could consider allowing the user to provide the names of the additional files, e.g., use -s <name> instead of -s. This would get rid of a lot of implicit knowledge needed to interpret the results.

The standard filenames are one thing I really liked already, as it makes it much easier to find them 😅 Otherwise we have to search the file contents of every single file looking for specific strings custom to the tool output.
Generally we're talking about two different user groups here though. I'm talking as a tool developer for downstream software where I have no control over how the software is run. (Alternatively end users running the tool indirectly, as part of a larger package / pipeline.) I like everything to be as standardised and inflexible as possible, so that the results are easy to discover and parse as possible, irrespective of what the user did upstream.
In my personal opinion, 90% of users don't really care about customising filenames and things, they want stuff to "just work". The less requirement to read the docs the better. So I usually aim for sensible defaults with the option to customise.
Anyway, this all got a bit in depth, subjective and philosophical which wasn't really my intention! 😅 The MultiQC module already works fine as it is and the current outputs are pretty solid as they are. So if in doubt, feel free to forget I said anything 😆

I have reverted the metadata logging for now.
I am thinking about adding this functionality to the command line parser library that this tool uses as it would guarantee a tight coupling and avoids code duplication.


Hessians of network functions

I'm trying to get out the Hessian of the function produced by a neural network, and I cannot figure out a way to actually get access to the Hessian matrix.
from jax import random, jacfwd, jacrev, tree_flatten
from jax.experimental import stax
import jax.numpy as np

key = random.PRNGKey(10)
key, x_key, y_key = random.split(key, 3)

target_fn = lambda x: np.sin(x) + 0.2 * np.sin(4 * x)

train_points=10
train_xs = random.uniform(x_key, (train_points, 1), minval=-np.pi, maxval=np.pi)
train_ys = target_fn(train_xs)

init_fn, apply_fn = stax.serial(
    stax.Dense(35), stax.Relu,
    stax.Dense(35), stax.Relu,
    stax.Dense(1)
)

_, params = init_fn(key, (-1, 1))

def get_hessian(fun):
    return jacfwd(jacrev(fun))

f = lambda W: apply_fn(W, train_xs[0, :])

# can do this by datapoint or in batches
hessian = get_hessian(apply_fn)(params, train_xs[0, :])

# how does one make sense of this list?
print([p.shape for p in tree_flatten(hessian)[0]])

Is there a way to manipulate the hessian so that I can view it directly as a matrix. Ideally one would be able to batch this response and call hessian = get_hessian(apply_fn)(params, train_xs) using the full training data and get an n x p x p array back containing the Hessians evaluated at each of the n data points.
I'm not sure if I'm missing something already built in or if this is something I would need to built. Any help is appreciated!

Note: get_hessian is available as jax.hessian, so you don't need to define it yourself here.
hessian, jacfwd and jacrev accept Python trees of arrays, not just arrays. One way to think of what you get back from hessian is a block-sparse matrix. I think one way to understand the structure would be to use another smaller example with dictionaries as arguments:
import jax, jax.numpy as jnp
import numpy as np

def f(v):
  x = v['x']
  y = v['y']
  return jnp.sum(jnp.sin(x * jnp.cos(y)))

x = np.random.randn(3)
y = np.random.randn(3)

h = jax.hessian(f)({'x': x, 'y': y})

print(h)
print(h['x']['x'])

prints:
{'x': {'x': DeviceArray([[0.9596267 , 0.        , 0.        ],
             [0.        , 0.31985453, 0.        ],
             [0.        , 0.        , 0.0016721 ]], dtype=float32), 'y': DeviceArray([[-0.27333596,  0.        ,  0.        ],
             [ 0.        ,  0.35417664,  0.        ],
             [ 0.        ,  0.        ,  0.94545966]], dtype=float32)}, 'y': {'x': DeviceArray([[-0.27333596, -0.        , -0.        ],
             [ 0.        ,  0.3541766 ,  0.        ],
             [ 0.        ,  0.        ,  0.94545966]], dtype=float32), 'y': DeviceArray([[-0.29960722, -0.        , -0.        ],
             [ 0.        ,  2.2319145 ,  0.        ],
             [ 0.        ,  0.        ,  0.01589215]], dtype=float32)}}

and
[[-0.27333596  0.          0.        ]
 [ 0.          0.35417664  0.        ]
 [ 0.          0.          0.94545966]]

In other words, the output of hessian contains a two nested copies of the input python tree structure {"x": ..., "y", ...}, just like you'd expect two copies of each input array dimension in the hessian.
If you don't want JAX to maintain the sparse structure for you, you can simply flatten the input into a 1D dense array before calling hessian, e.g. something like this:
def flatten(v):
  def f(v):
    leaves, _ = jax.tree_util.tree_flatten(v)
    return jnp.concatenate([x.ravel() for x in leaves])
  out, pullback = jax.vjp(f, v)
  return out, lambda x: pullback(x)[0]

flat_xy, unflatten = flatten(xy)
h = jax.hessian(lambda t: f(unflatten(t)))(flat_xy)
print(h)

which prints:
[[ 9.5962667e-01  0.0000000e+00  0.0000000e+00 -2.7333596e-01
   0.0000000e+00  0.0000000e+00]
 [ 0.0000000e+00  3.1985453e-01  0.0000000e+00  0.0000000e+00
   3.5417664e-01  0.0000000e+00]
 [ 0.0000000e+00  0.0000000e+00  1.6720986e-03  0.0000000e+00
   0.0000000e+00  9.4545966e-01]
 [-2.7333596e-01  0.0000000e+00  0.0000000e+00 -2.9960722e-01
   0.0000000e+00  0.0000000e+00]
 [ 0.0000000e+00  3.5417661e-01  0.0000000e+00  0.0000000e+00
   2.2319145e+00  0.0000000e+00]
 [ 0.0000000e+00  0.0000000e+00  9.4545966e-01  0.0000000e+00
   0.0000000e+00  1.5892152e-02]]

Does that help answer your question?

This is perfect thank you!


Update Black version to 22.3.0

This change updates the precommit config to have the latest Black
version (at the time of this commit). The main reason for doing so is to
get the latest fixes for a bug caused in a dependency library, click.
More details about this can be found at
https://github.com/psf/black/issues/2964
This resolves #716

pylint.org was down when this ran, but they seems to have added a redirect to pylint.pyqca.. Should be good if the workflow is run again.

Thanks @chamilad
Closing as the solution is to pin black in additional_dependencies

Thanks @chamilad
Closing as the solution is to pin black in additional_dependencies

While this does not fix #716 , it fixes that pre-commit is broken when you don't have a cached env for black with click<8.1.0.
Additionaly, the pinned black version in reqirements_dev.txt should also be raised to 22.3.0 since it currently breaks the CI (guess that also needs some expected test values to change).
#715 adds this change and more, but due to the broken CI the tests fail.
The recent pallets x.1.0 releases really were anti semantic versioning ones, first jinja2 3.1.0 breaks nbconvert (RTD now pins jinja2<3.1.0 in their docker images) and after that click 8.1.0 breaks black and typer. I also had a lot of updates to do all over the place 😅


List Query Bug

Hi,
I don't know really if I'm doing it right, but if I want to send a list of numbers to an address with a created resource like following:
this.$resource('/api/statistics{/id}/').get({'id':2}, {'fields:[1,45,23]};
then it creates following url request:
/api/statistics/2/?fields[]=1&fields[]=45&fields[]=23
Why are there scopes behind the 'fields' query parameter? Is that correct or not correct behaving?

When you are using the get action the fields parameters will be url encoded. If use the save action which sends a post request to the server your parameters will JSON encoded. You can add you own action or modify the get action to use a post request.

Yes I already understood, that works great. But why are there brackets ('[]') behind the get parameters? Is that a bug or feature?

It's a feature with the brackets PHP will automatically create an array with all the values submitted for fields. With URI templating you can convert the fields into a comma separated string.
this.$resource('/api/statistics{/id}/{?fields}').get({'id':2}, {'fields:[1,45,23]};
will turn into:
/api/statistics/2?fields=1,45,23


[1.18] Windows ci add bazel args (#16643)

This is a port of https://github.com/envoyproxy/envoy/pull/16643

Windows: Expand functionality of ci/windows_ci_steps.sh

Watch for //source/exe:envoy-static or empty args to trigger the build
Treat arbitrary args as bazel test directives

This allows forms such as;
ci/windows_ci_steps.sh //source/exe:envoy-static   - build the binary, nothing else
ci/windows_ci_steps.sh //test/...                  - test everything with exceptions and flake processing
The default (no args) does both of the above, and checks unused deps under bazel/... that are not skip_on_windows
ci/windows_ci_steps.sh //test/common/...           - test everything with no exceptions below common
ci/windows_ci_steps.sh //test/common/... --test_tag_filters=-skip_on_windows

same as above, avoiding broken components under common

Update bazel/README.md

If building an 18 month old envoy, an 18 month old copy of this document
is present in that source tarball
Offer a more recognizable symlink/path advisory based on current Python release

Clarify windows_build_steps.sh and windows docker invocation

Skip three longest windows test names for the month

Bazel before 5.0.0 fails to shorten executable path names of a specific length.
SymInitialize() fails to load the executable paths of a specific length
abesil tries to prepare for crash analysis and silently continue on failure
grps tries and abruptly aborts the program if symbols cannot be loaded

Fix is in for the next bazel rolling release of the 5.0.0 series
Signed-off-by: William A Rowe Jr<EMAIL_ADDRESS>Signed-off-by: Dmitri Dolguikh<EMAIL_ADDRESS>
Commit Message:
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]
[Optional API Considerations:]

FYI @davinci26

/assign-from @envoyproxy/stable-maintainers

/assign-from @envoyproxy/stable-maintainers

Not sure how to take this to another maintainer who is in office this week

Matt is OOO, if you could take this @PiotrSikora? It will help pre-flight the 1.18.4 binary-only build to prep for a clean 1.19.0

Matt is OOO, if you could take this @PiotrSikora? It will help pre-flight the 1.18.4 binary-only build to prep for a clean 1.19.0

I have no merge permissions, I think you're looking for @envoyproxy/senior-maintainers.


Acceleration is null if not > 0

I can see why you have done this but i think it would be a bit more practical if acceleration was an empty PIXI.Point regardless of the wether or not the emitter uses acceleration.
This became apparent to me when i wanted to randomise the acceleration between frames and found that acceleration was actually null when not used.

Changed in release 1.5.2.


python310Packages.python-fsutil: 0.5.0 -> 0.6.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.python-fsutil is: "Module with file-system utilities"
meta.homepage for python310Packages.python-fsutil is: "https://github.com/fabiocaccamo/python-fsutil"
meta.changelog for python310Packages.python-fsutil is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 0.6.0 with grep in /nix/store/fgynkkjg3b0q0yiik7i3piy9pvhzz3c3-python3.10-python-fsutil-0.6.0

found 0.6.0 in filename of file in /nix/store/fgynkkjg3b0q0yiik7i3piy9pvhzz3c3-python3.10-python-fsutil-0.6.0

Rebuild report (if merged into master) (click to expand)

12 total rebuild path(s)

6 package rebuild(s)

6 x86_64-linux rebuild(s)
6 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
dvc
dvc-with-remotes
python310Packages.python-benedict
python310Packages.python-fsutil
python39Packages.python-benedict
python39Packages.python-fsutil

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/fgynkkjg3b0q0yiik7i3piy9pvhzz3c3-python3.10-python-fsutil-0.6.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.python-fsutil https://github.com/r-ryantm/nixpkgs/archive/3a847a03b0fad90718cbfc2a58bb541ab05ca012.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/fgynkkjg3b0q0yiik7i3piy9pvhzz3c3-python3.10-python-fsutil-0.6.0
ls -la /nix/store/fgynkkjg3b0q0yiik7i3piy9pvhzz3c3-python3.10-python-fsutil-0.6.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

6 packages built:

dvc
dvc-with-remotes
python310Packages.python-benedict
python310Packages.python-fsutil
python39Packages.python-benedict
python39Packages.python-fsutil

Maintainer pings
cc @fabaff for testing.

Result of nixpkgs-review pr 156840 run on x86_64-linux 1

6 packages built:

dvc
dvc-with-remotes
python310Packages.python-benedict
python310Packages.python-fsutil
python39Packages.python-benedict
python39Packages.python-fsutil


Automated tests(?)

might be nice for checking if everything works properly. not now; but later, ofc

node has a native testing API https://nodejs.org/api/test.html
maybe test:

operations

files

read with and without ranges
write files
delete files
change file ids
change file owner

accounts

create accounts
delete accounts
etc...

apiv1

make sure endpoints don't accept invalid data
make sure users can't do things only admins should be able to do
make sure things are blocked off depending on api key scope
etc...

idfk


config.py: Restrict private issue creation

config.py: Restrict private issue creation
Don't allow users to
create issues in private conversations
with corobo
Fixes https://github.com/coala/corobo/issues/391
Reviewers Checklist

[ ] Appropriate logging is done.
[ ] Appropriate error responses.
[ ] Handle every possible exception.
[ ] Make sure there is a docstring in the command functions. Hint: Lookout for
botcmd and re_botcmd decorators.
[ ] See that 100% coverage is there.
[ ] See to it that mocking is not done where it is not necessary.

ack https://github.com/coala/corobo/pull/463/commits/55509e9ca9472552fdd6cfc05932d8a15fc1e679


Beining/Deadline command fix bugs

fix #221 fix #232  fix #235 fix #228

Codecov Report

Merging #257 into master will increase coverage by 0.04%.
The diff coverage is 66.66%.

@@             Coverage Diff              @@
##             master     #257      +/-   ##
============================================
+ Coverage     43.06%   43.10%   +0.04%
- Complexity      570      572       +2
============================================
  Files           114      114
  Lines          2835     2837       +2
  Branches        421      423       +2
============================================
+ Hits           1221     1223       +2
  Misses         1481     1481
  Partials        133      133

Impacted Files
Coverage Δ
Complexity Δ

.../java/seedu/address/commons/util/DateTimeUtil.java
96.77% <ø> (ø)
5.00 <0.00> (ø)

.../seedu/address/logic/commands/DeadlineCommand.java
0.00% <ø> (ø)
0.00 <0.00> (ø)

...va/seedu/address/model/task/deadline/Deadline.java
67.69% <66.66%> (+1.02%)
31.00 <0.00> (+2.00)

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 4edbe60...098fd3e. Read the comment docs.


Website issue: When logged in, there should appear a menu section on the middle side of the sketchbook

Description
When user logs in, the user should be able to see the menu section showing up as a drawer which includes all the functionality on the horizontally centre top side of the sketchbook page instead of previously menu showing accordingly
In the attached screenshot I have shown where "menus" are given, do accordingly.
The menu should pop up show like a drawer, use framer motion or any modules if needed
Screenshots

🥦 Browser
Google Chrome
Checklist ✅

[X] I checked and didn't find similar issue
[X] I have read the Contributing Guidelines
[ ] I am participating in JWOC
[ ] I am participating in IWOC
[ ] I am willing to work on this issue (blank for no)

okay

@ItsRoy69 I have added the drawer to the sketchbook page, but login is a blocker for me, could you please respond for this?

https://github.com/WikiPortal/DoodleCollab/assets/82110100/58f46a6a-178d-41db-8b0d-0b82b82277c5
check the above snip where i have solved many issues, hope to hear from you soon.

@hemanth-kumar-boddeda eventough your work looks good but its not solving the mentioned issue, kindly work on the issues according to the instructions which are being assigned

@ItsRoy69 , I have worked on skecthbook as well and it is completed but server is not responding to the credentials given, kindly check that

@hemanth-kumar-boddeda did you check the mentioned steps for setting up the server side codebase ?

@hemanth-kumar-boddeda and for working on the banner section kindly check #64 for the design, ask for assigning and then after getting assigned start working on it, for working on the registration page kindly check #71 for the design, ask for assigning and then after getting assigned start working on it.

Hi @ItsRoy69 , could you please mention the names of the first icon which is present in menu drawer.

@hemanth-kumar-boddeda go to https://thenounproject.com/ and find icons by searching select, eraser, pencil, landscape, dustbin, download, share, shapes, pdf

@ItsRoy69 Thanks Brother

@hemanth-kumar-boddeda unassigning as the task is not completed by the contributing guidelines date

hey @ItsRoy69 I would like to work on this issue. Please assign this to me


Dynamic Table Data

Is your feature request related to a problem? Please describe.
The component does not seem to work with dynamic creation of tables.  I tried on a static table with no issues.
Describe the solution you'd like
Ability to use dynamic data tables
Describe alternatives you've considered
Additional context

disregard.  I goofed my code :)

@tommydev cool! It happens to all of us. I'm glad you got it worked out 🙌


Speedup CI execution

CI is taking up to 15 minutes to complete.
Build step is taking around 7 minutes to complete
Changes applied:

Lower build memory allocation
Remove unused dependencies

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

related to https://github.com/facebook/create-react-app/issues/8096

@pablofullana we can't 100% say if this is related or not, in general typescript + styled-components + material-ui stack eats a lot of resources
https://github.com/microsoft/TypeScript/issues/34801

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

Downgrade react-scripts from 3.4.1 to 3.2.0

why?

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

@mikheevm Downgrading react-scripts from 3.4.1 to 3.2.0 fixes the memory leak bug.
After this downgrade build time goes from 270-300 seconds on travis to 90-100 seconds
Memory allocation flag for node in build command is not needed
Local build time on my computer goes from 90 seconds to less than 50 seconds
Issue related to build memory leaks in react-scripts is marked to be addressed on v4 of react-scripts
At least is something to be considered evaluating the forth and against

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

@dasanra that's nice, but do we have still have other benefits like code-splitting, etc? I understand that CI build time is quite important, but in the end user-related benefits play a bigger role IMO

@dasanra with the new lint action I think you can remove lint step from travis

Travis automatic deployment:
https://pr1123--safereact.review.gnosisdev.com/app

what's the status of this PR?

@dasanra could you please check this PR? either fix it or close


Borders for entire climate zones

Borders for entire climate zones.
Please mark this as a Feature Request.
I PMed more information to @Timethor.

Is a climate zone something like grouping hot and cold biomes together? One thing I was looking into trying to make, was a mod/plugin that could bias the biomes chosen based on xz co-ordinates.
e.g. cold north, hot south, wet east, dry west.


Remove data return for count -- shouldn't be there.  Enhance docs & params

Fixes #10
Count should not return data -- it does since that's how select works, so remove before return.  Enhance tests to verify.
Add explanations/hints to docs.  Clarify some parameter usage.  Fix implementation to default some optional parameters.  Enhance tests to verify operation.

@skyler1ackerman Please check that these changes (at least) help with the doc & implementation things we discussed.  Thx


Attempt to invoke virtual method 'void com.marianhello.bgloc.LocationService.configure(com.marianhello.bgloc.Config)' on a null object reference

Your Environment

Plugin version: 0.5.0-alpha.30
Platform: Android
OS version: Oreo 8.0
Device manufacturer and model: Samsung Galaxy S8
React Native version: 0.55.4

Actual Behavior
Sometimes the plugin crashes, randomly.
Steps to Reproduce
Start the app, many times, and randomly once will crash.
The plugin is not started, just configured.

    });

  }
}

Please send me some plugin logs?
I'm specially interested in two logged events:

App will be resumed
Service connected
Service configured with...

Also few more questions for you.

Does it crash only when app is launched from launcher?
Does it crash only when app is started by tapping on notification?
Does it crash after screen rotate?

Added next lines:

componentDidMount() {

  if (__DEV__) {
    console.log('App.componentDidMount');
  }

  this.addEvents();

  this.initializeBackgroundGeolocation();

}

addEvents() {
    BackgroundGeolocation.on('stationary', () => console.log('BackgroundGeolocation Stationary'));
    BackgroundGeolocation.on('activity', (activity) => console.log('BackgroundGeolocation Activity', JSON.stringify(activity)));
    BackgroundGeolocation.on('start', () => console.log('BackgroundGeolocation Start'));
    BackgroundGeolocation.on('stop', () => console.log('BackgroundGeolocation Stop'));
    BackgroundGeolocation.on('background', () => console.log('BackgroundGeolocation Background'));
    BackgroundGeolocation.on('foreground', () => console.log('BackgroundGeolocation Foreground'));
    BackgroundGeolocation.on('authorization', (status) => console.log('BackgroundGeolocation Authorization', JSON.stringify(status)));
    BackgroundGeolocation.on('error', (error) => console.log('BackgroundGeolocation Error', JSON.stringify(error)));
    BackgroundGeolocation.on('location', () => console.log('BackgroundGeolocation Location'));
}

initializeBackgroundGeolocation() {

  if (__DEV__ || true) {
    console.log('App.initializeBackgroundGeolocation Call');
  }

  const options = { . . . };

  try {
    BackgroundGeolocation.configure(options);
  } catch (e) {

    Sentry.captureException(e);

    if (__DEV__ || true) {
      console.error('BackgroundGeolocation Configuration Error');
      console.error(e);
    }
  }

  BackgroundGeolocation.checkStatus(status => {

    if (__DEV__ || true) {
      console.log('BackgroundGeolocation Status', JSON.stringify(status));
    }

    // . . . . .
  });

}

Will send the logs, when it crash. Is this enough?
Uhh. Last time it crashed in android emulator after reload (RR). On my phone (Galaxy S8), as I remember, crashed when started from launcher. But will test it in different situations.

Here is the first.
The app was started in emulator by tapping on (scheduled) notification (react-native-push-notification).
Before was started many times successfully.
05-24 15:00:06.823 14678 14678 D ReactNative: ReactInstanceManager.attachRootViewToInstance()
05-24 15:00:06.829 14678 14705 I ReactNativeJS: Running application "..." with appParams: {"rootTag":1}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
05-24 15:00:07.119 14678 14705 I ReactNativeJS: App.componentDidMount
05-24 15:00:07.121 14678 14705 I ReactNativeJS: App.addEvents
05-24 15:00:07.148 14678 14705 I ReactNativeJS: App.loadVariables
05-24 15:00:07.165 14678 14705 I ReactNativeJS: App.initializeOneSignal Call
05-24 15:00:07.167 14678 14705 I ReactNativeJS: App.initializePushNotification Call
05-24 15:00:07.168 14678 14705 I ReactNativeJS: App.initializeBackgroundFetch Call
05-24 15:00:07.175 14678 14705 I ReactNativeJS: App.initializeBackgroundGeolocation Call
05-24 15:00:07.202 14678 14705 I ReactNativeJS: BackgroundGeolocation Foreground
05-24 15:00:07.206 14678 14705 I ReactNativeJS: 'App.onChangeAppState', 'active'
05-24 15:00:08.076 14678 14705 I ReactNativeJS: App.onPushNotification
05-24 15:00:08.076 14678 14705 I ReactNativeJS: { foreground: false,
05-24 15:00:08.076 14678 14705 I ReactNativeJS:   finish: [Function: finish],
05-24 15:00:08.076 14678 14705 I ReactNativeJS:   fireDate:<PHONE_NUMBER>110,
05-24 15:00:08.076 14678 14705 I ReactNativeJS:   userInteraction: true,
05-24 15:00:08.076 14678 14705 I ReactNativeJS:   id: '-1195024904',
05-24 15:00:08.076 14678 14705 I ReactNativeJS:   ..... }
05-24 15:00:08.082 14678 14705 I ReactNativeJS: 'BackgroundGeolocation Status', '{"authorization":1,"locationServicesEnabled":true,"hasPermissions":true,"isRunning":false}'
05-24 15:00:09.590 14678 14705 E ReactNativeJS: RNBackgroundGeolocation: Configuration error: Attempt to invoke virtual method 'void com.marianhello.bgloc.LocationService.configure(com.marianhello.bgloc.Config)' on a null object reference

RNBackgroundGeolocation: Configuration error: Attempt to invoke virtual method 'void com.marianhello.bgloc.LocationService.configure(com.marianhello.bgloc.Config)' on a null object reference
handleException
    G:\app\myapp-react\node_modules\react-native\Libraries\Core\ExceptionsManager.js:60:18
handleError
    G:\app\myapp-react\node_modules\react-native\Libraries\Core\InitializeCore.js:69:40
<unknown>
    G:\app\myapp-react\node_modules\react-native-sentry\lib\raven-plugin.js:163:23
<unknown>
    G:\app\myapp-react\node_modules\react-native-sentry\lib\Sentry.js:43:41
emit
    G:\app\myapp-react\node_modules\react-native\Libraries\vendor\emitter\EventEmitter.js:180:12
__callFunction
    G:\app\myapp-react\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:351:47
<unknown>
    G:\app\myapp-react\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:116:26
__guardSafe
    G:\app\myapp-react\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:314:6
callFunctionReturnFlushedQueue
    G:\app\myapp-react\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:115:17

Thanks. That is what I though. If app is started from notification that configure is called from main thread instead of special react-native thread and there is apparently race condition in this case. I think I already found it. So wait for fix.

any schedule to fix this error? I face same error. I need to use this library ASAP.
thanks for your hard work.

It is a bit annoying bug, but I have no idea where, and how to fix it. I am just in dev phase, so I wait patiently...

I am also running into this bug after upgrading to Gradle 4 and using the alpha 34 branch. It happens for me when running react-native run-android after the app has already been installed. It works when I uninstall the app and then reinstall it. Please let me know if any logs would be helpful for getting it fixed.

fixed in 0.5.0-alpha.36


Make fon-size for xs avatars smaller

Acceptance criteria

The font-size for avatars using the size xs is changed from .75rem to 0.5625rem

Are the fonts sizes too big in general? Because currently all font sizes align with the other specs. If we change this, we have one outlier. Just want to make sure that this is really what we want.
Current implementation (first avatar size, then font size).
@include size('xs', 'xs');
@include size('s', 's');
@include size('m', 'm');
@include size('l', 'l');
@include size('xl', 'xl');

Variant a?
@include size('xs', 0.5625rem);
@include size('s', 'xs');
@include size('m', 's');
@include size('l', 'm');
@include size('xl', 'l');

Variant b?
@include size('xs', 0.5625rem);
@include size('s', 's');
@include size('m', 'm');
@include size('l', 'l');
@include size('xl', 'xl');

Thanks for the heads up Fynn. Issue is closed as wont do for now.


HTML not rendering in production vs development environment.

Hi,
I'm having issues with html not being rendered in production vs my development environment. I'm really lost  as to the cause here. I've attached two photos. The one with more HTML under the login button as well as the text saying Footer (which is actually in the layout HTML file.) is the development environment.
Only screens using Rodauth are dropping the HTML in production. I'm really unsure why.

The official Rails demo is working just fine in production environment, so I think you have something different in your code that's causing issues. If you want me to help you debug, I would need you to reproduce the issue in a fresh Rails application.
It's unlikely this is a bug in rodauth-rails, so I'm closing the issue, and will reopen if it indeed turns out to be a bug.


Fix deploy from gitlab using a group's repo

only supported user based repos
fixes #4153
should not be merged until after 4.0 is released

Codecov Report

Merging #4479 into master will decrease coverage by 0.00%.
The diff coverage is 10.52%.

@@            Coverage Diff             @@
##           master    #4479      +/-   ##
==========================================
- Coverage   58.85%   58.84%   -0.01%
==========================================
  Files         897      897
  Lines       29248    29252       +4
  Branches     4220     4222       +2
==========================================
  Hits        17214    17214
- Misses      12034    12038       +4


Simple endpoint for prev, next and random

An idea would be to create 3 endpoints that are dynamic.
this moves away from the WC slightly but gives the ability for it to be “static” as the endpoint link auto redirects based on hostname.
Alternatively a simplified wc that just has links and no list.

I can add an option to show/hide the list on the web component.
The endpoint creation would mean more work to be done on the webring members' part. Some people who want to be part of the webring might not be confident developers and may not have the skills to drop those endpoints in etc.


Compatibility with Pekhui scaling

1.20.1
The hitbox of the the crawl state is always the same and does not scale with the overall player model when different from vanilla.

It was fixed in crawl-0.12.2, but i didn't backport it for 1.20.1

Is version 1.20.1 still popular? Can you just update MC to a newer version?

Well, 1.20.1 MC is the most recent version compatible with the Create mod, so I imagine there's still a decent amount of people who would appreciate it! No worries if it's not a priority, since I imagine Create will update at some point. (Been waiting about a year for it, though)


Add note about POT notebook to 301 training notebook

One thing that is a bit confusing is the use of saved model, vs frozen graphs, vs OpenVINO IR etc... It is a little bit all over the place as I read through the documentations.
Also, let's avoid putting, there will be error or warning etc, without providing instructions of how to fix it. For example, why is the saved models does not work? ...?
I think it will be great if we can make these terms more consistent across. As sometimes we say SavedModel, saved model, and Frozen Graphs vs Frozen graph vs FrozenGraph vs Frozen Graph models vs Frozen Graph format...
I made a quick touch up and let's keep making it better so the instructions are more clear. The code works however, that's the best news :)

Thanks @raymondlo84 but it seems your comments and edits are for a different notebook than 301. Could you make a new PR with these changes?


[Bug] Can't use custom trained model?

Description
How do I use a model I have just trained? I have tried to declare the directory its in -p ~/modelDirectory.
Do I need to use spleeter validate first? Or have I missed a step? There isn't any documentation on how to actually use the model once its built.

Step to reproduce

Open PowerShell in my directory with my config, model and dataset and type `spleeter separate -i 'F:\SpleetTest\Validate\Mixture\S05E02 - A War on Two Fronts\fullmix.wav' -o F:\SpleetTest\Configs\output -p F:\SpleetTest\Configs\pretrained_models\filmModel'
Run.
Got PermissionError: [Errno 13] Permission denied: 'F:\\SpleetTest\\Configs\\pretrained_models\\filmModel' error

Output
Traceback (most recent call last):
  File "c:\users\joe93\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\joe93\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\joe93\AppData\Local\Programs\Python\Python37\Scripts\spleeter.exe\__main__.py", line 9, in <module>
  File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\__main__.py", line 54, in entrypoint
    main(sys.argv)
  File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\__main__.py", line 45, in main
    params = load_configuration(arguments.configuration)
  File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\utils\configuration.py", line 46, in load_configuration
    with open(descriptor, 'r') as stream:
PermissionError: [Errno 13] Permission denied: 'F:\\SpleetTest\\Configs\\pretrained_models\\filmModel'

Environment

OS
Windows 10 (fully updated)

Installation type
pip

RAM available
16GB

Hardware spec
RTX2080 / Ryzen R2600

Additional context
I have reinstalled python, spleeter and retrained the model. Every time getting the same error [errno 13].

Hi @JavaShipped,
The -p option takes as input a json file that describes the parameters of the model. Have a look at this one as an example.
You need to pass the same json file that you used for training your model to the separate command.
Note that the model_dir parameter in the json file indicates where the model checkpoint (where are the model weights) will be stored. If you use a relative path, be sure you run the separate command in the same directory as you ran the train one.
The Permission denied error that you get is a permission issue that should not be related to spleeter. Be sure to have proper permissions on the model_dir directory when you run the command.

Okay, we have movement. I managed to run the seperate command, and it thought about it for a long time and powershell was eating up my CPU, so it was doing something.
But after about 30-40 seconds I got the error: ValueError: Cannot feed value of shape (25836, 2, 6) for Tensor 'mix_stft:0', which has shape '(?, 2049, 2)'
I used the following spleeter imput command: spleeter separate -i 'F:\BluRay 5.1\Done\S01E01 - Ambush\fullmix.wav' -o output -p F:\SpleetTest\Configs\filmModel.json
And got the following full output
Traceback (most recent call last):   File "c:\users\joe93\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main     "__main__", mod_spec)   File "c:\users\joe93\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code     exec(code, run_globals)   File "C:\Users\joe93\AppData\Local\Programs\Python\Python37\Scripts\spleeter.exe\__main__.py", line 9, in <module>   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\__main__.py", line 54, in entrypoint     main(sys.argv)   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\__main__.py", line 46, in main     entrypoint(arguments, params)   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\commands\separate.py", line 45, in entrypoint     synchronous=False   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\separator.py", line 228, in separate_to_file     sources = self.separate(waveform, audio_descriptor)   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\separator.py", line 195, in separate     return self._separate_librosa(waveform, audio_descriptor)   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\spleeter\separator.py", line 181, in _separate_librosa     outputs = sess.run(outputs, feed_dict=self._get_input_provider().get_feed_dict(features, stft, audio_id))   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\client\session.py", line 956, in run     run_metadata_ptr)   File "c:\users\joe93\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\client\session.py", line 1156, in _run     (np_val.shape, subfeed_t.name, str(subfeed_t.get_shape()))) ValueError: Cannot feed value of shape (25836, 2, 6) for Tensor 'mix_stft:0', which has shape '(?, 2049, 2)'
I'm not exactly sure what this means, as I've mentioned before I'm not familiar with tensor or python (as you might be able to see by my name I'm more JS based).
Any ideas?


Calling ref.on() or ref.once() is not working

In my constructor, I have injected @Inject(FirebaseRef) private ref:Firebase
this.ref.on("value", function(snapshot) {
// does not execute below code
console.log(snapshot);
});

Cordova CLI: 6.0.0
Gulp version:  CLI version 3.9.1
Gulp local:   Local version 3.9.1
Ionic Version: 2.0.0-beta.3
Ionic CLI Version: 2.0.0-beta.22
Ionic App Lib Version: 2.0.0-beta.12
ios-deploy version: Not installed
ios-sim version: 5.0.6
OS: Mac OS X El Capitan
Node Version: v5.9.0
Xcode version: Xcode 7.3 Build version 7D175
"dependencies": {
"angular2": "2.0.0-beta.7",
"angularfire2": "^2.0.0-alpha.10",
"firebase": "^2.4.1",
"es6-promise": "3.0.2",
"es6-shim": "0.33.13",
"ionic-angular": "2.0.0-beta.3",
"ionic-native": "^1.0.12",
"ionicons": "3.0.0-alpha.3",
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.2",
"zone.js": "0.5.15"
},

I'm assuming this.ref is an instance of AngularFire, like below:
export class MyApp {
  constructor(ref: AngularFire) {
    this.ref = ref; // <- ref is of type AngularFire
  }
}

The AngularFire class does not provide direct access to the underlying Firebase reference. I think what you're looking for is FirebaseRef, which provides direct access to Firebase methods like .on() and .once()

@TylerEich Sorry. I miss the declaration.
I have injected the FirebaseRef in my constructor with @Inject(FirebaseRef) private ref:Firebase
And when calling the .on() or .once(), it doesn't execute.

Can you share more code? Maybe a Plunk that demonstrates the problem?

https://plnkr.co/edit/PQc396efOsH8eDqJZjKv?p=info
I couldn't add angularfire2 in plunker for some reason.

Your Plunk's main.ts file doesn't give any providers to the bootstrap() function. You need something like defaultFirebase('https://<your-firebase>.firebaseio.com'). Is that something you left out of the Plunk on purpose?
https://github.com/angular/angularfire2#7-bootstrap

So sorry. I now figured out the my problem My bad =(. It was in the Firebase security I didn't set the rules for the child node. I forgot that by default, child nodes are not accessible until you set the security rules for that node.
Thanks for your help @TylerEich

No worries! Feedback helps a lot during alpha, even if it only makes the docs and errors better 😎👍


#Fix 514 - Remove usage of harfbuzz 1.7.7+ API

This picks up a change in reason-fontkit (https://github.com/revery-ui/reason-fontkit/pull/27) to remove the use of hb_blob_create_from_file for better compatibility with system-installed harfbuzz.
In #514  , it seems that issues are at least partially stemming from our use of that API, which isn't available in the 1.7.2-ish version we saw.
It sounds like based on @CrossR 's trial that this fixed the issue (although, there was potential still an error with copying configuration)
Based on conversation in Discord - sounds like this fixes it!

Is there a way to clear the build cache? Have pulled tip of master to try this out (should build on 18.04 now, right?) but still getting the same error, it's coming up so fast it's likely from cached artifacts.

Hmm, if you're building from source - there may be a different error. The build cache should get invalidated when it sees the new dependency for reason-fontkit (you can force it by deleting the _esy folder at the root of the project, though)!
Would you mind sharing out the error message you are seeing?

Trashed my entire ~/.esy folder - must have had the desired effect because things taking much longer... to get to the next error :-)
info esy build 0.5.8 (using package.json)
File "assets/configuration/dune", line 4, characters 8-18:
4 |  (files setup.json configuration.json keybindings.json))
            ^^^^^^^^^^
Error: No rule found for assets/configuration/setup.json
error: command failed: 'refmterr' 'dune' 'build' '-p' 'Oni2' '-j4' (exited with 1)
esy-build-package: exiting with errors above...
error: build failed with exit code: 1

esy: exiting due to errors above

Ah, that's promising! You'll need to run esy bootstrap now to fix that error 👍

Huzzah! Built.
esy run

... as soon as I open a file with syntax highlighting it dies though.
$ esy test
error: project is not installed, run `esy install`

esy: exiting due to errors above
awilkins@ryoko:~/oni/oni2 (master=)
$ esy install
info install 0.5.8 (using package.json)
awilkins@ryoko:~/oni/oni2 (master=)
$ esy test
error: project is not installed, run `esy install`

esy: exiting due to errors above

That seems a bit odd too.

Ah, you'll also need to build the textmate service: https://onivim.github.io/docs/for-developers/building#build-the-textmate-service
(That same doc also has instructions for running tests / benchmarks)

Amazing what you can do when you actually read the docs... can confirm that all builds and runs nicely on Ubuntu 18.04 for me now.

@awilkins - awesome! Glad its working for you 👍