use SelectorCache for communicating mapping of FQDN to IPs instead of policy repository

This PR uses the SelectorCache for storing the mapping of FQDNs to the IPs which match said FQDNs. These IPs are resolved via DNS lookups for both the poller and DNS proxy. Rules are not used to convey this information anymore. The FQDN subsystem is only notified of whether it needs to care about a given FQDNSelector if there is an endpoint which utilizes said selector running on the local cilium-agent.
Signed-off by: Ian Vernon<EMAIL_ADDRESS>Miscellaneous thoughts:
I think this is ready for merge. I still need to go through and remove old references to CIDR rules, etc. We may want to rename RuleGen to something else since it doesn't really generate rules anymore.

This change is

test-me-please

Coverage decreased (-0.5%) to 41.251% when pulling 63aaac7713407cc1175f94c3aee8af8e4e1c01a5 on pr/ianvernon/fqdn-plumbing-selectorcache-final-2 into c05477469de2890449efcf5418f88c61eddaa947 on master.

@jrajahalme AFAICT from your initial overall review comment, I think you are OK with how I have implemented this given your follow-up comment?
The intent is that the DNS subsystem is only aware about selectors which are being utilized in policy by endpoints running locally. When the DNS proxy receives a DNS request, it will update the SelectorCache within the policy repository for all selectors that matched the request with the set of IPs that correspond to said request.
Would you recommend that calls to update an FQDNSelector do not actually add it to the cache? I think that is reasonable. This would help with the "issue with the DNS subsystem issuing UpdateFQDNSelector() calls also after RemoveSelector() has removed the last use of the fqdn selector? It seems unlikely that the dns subsystem would issue updates for a selector it does not know about yet (update before AddFQDNSelector())".
I've addressed your other comments from the review, PTAL.

test-me-please

An interrupt got sent to the build, not sure why: https://jenkins.cilium.io/job/Cilium-PR-Ginkgo-Tests-Validated/12846/
Running again.

test-me-please

test-me-please

test-me-please

Looks like a unit-test flake on the Travis build: https://travis-ci.com/cilium/cilium/builds/115019997.
Log below, this only happened for Consul, not for etcd, so must be some kind of a race condition in caching a selectorPolicy for a new endpoint in the PolicyCache:
level=info msg="Distributed lock successful, consul has quorum" subsys=kvstore
level=info msg="Allocating key" key="[unspec:QA unspec:bar]" subsys=allocator
level=info msg="regenerating all endpoints due to one or more identities created or deleted" subsys=endpoint-manager
level=info msg="Allocated new global key" key="dW5zcGVjOlFBPTt1bnNwZWM6YmFyPTs=" subsys=allocator
level=info msg="Allocating key" key="[unspec:QA unspec:foo]" subsys=allocator
level=info msg="Allocated new global key" key="dW5zcGVjOlFBPTt1bnNwZWM6Zm9vPTs=" subsys=allocator
level=info msg="Policy Add Request" ciliumNetworkPolicy="[&{EndpointSelector:{\"matchLabels\":{\"unspec:bar\":\"\"}} Ingress:[{FromEndpoints:[] FromRequires:[] ToPorts:[{Ports:[{Port:80 Protocol:TCP}] Rules:<nil>}] FromCIDR:[] FromCIDRSet:[] FromEntities:[]} {FromEndpoints:[{\"matchLabels\":{\"unspec:foo\":\"\"}}] FromRequires:[] ToPorts:[{Ports:[{Port:80 Protocol:TCP}] Rules:0x4ffb1c0}] FromCIDR:[] FromCIDRSet:[] FromEntities:[]}] Egress:[] Labels:[] Description:}]" policyAddRequest=b5d9d990-8be3-11e9-a4cd-42010a1e027f subsys=daemon
level=info msg="Policy imported via API, recalculating..." policyAddRequest=b5d9d990-8be3-11e9-a4cd-42010a1e027f policyRevision=6 subsys=daemon
level=info msg="Identity of endpoint changed" containerID= datapathPolicyRevision=0 desiredPolicyRevision=0 endpointID=1 identity=30756 identityLabels="unspec:QA,unspec:bar" ipv4= ipv6= k8sPodName=/ oldIdentity="no identity" subsys=endpoint
level=warning msg="Failed to update policy" containerID= datapathPolicyRevision=0 desiredPolicyRevision=0 endpointID=1 error="SelectorPolicy not found in cache for ID 30756" identity=30756 ipv4= ipv6= k8sPodName=/ subsys=endpoint
level=warning msg="generating BPF for endpoint failed, keeping stale directory." containerID= datapathPolicyRevision=0 desiredPolicyRevision=0 endpointID=1 file-path=1_next_fail identity=30756 ipv4= ipv6= k8sPodName=/ subsys=endpoint
level=warning msg="Regeneration of endpoint failed" bpfCompilation=0s bpfLoadProg=0s bpfWaitForELF=0s bpfWriteELF=0s buildDuration="218.983µs" containerID= datapathPolicyRevision=0 desiredPolicyRevision=0 endpointID=1 error="Unable to regenerate policy: SelectorPolicy not found in cache for ID 30756" identity=30756 ipv4= ipv6= k8sPodName=/ mapSync=0s policyCalculation=0s prepareBuild="40.134µs" proxyConfiguration=0s proxyPolicyCalculation=0s proxyWaitForAck=0s reason=test subsys=endpoint waitingForCTClean=0s waitingForLock="1.596µs"
level=error msg="endpoint regeneration failed" containerID= datapathPolicyRevision=0 desiredPolicyRevision=0 endpointID=1 error="Unable to regenerate policy: SelectorPolicy not found in cache for ID 30756" identity=30756 ipv4= ipv6= k8sPodName=/ subsys=endpoint
level=info msg="regenerating all endpoints due to one or more identities created or deleted" subsys=endpoint-manager
level=info msg="Releasing key" key="[unspec:QA unspec:foo]" subsys=allocator
level=info msg="Released last local use of key, invoking global release" key="[unspec:QA unspec:foo]" subsys=allocator
level=info msg="Releasing key" key="[unspec:QA unspec:bar]" subsys=allocator
level=info msg="Released last local use of key, invoking global release" key="[unspec:QA unspec:bar]" subsys=allocator
level=warning msg="Received delete event for local key. Re-creating the key in the kvstore" eventType=delete key=cilium/state/nodes/v1/default/travis-job-48a954dc-3671-4691-8157-b0704b114ad7 storeName=store-cilium/state/nodes/v1 subsys=shared-store
level=warning msg="Received delete event for local key. Re-creating the key in the kvstore" eventType=delete key=cilium/state/nodes/v1/default/travis-job-48a954dc-3671-4691-8157-b0704b114ad7 storeName=store-cilium/state/nodes/v1 subsys=shared-store
level=warning msg="Received delete event for local key. Re-creating the key in the kvstore" eventType=delete key=cilium/state/nodes/v1/default/travis-job-48a954dc-3671-4691-8157-b0704b114ad7 storeName=store-cilium/state/nodes/v1 subsys=shared-store
level=warning msg="Received delete event for local key. Re-creating the key in the kvstore" eventType=delete key=cilium/state/nodes/v1/default/travis-job-48a954dc-3671-4691-8157-b0704b114ad7 storeName=store-cilium/state/nodes/v1 subsys=shared-store

----------------------------------------------------------------------
FAIL: <autogenerated>:1: DaemonConsulSuite.TestL4_L7_Shadowing

policy_test.go:149:
    c.Assert(buildSuccess, Equals, true)
... obtained bool = false
... expected bool = true

Requested Travis to re-run the unit tests.

test-me-please

VM booting got stuck: https://jenkins.cilium.io/job/Cilium-PR-Ginkgo-Tests-Validated/12965/execution/node/88/log/

test-me-please

test-me-please

test-me-please

@joestringer I have addressed all of your comments in various follow-up commits, starting with https://github.com/cilium/cilium/pull/8117/commits/7d4d396783236a1c748d7442075a41c157d2ffca to make reviewing easier. Once I get approving reviews, I will fold these commits accordingly.

test-me-please

@aanm addressed your comments as follow-up commits.

test-me-please

Rebased to make commits more manageable. Once this passes, I will merge, given that I have addressed @aanm's comments, which are self-evident. The change on the API side is merely in the policy/api package, it does not affect the actual policy API.

VM provisioning failed https://jenkins.cilium.io/job/Cilium-PR-Ginkgo-Tests-Validated/13041/execution/node/88/log/

test-me-please

test-me-please

test-me-please


CONTRIBUTING.md spelling errors

lines 11 and 19: assp to asap
lines 11 and 19: exit to exists
line 28: Lapce contributors to Lapce's contributors

#397 fixes this issue. I really love this editor!


App for applying CA on Dynamics 365

Is the Common Data Service app still the right app? This does not seem to be an option in the list of apps to assign CA policies to.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 003fe16c-7cf4-14c6-09f2-7b18b047cbf7
Version Independent ID: 3c7059c0-3aff-2729-42a7-88c4e7de0157
Content: Block access by location with Azure AD Conditional Access - Power Platform
Content Source: power-platform/admin/restrict-access-online-trusted-ip-rules.md
Service: power-platform
GitHub Login: @jimholtz
Microsoft Alias: jimholtz

@jagustin19
Sorry for the delayed response. Please reopen if this is still a question.


[Fit&Finish] update query compare card icon

Description
update query compare card icon to latest one
Before:

After:

Issues Resolved
List any issues this PR will resolve, e.g. Closes [...].
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

CI failure due to actions/upload-artifact: v1 been deprecated

Error: This request has been automatically failed because it uses a deprecated version of actions/upload-artifact: v1. Learn more: https://github.blog/changelog/2024-02-13-deprecation-notice-v1-and-v2-of-the-artifact-actions/


Remove configmap of web

What was changed

Why?

Checklist

Closes

How was this tested:

Any docs updates needed?

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

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

Thank you for the contribution! please sign our CLA if you would like us to accept your PRs. For now, the core problem has been solved via https://github.com/temporalio/helm-charts/pull/341 - is there a separate need to not create a volume for a web config?


Type safety between deviceId and devicePtr

It would be helpful to have type safety between deviceId and devicePtr since it is very easy to pass in the wrong one

Makes sense. On the TODO list.

Internally in GHSAFM, we could use Kotlin value classes
@JvmInline
value class DeviceId(val value: Long)

@JvmInline
value class DevicePointer(val value: Long)


chore: adopt kubernetes recommand label

Adopt kubernetes recommand label
ref: https://github.com/kubernetes-csi/external-snapshotter/pull/844

/ok-to-test
/lgtm

@nixpanic all tests passed, ptal~

/lgtm
I think you need to add a release note section in the initial PR description. Once that is done, the do-not-merge/release-note-needed label should be removed, and you can assign this PR to one of the maintainers for approval.

okay, thank you very much!

@xing-yang ptal~

Can you apply this change in ttps://github.com/kubernetes-csi/external-snapshotter/pull/844?

Can you apply this change in ttps://github.com/kubernetes-csi/external-snapshotter/pull/844?

okay, I'm not familiar with subtree development, do I need to switch subtree branches in external-snapshotter or just paste the changes in?

/lgtm
/approve


Update submit an issue to the team link on functions-bindings-event-grid-trigger.md

@ggailey777
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

Thanks @kendaleiv! #sign-off


Unable to play sound due to api loading fail.

Do I need to configure anything like API key?

Detail response content is:
{"errors":[{"meta":{"rate_limit":{"bucket":"by-client","max_nr_of_requests":15000,"time_window":"PT24H","name":"plays"},"remaining_requests":0,"reset_time":"2017/10/30 20:10:21 +0000"}}]}
BTW, i am running in dev mode.

IIRC SoundCloud limits the number of requests/day for each API key. The default API key provided in this repo is being over used. You can get your own API key via the SoundCloud Developer site.

Looks like soundcloud doesn't allow creating new apps any more.
Any idea on how to get a new API key?

AFAIK I think that's the only way. TBH I'm not sure how much longer SoundCloud is going to be around, or how much longer it will remain free.


compatibility Jobs Reborn

Hi guys.
is possible update the plugin "jobs v2.12.0" that no longer updated more
http://dev.bukkit.org/bukkit-plugins/jobs/
to the plugin "Jobs reborn"
http://dev.bukkit.org/bukkit-plugins/jobs-reborn/
since loading the plugin "Jobs reborn" the depenizen plugin gives errors for some reason :(
thanks for watching and sorry for my bad english.

I think this was fixed :)

Yup!


Custom Backbone

Hi, I was wondering if you could provide an example of using/implementing the custom backbone/model, that is not available in the package. I would also appreciate if you could point out some literature or explain where and how the backbone is plugged into the U-net.
I realize that the backbone works as a feature extractor, but if we wanted to create the diagram showing the U-Net architecture with the backbone plugged in, how would it look like ?
Thank you very much for any guidance.

You could create a model with whichever encoder and then have it output the diagram of the graph


Unable to increase memory_limit beyond 512M (in Drupal)

Preliminary checklist

[X] I am using the latest stable version of DDEV (see upgrade guide)
[X] I have searched existing issues
[X] I have checked the troubleshooting guide
[X] I have run ddev debug test to include output below

Output of ddev debug test
Expand `ddev debug test` diagnostic information

======== Please make sure that you have already looked at troubleshooting guide ========
Troubleshooting guide: https://ddev.readthedocs.io/en/stable/users/usage/troubleshooting/
Simple things to check:
* ddev poweroff
* Restart Docker Provider
* Reboot computer
* Temporarily disable VPN and firewall
Press any key to continue:

======== Output file will be in /var/folders/mw/_p1cl_rx69b3ll553w9cdvcc0000gn/T/ddev-debug-test.txt ========

======== Existing project config ========
ddev installation alternate locations:
/usr/local/bin/ddev
/usr/local/bin/ddev

These config files were loaded for project emerisa: [/Users/jlampton/Sites/emerisa/drupal/.ddev/config.yaml]
name: emerisa
type: drupal7
docroot: docroot
php_version: 7.4
webserver_type: nginx-fpm
webimage: ddev/ddev-webserver:v1.23.2
additional_hostnames: []
additional_fqdns: []
database: {mariadb 10.11}
project_tld: ddev.site
use_dns_when_possible: true
composer_version: 2
nodejs_version: 20
default_container_timeout: 120

======== existing project customizations ========

======== installed DDEV add-ons ========
No registered add-ons were found. Add-ons installed before DDEV v1.22.0 will not be listed.
Update them with `ddev get` so they'll be shown.

======== mutagen situation ========
looking for #ddev-generated in mutagen.yml in project /Users/jlampton/Sites/emerisa/drupal
#ddev-generated
unmodified #ddev-generated found in .ddev/mutagen/mutagen.yml

======== Creating dummy project named tryddevproject-2594 in ../tryddevproject-2594 ========
Creating a new DDEV project config in the current directory (/Users/jlampton/Sites/emerisa/tryddevproject-2594)
Once completed, your configuration will be written to /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/config.yaml

Configuring a 'php' project named 'tryddevproject-2594' with docroot 'web' at '/Users/jlampton/Sites/emerisa/tryddevproject-2594/web'.
For full details use 'ddev describe'.
Configuration complete. You may now run 'ddev start'.

======== OS Information ========
Darwin MacBook-Pro.local 23.5.0 Darwin Kernel Version 23.5.0: Wed May  1 20:12:58 PDT 2024; root:xnu-10063.121.3~5/RELEASE_ARM64_T6000 arm64
ProductName:		macOS
ProductVersion:		14.5
BuildVersion:		23F79

======== User information ========
uid=501(jlampton) gid=20(staff) groups=20(staff),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),701(com.apple.sharepoint.group.1),33(_appstore),100(_lpoperator),204(_developer),250(_analyticsusers),395(com.apple.access_ftp),398(com.apple.access_screensharing),399(com.apple.access_ssh),400(com.apple.access_remote_ae)

======== DDEV version ========
 ITEM             VALUE
 DDEV version     v1.23.2
 architecture     arm64
 cgo_enabled      0
 db               ddev/ddev-dbserver-mariadb-10.11:v1.23.2
 ddev-ssh-agent   ddev/ddev-ssh-agent:v1.23.2
 docker           27.0.3
 docker-api       1.46
 docker-compose   v2.27.0
 docker-platform  docker-desktop
 global-ddev-dir  /Users/jlampton/.ddev
 mutagen          0.17.2
 os               darwin
 router           ddev/ddev-traefik-router:v1.23.2
 web              ddev/ddev-webserver:v1.23.2

======== proxy settings ========

 HTTP_PROXY=''
 HTTPS_PROXY=''
 http_proxy=''
 NO_PROXY=''

======== DDEV global info ========
developer-mode=false
disable-http2=false
fail-on-hook-fail=false
instrumentation-opt-in=true
instrumentation-queue-size=0
instrumentation-reporting-interval=0s
instrumentation-user=
internet-detection-timeout-ms=3000
last-started-version=v1.23.2
letsencrypt-email=
mailpit-http-port=8025
mailpit-https-port=8026
mkcert-caroot=/Users/jlampton/Library/Application Support/mkcert
no-bind-mounts=false
omit-containers=[]
performance-mode=mutagen
project-tld=ddev.site
required-docker-compose-version=v2.27.0
router=traefik
router-bind-all-interfaces=false
router-http-port=80
router-https-port=443
simple-formatting=false
table-style=bright
traefik-monitor-port=10999
use-docker-compose-from-path=false
use-hardened-images=false
use-letsencrypt=false
wsl2-no-windows-hosts-mgt=false
xdebug-ide-location=

======== DOCKER provider info ========
docker client location: lrwxr-xr-x  1 jlampton  staff  54 Jul 26 14:40 /Users/jlampton/.docker/bin/docker -> /Applications/Docker.app/Contents/Resources/bin/docker

docker client alternate locations:
/Users/jlampton/.docker/bin/docker

Docker provider: docker-desktop
Docker Desktop Version: Docker Desktop for Mac 4.32.0 build 157355
docker version:
Client:
 Version:           27.0.3
 API version:       1.46
 Go version:        go1.21.11
 Git commit:        7d4bcd8
 Built:             Fri Jun 28 23:59:41 2024
 OS/Arch:           darwin/arm64
 Context:           default

Server: Docker Desktop 4.32.0 (157355)
 Engine:
  Version:          27.0.3
  API version:      1.46 (minimum version 1.24)
  Go version:       go1.21.11
  Git commit:       662f78c
  Built:            Sat Jun 29 00:02:44 2024
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.7.18
  GitCommit:        ae71819c4f5e67bb4d5ae76a6b735f29cc25774e
 runc:
  Version:          1.7.18
  GitCommit:        v1.1.13-0-g58aa920
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

DOCKER_DEFAULT_PLATFORM=notset
Docker platform: docker-desktop
Using Docker context: default (unix:///Users/jlampton/.docker/run/docker.sock)
docker-compose: v2.27.0
Using DOCKER_HOST=unix:///Users/jlampton/.docker/run/docker.sock
Docker version: 27.0.3
Able to run simple container that mounts a volume.
Able to use internet inside container.
Docker disk space:Filesystem                Size      Used Available Use% Mounted on
overlay                 227.0G     51.9G    163.6G  24% /

======== Existing docker containers ========
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

======== mkcert information ========
/opt/homebrew/bin/mkcert
/opt/homebrew/bin/mkcert
/usr/local/bin/mkcert
/usr/local/bin/mkcert
/Users/jlampton/Library/Application Support/mkcert
total 16
-r--------  1 jlampton  staff  2484 Mar 11 19:42 rootCA-key.pem
-rw-r--r--  1 jlampton  staff  1826 Mar 11 19:42 rootCA.pem

======== ping attempt on ddev.site ========
PING dkdkd.ddev.site (<IP_ADDRESS>): 56 data bytes
64 bytes from <IP_ADDRESS>: icmp_seq=0 ttl=64 time=0.058 ms

--- dkdkd.ddev.site ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.058/0.058/0.058/nan ms

======== ddev debug refresh ========
Rebuilding project images...
Rebuilding web image with `/Users/jlampton/.ddev/bin/docker-compose -f /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/.ddev-docker-compose-full.yaml build web --no-cache`
#0 building with "default" instance using docker driver

#1 [web internal] load build definition from Dockerfile
#1 transferring dockerfile: 1.25kB done
#1 DONE 0.0s

#2 [web internal] load metadata for docker.io/ddev/ddev-webserver:v1.23.2
#2 DONE 0.0s

#3 [web internal] load .dockerignore
#3 transferring context: 2B done
#3 DONE 0.0s

#4 [web 1/7] FROM docker.io/ddev/ddev-webserver:v1.23.2
#4 CACHED

#5 [web 2/7] RUN (groupadd --gid 20 "jlampton" || groupadd "jlampton" || true) && (useradd  -l -m -s "/bin/bash" --gid "jlampton" --comment '' --uid 501 "jlampton" || useradd  -l -m -s "/bin/bash" --gid "jlampton" --comment '' "jlampton" || useradd  -l -m -s "/bin/bash" --gid "20" --comment '' "jlampton" || useradd -l -m -s "/bin/bash" --comment '' jlampton )
#5 0.106 groupadd: GID '20' already exists
#5 0.135 useradd warning: jlampton's uid 501 outside of the UID_MIN 1000 and UID_MAX 60000 range.
#5 DONE 0.2s

#6 [web 3/7] RUN export XDEBUG_MODE=off; composer self-update --stable || composer self-update --stable || true; composer self-update --2 || composer self-update --2 || true
#6 0.276 Storing "stable" as default update channel for the next self-update run.
#6 0.902 You are already using the latest available Composer version 2.7.7 (stable channel).
#6 1.523 You are already using the latest available Composer version 2.7.7 (2.x channel).
#6 DONE 1.6s

#7 [web 4/7] RUN mkdir -p /home/jlampton && chown jlampton /home/jlampton && chmod 600 /home/jlampton/.pgpass
#7 DONE 0.1s

#8 [web 5/7] RUN apt-get update
#8 0.481 Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
#8 0.743 Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
#8 0.834 Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
#8 0.834 Get:4 https://packages.sury.org/php bookworm InRelease [7548 B]
#8 0.835 Get:5 https://deb.nodesource.com/node_20.x nodistro InRelease [12.1 kB]
#8 0.923 Get:6 http://deb.debian.org/debian bookworm/main arm64 Packages [8688 kB]
#8 0.924 Get:7 https://deb.nodesource.com/node_20.x nodistro/main arm64 Packages [8731 B]
#8 0.981 Get:8 https://packages.sury.org/php bookworm/main arm64 Packages [236 kB]
#8 1.018 Get:10 https://dl.cloudsmith.io/public/platformsh/cli/deb/debian bookworm InRelease [3675 B]
#8 1.200 Get:11 http://nginx.org/packages/debian bookworm InRelease [2869 B]
#8 1.215 Get:12 https://dl.cloudsmith.io/public/platformsh/upsun-cli/deb/debian bookworm InRelease [3681 B]
#8 1.398 Get:14 https://dl.cloudsmith.io/public/symfony/stable/deb/debian bookworm InRelease [4422 B]
#8 1.464 Get:15 http://nginx.org/packages/debian bookworm/nginx arm64 Packages [14.3 kB]
#8 1.601 Get:16 https://dl.cloudsmith.io/public/platformsh/cli/deb/debian bookworm/main arm64 Packages [3887 B]
#8 1.674 Get:17 https://dl.cloudsmith.io/public/platformsh/upsun-cli/deb/debian bookworm/main arm64 Packages [2878 B]
#8 1.760 Get:18 https://dl.cloudsmith.io/public/symfony/stable/deb/debian bookworm/main arm64 Packages [7465 B]
#8 1.776 Get:9 https://dlm.mariadb.com/repo/mariadb-server/10.11/repo/debian bookworm InRelease [4625 B]
#8 1.927 Get:13 https://dlm.mariadb.com/repo/maxscale/latest/apt bookworm InRelease [9341 B]
#8 2.284 Get:19 https://dlm.mariadb.com/repo/mariadb-server/10.11/repo/debian bookworm/main arm64 Packages [34.4 kB]
#8 2.552 Get:20 https://dlm.mariadb.com/repo/mariadb-server/10.11/repo/debian bookworm/main amd64 Packages [40.9 kB]
#8 3.048 Get:21 https://dlm.mariadb.com/repo/maxscale/latest/apt bookworm/main arm64 Packages [554 B]
#8 3.369 Get:22 https://dlm.mariadb.com/repo/maxscale/latest/apt bookworm/main amd64 Packages [553 B]
#8 3.722 Get:23 http://deb.debian.org/debian bookworm-updates/main arm64 Packages [13.7 kB]
#8 3.803 Get:24 http://deb.debian.org/debian-security bookworm-security/main arm64 Packages [167 kB]
#8 4.578 Fetched 9520 kB in 4s (2150 kB/s)
#8 4.578 Reading package lists...
#8 DONE 5.0s

#9 [web 6/7] RUN curl -I https://www.google.com
#9 0.113   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
#9 0.113                                  Dload  Upload   Total   Spent    Left  Speed
#9 0.113
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
#9 0.360 HTTP/2 200
#9 0.360 content-type: text/html; charset=ISO-8859-1
#9 0.360 content-security-policy-report-only: object-src 'none';base-uri 'self';script-src 'nonce-LeaJ9uWFH1WBVINZHoLPKg' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
#9 0.360 p3p: CP="This is not a P3P policy! See g.co/p3phelp for more info."
#9 0.360 date: Fri, 16 Aug 2024 22:43:46 GMT
#9 0.360 server: gws
#9 0.360 x-xss-protection: 0
#9 0.360 x-frame-options: SAMEORIGIN
#9 0.360 expires: Fri, 16 Aug 2024 22:43:46 GMT
#9 0.360 cache-control: private
#9 0.360 set-cookie: AEC=AVYB7coRPC2FPFNSEcf11_iJIqpBZgL7_Jy2dxhtqjVeCCRhRN-7tnvJgQ; expires=Wed, 12-Feb-2025 22:43:46 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax
#9 0.360 set-cookie: NID=516=U6xrdkx9JjH0JTQc8fz0B1oGWKsWCVWUedcMP5Omo9YDEyFkg_NDGq_gJFV-gienfWvg6-M9KnmIeH-ZxOAK0eLrBoe0wRqwcIFE0qXLgsMphFmJwpL-B4y9-KkLxORIRnz4Xb3dBsb6zJmw-f2Q2ydE3Qs90_YTQU317Azw4ql6zumzQPuDsA; expires=Sat, 15-Feb-2025 22:43:46 GMT; path=/; domain=.google.com; HttpOnly
#9 0.360 alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
#9 0.360
#9 DONE 0.4s

#10 [web 7/7] RUN chmod 777 /run/php
#10 DONE 0.1s

#11 [web] exporting to image
#11 exporting layers 0.1s done
#11 writing image sha256:07924bcf7d9c434234b3c82a9d0b5c995e05899c050cf9c12d3808397f282274 done
#11 naming to docker.io/ddev/ddev-webserver:v1.23.2-tryddevproject-2594-built done
#11 DONE 0.1s
Refreshed Docker cache for project tryddevproject-2594 in 8s
Network ddev_default created
 Container ddev-ssh-agent  Created
 Container ddev-ssh-agent  Started
ssh-agent container is running: If you want to add authentication to the ssh-agent container, run 'ddev auth ssh' to enable your keys.
Building project images...
.Project images built in 1s.
 Network ddev-tryddevproject-2594_default  Created
 Container ddev-tryddevproject-2594-db  Created
 Container ddev-tryddevproject-2594-web  Created
 Container ddev-tryddevproject-2594-web  Started
 Container ddev-tryddevproject-2594-db  Started
Starting Mutagen sync process...
Mutagen sync flush completed in 1s.
For details on sync status 'ddev mutagen st tryddevproject-2594 -l'
Waiting for containers to become ready: [web db]
Starting ddev-router if necessary...
 Container ddev-router  Created
 Container ddev-router  Started
Waiting for additional project containers to become ready...
All project containers are now ready.

======== Project startup ========
Starting tryddevproject-2594...
2024-08-16T15:44:10.42 Pulled image for ddev/ddev-webserver:v1.23.2
2024-08-16T15:44:10.421 Pulled image for busybox:stable
2024-08-16T15:44:10.422 Pulled image for ddev/ddev-ssh-agent:v1.23.2
2024-08-16T15:44:10.423 Pulled image for ddev/ddev-traefik-router:v1.23.2
2024-08-16T15:44:10.685 GetDockerContext: contextInfo='default unix:///Users/jlampton/.docker/run/docker.sock'
2024-08-16T15:44:10.685 Using Docker context default (unix:///Users/jlampton/.docker/run/docker.sock)
2024-08-16T15:44:11.001 chowning /mnt/ddev-global-cache and /var/lib/mysql to 501
2024-08-16T15:44:11.304 done chowning /mnt/ddev-global-cache and /var/lib/mysql to 501
2024-08-16T15:44:11.312 host.docker.internal='' because no other case was discovered
2024-08-16T15:44:11.408 Pulled image for ddev/ddev-webserver:v1.23.2
2024-08-16T15:44:11.412 Pulled image for ddev/ddev-dbserver-mariadb-10.11:v1.23.2
2024-08-16T15:44:11.415 Pulled image for ddev/ddev-ssh-agent:v1.23.2
2024-08-16T15:44:11.418 Pulled image for ddev/ddev-traefik-router:v1.23.2
Building project images...
2024-08-16T15:44:11.42 Executing docker-compose -f /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/.ddev-docker-compose-full.yaml build --progress=plain
.Project images built in 1s.
2024-08-16T15:44:12.423 Executing docker-compose -f /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/.ddev-docker-compose-full.yaml up -d
 Container ddev-tryddevproject-2594-db  Recreate
 Container ddev-tryddevproject-2594-web  Recreate
 Container ddev-tryddevproject-2594-db  Recreated
 Container ddev-tryddevproject-2594-web  Recreated
 Container ddev-tryddevproject-2594-db  Started
 Container ddev-tryddevproject-2594-web  Started
2024-08-16T15:44:23.096 VIRTUAL_HOST=tryddevproject-2594.ddev.site for web
2024-08-16T15:44:23.096 HTTP_EXPOSE=80:80,8025:8025 for web
2024-08-16T15:44:23.096 HTTPS_EXPOSE=443:80,8026:8025 for web
2024-08-16T15:44:23.471 Copied /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/traefik:CopyIntoVolume_vtqfrmvfpxlc into /mnt/v/traefik in 41.782916ms
2024-08-16T15:44:23.504 Exec chown -R 501 /mnt/v/traefik stdout=, stderr=, err=<nil>
2024-08-16T15:44:23.604 Copied Traefik certs in /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/traefik/certs to ddev-global-cache/traefik
Starting Mutagen sync process...
2024-08-16T15:44:23.69 Using Mutagen config file /Users/jlampton/Sites/emerisa/tryddevproject-2594/.ddev/mutagen/mutagen.yml
2024-08-16T15:44:24.7 Mutagen status after sync: ok
Mutagen sync flush completed in 1s.
For details on sync status 'ddev mutagen st tryddevproject-2594 -l'
2024-08-16T15:44:24.701 Running /start.sh in ddev-webserver
Waiting for containers to become ready: [web db]
2024-08-16T15:44:28.118 Copied /Users/jlampton/.ddev/commands:CopyIntoVolume_divtfqvvcrmx into /mnt/v/global-commands in 56.281125ms
2024-08-16T15:44:28.149 Exec chown -R 501 /mnt/v/global-commands stdout=, stderr=, err=<nil>
2024-08-16T15:44:28.358 Testing to see if /mnt/ddev_config is properly mounted
Starting ddev-router if necessary...
2024-08-16T15:44:28.899 Copied /Users/jlampton/.ddev/traefik:CopyIntoVolume_olrqoxcfyntl into /mnt/v/traefik in 42.247292ms
2024-08-16T15:44:28.932 Exec chown -R 501 /mnt/v/traefik stdout=, stderr=, err=<nil>
2024-08-16T15:44:29.062 Copied global Traefik config in /Users/jlampton/.ddev/traefik/certs to ddev-global-cache/traefik
 Container ddev-router  Running
2024-08-16T15:44:29.139 Waiting for ddev-router to become ready. docker inspect --format "{{json .State.Health }}" ddev-router
2024-08-16T15:44:29.644 ddev-router is ready
Waiting for additional project containers to become ready...
All project containers are now ready.
Successfully started tryddevproject-2594
Project can be reached at https://tryddevproject-2594.ddev.site https://<IP_ADDRESS>:51744

======== Curl of site from inside container ========
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/1.1 200 OK
Server: nginx
Date: Fri, 16 Aug 2024 22:44:31 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

======== curl -I of http://<IP_ADDRESS>:51745 (web container http docker bind port) from outside ========
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 16 Aug 2024 22:44:31 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding

======== curl -I of http://tryddevproject-2594.ddev.site (router http URL) from outside ========
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Date: Fri, 16 Aug 2024 22:44:31 GMT
Server: nginx
Vary: Accept-Encoding

======== Full curl of http://tryddevproject-2594.ddev.site (router http URL) from outside ========
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   286    0   286    0     0  27595      0 --:--:-- --:--:-- --:--:-- 28600
Success accessing database... db via TCP/IP<br />
ddev is working.<br />
The output file for Discord or issue queue is in
<b>/var/folders/mw/_p1cl_rx69b3ll553w9cdvcc0000gn/T/ddev-debug-test.txt</b><br />
file:///var/folders/mw/_p1cl_rx69b3ll553w9cdvcc0000gn/T/ddev-debug-test.txt<br />

======== Full curl of https://tryddevproject-2594.ddev.site (router https URL) from outside ========
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   286    0   286    0     0   7372      0 --:--:-- --:--:-- --:--:--  7526
Success accessing database... db via TCP/IP<br />
ddev is working.<br />
The output file for Discord or issue queue is in
<b>/var/folders/mw/_p1cl_rx69b3ll553w9cdvcc0000gn/T/ddev-debug-test.txt</b><br />
file:///var/folders/mw/_p1cl_rx69b3ll553w9cdvcc0000gn/T/ddev-debug-test.txt<br />

======== Curl google.com to check internet access and VPN ========
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
HTTP/2 200
content-type: text/html; charset=ISO-8859-1
content-security-policy-report-only: object-src 'none';base-uri 'self';script-src 'nonce-gBRv5JdobNrFbYLI_pg0Vg' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
p3p: CP="This is not a P3P policy! See g.co/p3phelp for more info."
date: Fri, 16 Aug 2024 22:44:32 GMT
server: gws
x-xss-protection: 0
x-frame-options: SAMEORIGIN
expires: Fri, 16 Aug 2024 22:44:32 GMT
cache-control: private
set-cookie: AEC=AVYB7coT6uxBsyYsPrUpqZA5plkLcIqHckUZmEKTT4sA5gSu4JpF0mYVAA; expires=Wed, 12-Feb-2025 22:44:32 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax
set-cookie: NID=516=Hx8SamERCt0FXowpZz51345fBY7_EuYZKBJ420k2EQlnAxpoYQ120JHrpGE7WhoJ8tFlm_nVXjyj7nJtzHCeYl_NZc52p6IUZ_hw7BV1K54ASAtXZ1JxOU9kzAeg-AfjkElL-gWrhhcqCz2HEZ9Kzna1d2XRlWPg41VcZQrDb2Xuj1Eplyv1; expires=Sat, 15-Feb-2025 22:44:32 GMT; path=/; domain=.google.com; HttpOnly
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000

======== host.docker.internal status ========
PING host.docker.internal (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS> (<IP_ADDRESS>): icmp_seq=1 ttl=63 time=0.229 ms

--- host.docker.internal ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.229/0.229/0.229/0.000 ms

======== Project ownership on host ========
drwxr-xr-x  4 jlampton  staff  128 Aug 16 15:43 ../tryddevproject-2594

======== Project ownership in container ========
drwxr-xr-x 4 jlampton dialout 4096 Aug 16 22:43 //var/www/html

======== In-container filesystem ========
Filesystem     Type 1K-blocks     Used Available Use% Mounted on
/dev/vda1      ext4 238062628 54532892 171404044  25% /var/www

======== Thanks for running the diagnostic! ========

Expected Behavior
Setting the PHP memory_limit in ddev should result in that memory_limit being used by Drupal and drush.
Actual Behavior
Drupal and drush both seem to have the memory_limit hard-coded to 512M regardless of what is changed in ddev
Steps To Reproduce
Any of the following should result in a memory_limit change for Drupal and drush.

Addini_set() in settings.php
Override .user.ini
Add .ddev/conf/php/memory_limit.ini
Add a post-start: hook into .ddev/conf.yaml as per https://github.com/ddev/ddev/issues/1825#issuecomment-529964728
use ddev ssh and manually edit /etc/php/7.4/cli/php.ini

Anything else?
I'm trying to increase the PHP memory_limit to 1024M so that I can test a very large and complex feeds import. I'm getting an error indicating that my memory_limit is set to 512M regardless of what I change. I read that the default value for ddev was 1G. I'm guessing that there is something somewhere that is forcing this limit of 512M for Drupal and Drush, and I cannot find it it for the life of me.

I get the error when running the import via the Drupal UI
I get the same error when running the command via ddev drush feeds-import

Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 20480 bytes) in /var/www/html/docroot/modules/field/modules/field_sql_storage/field_sql_storage.module on line 438

I have tried to adjust the memory_limit in the following ways:

Added ini_set() in settings.php (this may be another issue)
Overwrote .user.ini
Added .ddev/conf/php/memory_limit.ini
Added a post-start: hook into .ddev/conf.yaml as per https://github.com/ddev/ddev/issues/1825#issuecomment-529964728
tried ddev ssh and manually edited /etc/php/7.4/cli/php.ini

I have confirmed the following:

512 is nowhere in .ddev directory
The memory_limit.ini file and the .user.ini files are both showing in "Additional .ini files parsed" on phpinfo() output from Drupal.
Drupal status report shows PHP memory limit is 512M.
phpinfo()as called from Drupal shows memory_limit has Master Value' of 1024MbutLocal Valueof512M` :(
phpinfo()as called from a test.php file located in the Drupal docroot shows memory_limit has Master Value' of 1024MANDLocal Valueof1024M` -- I expect this from steps 2 and 3

If Drupal is the problem, I thought I'd find something inside drupal, so...

512 is nowhere in the drupal codebase
all modules that could set a memory_limit have been disabled and removed (xmlsitemap, webform, backup_migrade, etc)
I did fresh install of Drupal core only, but still see 512M in the status report.

From the command line I get:

ddev php -i | grep "memory_limit"
memory_limit => -1 => -1

I expect this from attempt no 4

ddev drush php-eval 'print ini_get("memory_limit") . "\n";'
512M

Why is drush showing a different PHP memory_limit than php, and where on earth is this coming from?

I was thinking that maybe I could look at each bootstrap level to see where Drupal was changing the memory limit, so I added the following to line 2573 of bootstrap.inc to show me the boostrap phase what what the memory limit is set to at that phase:
print_r($phase . ': ' . ini_get('memory_limit') . '<br>');

On the status report page I see:
7: 1024M
3: 512M
2: 512M
7: 512M

7 is a full bootstrap
3 is database, and
2 is variables
This indicates that on the first full bootstrap the memory_limit is behaving how I expect, but on the second full bootstrap it's back to 512M. What the heck?

memory_limit is set to 1G by default, see

To change it, you would use .ddev/php/*.ini. For example, a `.ddev/php/mem.ini with this:
[PHP]
memory_limit = 5G;

Results in this:

The docs explain how this works, https://ddev.readthedocs.io/en/stable/users/extend/customization-extendibility/#custom-php-configuration-phpini
For shell commands, the memory_limit is set to unlimited (-1), which is common for Drupal CLI setups. You can lower that with a .ddev/web-build/Dockerfile.*, but I haven't heard of anybody doing it. It requires overriding the base config.
You're running out of memory because you're using Docker Desktop and you haven't allocated enough for your application, or your application is using too much.

I see that you said

Added .ddev/conf/php/memory_limit.ini

The correct location is .ddev/php/memory_limit.ini, not what you used.

I created a brand new ddev drupal 7 project (for another existing site), and when I added the debug line to bootstrap.inc, I got:
7: 1024M
3: 1024M
2: 1024M

So the mystery decrease of memory_limit doesn't seem to affect all projects.
I did a ddev delete for original problem project, and when I did a new ddev config and ddev start I can all of a sudden see the changes I added to settings.php taking affect.  (probably related to https://github.com/ddev/ddev/issues/6491?)
7: 1024M
3: 256M
2: 256M

So, perhaps I have a work-around! I would like to figure out where the original 512M limit was coming from, and why it can only be changed with a ddev delete though.

Is 8G not enough? I get the same result (only 512M available) regardless of how many other ddev projects are running.

I think you should be fine with 8G, although it's conceivable that you're running a lot of projects at once.
But it seems like you're onto whatever was going on. Something else is changing the limit... and DDEV doesn't change it, so I guess something in PHP is changing it.
You can test this pretty easily with a phpinfo.php to see what DDEV is giving you. Just add this phpinfo.php to your docroot and execute it.
<?php
phpinfo();

You'll see this by default, (not 512 anything)

As demonstrated, you certainly can have a high memory_limit. Something about your Drupal project must be lowering it. Closing this, happy to continue the conversation here or elsewhere.
As above, use a trivial phpinfo() to explore this, so it's not dependent on your Drupal code or configuration.

As a wrap up for my future self....

I would like to figure out where the original 512M limit was coming from

I never did figure out where the original Drupal change was coming from. But I was able to override it via settings.php after a ddev delete -- and I think that was related to https://github.com/ddev/ddev/issues/6491.
My ddev overrides were working, but since Drupal overwrote memory_limit (somehow) I needed to override Drupal's override via ini_set() in settings.php. Now that that is working (thanks to ddev mutagen reset -- I've used this several times recently with settings.php changes for Drupal 7) I was able to successfully increase the memory limit.
I decided not to spend any more time on the Drupal mystery since I'm trying to get this site off Drupal 7 anyway :D
Thanks @rfay for the help and for cleaning up the issues after me. I'll try to summarize and close the next one before you ge to it.


Create test for Rating endpoint and some User endpoints

add test for the rate user endpoint
test function and the endpoint
test unhappy path of missing json type
add test for the delete user endpoint
add test for the upload profile picture endpoint
add formdata encoder library to pass a formdata encoded file as profile picture
use node 18 in github actions because it is required by the form-data-encoder library https://www.npmjs.com/package/form-data-encoder

Ι specified node version 18 instead of node 16 in github actions so that the form-data-encoder library works correctly
more info here: https://www.npmjs.com/package/form-data-encoder

LGTM!
Merging.


Issue with interfaces/implementations when files are split between FSTI and FST

Hello,
In the wiki, it is written the following:
Put the vals in A.fsti (the "partial module"), the lets in A.fst in the same order, then call fstar A.fsti A.fst. What happens is:

F* verifies the concatenation of A.fsti and A.fst
drops the environment
then starts over with only A.fsti, where every val is now assume'd

I was really pleased with this system so I tried it but I have the impression that it's not working. (I just pulled the last version of Fstar).
Test.fst:
module Test

let p n = []

Test.fsti
module Test

val p : nat -> nat

I thought the concatenation would correspond to:
module Test

val p : nat -> nat
let p n = []

which should not compile.
But if I call mono fstar.exe test.fsti test.fst then I obtain
Verifying i'face: Test
All verification conditions discharged successfully

Any suggestion ?
Best,
Vincent

Hi Vincent,
I think this is due to the stratified typechecker that apparently only checks the interface.
You might want to try that with the new typechecker using the --universes option.
I think in that case it will fail... Can you please confirm ?

Ho I thought that the universes option was by default in the latest version of FStar. It's not the case then ? I can't test it right now since he tells me that I need a new version of Z3 but I'll try it as soon as I install it.
Best,
Vincent

I just installed Z3 with the new version and it works well with the --universes option. Thanks

Unfortunately --universes is not yet the default. It will be in the next release but we have first to update the tutorial, the examples... Cheers. B.

Closing as we are not going to fix this in stratified mode.


Fix for Traffic tests which are not running

Some tests in routing.go uses echo.Port.Protocol only. But in traffic.go it doesn't check for that to identify as optsSpecified. So added a check to allow protocol as well.
Also it allows tests to have neither optsSpecified nor children which will show as the test passed even if it did not run. Added a check for that as well.
Please provide a description of this PR:
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ ] Ambient
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[x] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Please check any characteristics that apply to this pull request.

[x] Does not have any user-facing changes. This may include CLI changes, API changes, behavior changes, performance improvements, etc.

Hi @akshayjnambiar. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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

/ok-to-test

@akshayjnambiar: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
31058164268f818b2366055899354fc98a6989ea
link
true
/test release-notes

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

/cherrypick release-1.15

@stewartbutler: new pull request created: #40958

In response to this:

/cherrypick release-1.15

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


To apply on JetBrain

To apply on Jetbrain

@nicholasolbr First stage of verification passed, official domain is facebook.com as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision. Proof of domain ownership: https://www.facebook.com/eepadreafonsopaschotte/photos/a.1553874981530258/2542295379354875/?type=3

@nicholasolbr Regrettably, I have to close this request without merging. The exact reasoning and possible action plan was already discussed at #11311. As for now, we have the following policy regarding umbrella institutions and domains:
When a domain seems to represent an umbrella institution, not a specific single university or a college, we urge people possessing the addresses from this domain to apply for free educational license with an official document which proves that you are a student. You can do it using "OFFICIAL DOCUMENT" tab at https://www.jetbrains.com/shop/eform/students.
Thank you for your understanding!


non-float cannot have 'row'

I'm running nvim 0.8 and just installed this plugin.
When multiple notifications are present this error appears after the first is removed. When this happens the remaining notifications aren't cleared.
Error message: ...ack/packer/start/nvim-notify/lua/notify/windows/init.lua:285: non-float cannot have 'row'
I think this is related to #105 as it seems to happen when the remaining notifications would move up.
I've tried changing the animation to slide which shouldn't have the above feature by default and the issue stops happening.
Please let me know if you need any extra info.

Thanks for the report. Due to previous commit, should be working now in latest master 😄

Updated and seems to be fixed :+1:


Spelling

Proposed changes
Fixes misspellings identified by the check-spelling action.
The misspellings have been reported at https://github.com/jsoref/mlx/actions/runs/7382182734/attempts/1#summary-20081642822
The action will report that the changes in this PR would make it happy: https://github.com/jsoref/mlx/actions/runs/7382182822/attempts/1#summary-20081643098
Checklist
Put an x in the boxes that apply.

[x] I have read the CONTRIBUTING document
[ ] I have run pre-commit run --all-files to format my code / installed pre-commit prior to committing changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have updated the necessary documentation (if needed)

This is really awesome, thanks for doing that! I just checked the precommit and tests to be sure and everything looks good!


Question about the traffic rule implementation of "keep clear"

System information

OS Platform and Distribution Linux Ubuntu 14.04 (Docker):
Apollo installed from source:
Apollo version 5.0:

Steps to reproduce the issue:
I ran the simulation with demo_2.0.record on the map sunnyvale_loop. When approaching an intersection, from my understanding of the source code about keep_clear traffic rule, the AV should detect a pnc_junction instance and wait behind the stop line until the path ahead is clear. But from the logs, there is no pnc_junction instance at all. Experiments on other maps have similar results.
My question is:
Which scenario is the "keep clear" traffic rule designed for and how can I trigger the logic of "keep clear" (the related code in planning/traffic_rules/keep_clear and planning/tasks/deciders/speed_decider)?
Supporting materials (screenshots, command lines, code/script snippets):
My log about "keep clear". (I manually change the log level from debug to warning)
W0202 17:56:38.474692   885 keep_clear.cc:74]  5, signal_11 60.593620267645441 61.293620255724512
W0202 17:56:38.474697   885 keep_clear.cc:89]  SIGNAL[signal_11] s[60.5936, 61.2936]
W0202 17:56:38.474706   885 keep_clear.cc:74]  2, CW_3 63.950350728766047 93.079868284002856
W0202 17:56:38.474710   885 keep_clear.cc:77]  CROSSWALK[CW_3] s[63.9504, 93.0799]
W0202 17:56:38.474714   885 traffic_decider.cc:150]  Applied rule KEEP_CLEAR

@zqzqz pnc_junction was introduced by map in a later version. From the log you posted, I think it's not available in the map you are using.

Thanks for your reply! May I know which map supports pnc junction? Any examples?

@zqzqz try map sunnyvale_big_loop or sunnyvale_with_two_offices

I decoded the maps and found that three sunnyvale maps contains "junction" instances but not "pnc_junction". San mateo map has "pnc_junction" and it works. Thanks!


Messages produced with repetitive offset

Versions
Sarama Version: 1.14.0
Kafka Version: <IP_ADDRESS>
Go Version: 1.9.2
Configuration
What configuration values are you using for Sarama and Kafka?
       config := sarama.NewConfig()
       config.Net.DialTimeout = Timeout
       config.Net.ReadTimeout = Timeout
       config.Net.WriteTimeout = Timeout
       config.Metadata.Retry.Max = 15
       config.Metadata.Retry.Backoff = 2 * time.Second
       config.Producer.Return.Successes = true
       config.Producer.Return.Errors = true
       config.ChannelBufferSize = channelBufferSize
       config.Version = sarama.V0_11_0_0

Kafka is using the default config.
Logs
Sarama:
sarama]2017/11/30 15:30:42 Initializing new client
[sarama]2017/11/30 15:30:42 ClientID is the default of 'sarama', you should consider setting it to something application-specific.
[sarama]2017/11/30 15:30:42 ClientID is the default of 'sarama', you should consider setting it to something application-specific.
[sarama]2017/11/30 15:30:42 client/metadata fetching metadata for all topics from broker kafka:9092
[sarama]2017/11/30 15:30:42 Connected to broker at kafka:9092 (unregistered)
[sarama]2017/11/30 15:30:42 client/brokers registered new broker #1001 at kafka:9092
[sarama]2017/11/30 15:30:42 Successfully initialized new client
...
[sarama]2017/11/30 15:32:54 client/metadata found some partitions to be leaderless
[sarama]2017/11/30 15:32:54 client/metadata retrying after 2000ms... (15 attempts remaining)
[sarama]2017/11/30 15:32:56 client/metadata fetching metadata for [data.streams] from broker kafka:9092
[sarama]2017/11/30 15:32:56 ClientID is the default of 'sarama', you should consider setting it to something application-specific.
[sarama]2017/11/30 15:32:56 producer/broker/1001 starting up
[sarama]2017/11/30 15:32:56 producer/broker/1001 state change to [open] on data.streams/0
[sarama]2017/11/30 15:32:56 Connected to broker at kafka:9092 (registered as #1001)

Problem Description
Produced 60 messages into data.streams and it seems that the first message was produced with offset 0, all other with offset 59. My program is misbehaving because of that and here is the output of kafkacat:
$ kafkacat -C -b kafka:9092 -t data.streams -o beginning -f '%t[%p]@%o: %s\n'
data.streams[0]@0: {"schema_version":1,"payload":{"timestamp":1512053152,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emb"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053154,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emb"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053154,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emb"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053153,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emc"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053155,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emc"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053155,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emc"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053154,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emd"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053156,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emd"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053156,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emd"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053155,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["eme"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053157,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["eme"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053157,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["eme"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053156,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emf"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053158,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emf"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053158,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emf"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053157,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emg"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053159,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emg"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053159,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emg"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053158,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emh"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053160,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emh"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053160,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emh"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053159,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emi"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053161,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emi"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053161,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emi"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053160,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emj"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053162,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emj"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053162,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emj"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053161,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emk"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053163,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emk"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053163,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emk"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053162,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emm"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053164,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emm"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053164,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emm"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053163,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emn"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053165,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emn"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053165,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emn"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053164,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emo"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053166,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emo"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053166,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emo"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053165,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emp"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053167,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emp"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053167,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emp"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053166,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emq"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053168,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emq"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053168,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emq"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053167,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emr"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053169,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emr"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053169,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emr"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053168,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["ems"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053170,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["ems"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053170,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["ems"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053169,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emt"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053171,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emt"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053171,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emt"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053170,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emu"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053172,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emu"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053172,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emu"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053171,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emv"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053173,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emv"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512053173,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emv"]}]}}
% Reached end of topic data.streams [0] at offset 60

I was actually expecting to see the following output. This is what is produced when I use confluent-kafka-go instead of Sarama in the same producer logic:
$ kafkacat -C -b kafka:9092 -t data.streams -o beginning -f '%t[%p]@%o: %s\n'
data.streams[0]@0: {"schema_version":1,"payload":{"timestamp":1512055014,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emb"]}]}}
data.streams[0]@1: {"schema_version":1,"payload":{"timestamp":1512055016,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emb"]}]}}
data.streams[0]@2: {"schema_version":1,"payload":{"timestamp":1512055016,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emb"]}]}}
data.streams[0]@3: {"schema_version":1,"payload":{"timestamp":1512055015,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emc"]}]}}
data.streams[0]@4: {"schema_version":1,"payload":{"timestamp":1512055017,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emc"]}]}}
data.streams[0]@5: {"schema_version":1,"payload":{"timestamp":1512055017,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emc"]}]}}
data.streams[0]@6: {"schema_version":1,"payload":{"timestamp":1512055016,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emd"]}]}}
data.streams[0]@7: {"schema_version":1,"payload":{"timestamp":1512055018,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emd"]}]}}
data.streams[0]@8: {"schema_version":1,"payload":{"timestamp":1512055018,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emd"]}]}}
data.streams[0]@9: {"schema_version":1,"payload":{"timestamp":1512055017,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["eme"]}]}}
data.streams[0]@10: {"schema_version":1,"payload":{"timestamp":1512055019,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["eme"]}]}}
data.streams[0]@11: {"schema_version":1,"payload":{"timestamp":1512055019,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["eme"]}]}}
data.streams[0]@12: {"schema_version":1,"payload":{"timestamp":1512055018,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emf"]}]}}
data.streams[0]@13: {"schema_version":1,"payload":{"timestamp":1512055020,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emf"]}]}}
data.streams[0]@14: {"schema_version":1,"payload":{"timestamp":1512055020,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emf"]}]}}
data.streams[0]@15: {"schema_version":1,"payload":{"timestamp":1512055019,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emg"]}]}}
data.streams[0]@16: {"schema_version":1,"payload":{"timestamp":1512055021,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emg"]}]}}
data.streams[0]@17: {"schema_version":1,"payload":{"timestamp":1512055021,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emg"]}]}}
data.streams[0]@18: {"schema_version":1,"payload":{"timestamp":1512055020,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emh"]}]}}
data.streams[0]@19: {"schema_version":1,"payload":{"timestamp":1512055022,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emh"]}]}}
data.streams[0]@20: {"schema_version":1,"payload":{"timestamp":1512055022,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emh"]}]}}
data.streams[0]@21: {"schema_version":1,"payload":{"timestamp":1512055021,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emi"]}]}}
data.streams[0]@22: {"schema_version":1,"payload":{"timestamp":1512055023,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emi"]}]}}
data.streams[0]@23: {"schema_version":1,"payload":{"timestamp":1512055023,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emi"]}]}}
data.streams[0]@24: {"schema_version":1,"payload":{"timestamp":1512055022,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emj"]}]}}
data.streams[0]@25: {"schema_version":1,"payload":{"timestamp":1512055024,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emj"]}]}}
data.streams[0]@26: {"schema_version":1,"payload":{"timestamp":1512055024,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emj"]}]}}
data.streams[0]@27: {"schema_version":1,"payload":{"timestamp":1512055023,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emk"]}]}}
data.streams[0]@28: {"schema_version":1,"payload":{"timestamp":1512055025,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emk"]}]}}
data.streams[0]@29: {"schema_version":1,"payload":{"timestamp":1512055025,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emk"]}]}}
data.streams[0]@30: {"schema_version":1,"payload":{"timestamp":1512055024,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emm"]}]}}
data.streams[0]@31: {"schema_version":1,"payload":{"timestamp":1512055026,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emm"]}]}}
data.streams[0]@32: {"schema_version":1,"payload":{"timestamp":1512055026,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emm"]}]}}
data.streams[0]@33: {"schema_version":1,"payload":{"timestamp":1512055025,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emn"]}]}}
data.streams[0]@34: {"schema_version":1,"payload":{"timestamp":1512055027,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emn"]}]}}
data.streams[0]@35: {"schema_version":1,"payload":{"timestamp":1512055027,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emn"]}]}}
data.streams[0]@36: {"schema_version":1,"payload":{"timestamp":1512055026,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emo"]}]}}
data.streams[0]@37: {"schema_version":1,"payload":{"timestamp":1512055028,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emo"]}]}}
data.streams[0]@38: {"schema_version":1,"payload":{"timestamp":1512055028,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emo"]}]}}
data.streams[0]@39: {"schema_version":1,"payload":{"timestamp":1512055027,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emp"]}]}}
data.streams[0]@40: {"schema_version":1,"payload":{"timestamp":1512055029,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emp"]}]}}
data.streams[0]@41: {"schema_version":1,"payload":{"timestamp":1512055029,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emp"]}]}}
data.streams[0]@42: {"schema_version":1,"payload":{"timestamp":1512055028,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emq"]}]}}
data.streams[0]@43: {"schema_version":1,"payload":{"timestamp":1512055030,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emq"]}]}}
data.streams[0]@44: {"schema_version":1,"payload":{"timestamp":1512055030,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emq"]}]}}
data.streams[0]@45: {"schema_version":1,"payload":{"timestamp":1512055029,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emr"]}]}}
data.streams[0]@46: {"schema_version":1,"payload":{"timestamp":1512055031,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emr"]}]}}
data.streams[0]@47: {"schema_version":1,"payload":{"timestamp":1512055031,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emr"]}]}}
data.streams[0]@48: {"schema_version":1,"payload":{"timestamp":1512055030,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["ems"]}]}}
data.streams[0]@49: {"schema_version":1,"payload":{"timestamp":1512055032,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["ems"]}]}}
data.streams[0]@50: {"schema_version":1,"payload":{"timestamp":1512055032,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["ems"]}]}}
data.streams[0]@51: {"schema_version":1,"payload":{"timestamp":1512055031,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emt"]}]}}
data.streams[0]@52: {"schema_version":1,"payload":{"timestamp":1512055033,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emt"]}]}}
data.streams[0]@53: {"schema_version":1,"payload":{"timestamp":1512055033,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emt"]}]}}
data.streams[0]@54: {"schema_version":1,"payload":{"timestamp":1512055032,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emu"]}]}}
data.streams[0]@55: {"schema_version":1,"payload":{"timestamp":1512055034,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emu"]}]}}
data.streams[0]@56: {"schema_version":1,"payload":{"timestamp":1512055034,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emu"]}]}}
data.streams[0]@57: {"schema_version":1,"payload":{"timestamp":1512055033,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emv"]}]}}
data.streams[0]@58: {"schema_version":1,"payload":{"timestamp":1512055035,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emv"]}]}}
data.streams[0]@59: {"schema_version":1,"payload":{"timestamp":1512055035,"channel":10,"device":7,"sensor_data":[{"medium":12,"values":[0.5],"stream_ids":["emv"]}]}}

Offsets are set by the broker when the messages are received, not by the producer. I don't understand what the difference could be here.

I tried many times and the result was always the same. The weird thing is that as far as I remember the offsets reported back by Sarama on the success channel were correct :-|

@edenhill could this be a bug in kafkacat somehow?

In hindsight #1032 was almost certainly a duplicate of this, but it should be fixed in master now.


Convert From Groovy to Java

When originally written, the flare-publishing-plugins project's production code was done in Groovy. This was to allow developers to see, directly, the Gradle-style configuration plug-ins were applying.
However, lack of decent IDE tooling and compiler feedback before manual testing is overshadowing the benefits above. What's more, Gradle itself is implemented in Java. Existing Groovy files should be converted over

Merged to master


sound.play() doesn't play simultaneous sounds

When I call .play() for a sound more than once, the previous plays are stopped when the new one starts so they don't  play simultaneously. Sounds played using using audiosprites do play simultaneously.   I'm using webaudio:
    public preload() {
            log(preload)
            this.load.audio("falling", ["assets/audio/mixkit-short-whistle-fall-406.mp3", "assets/audio/mixkit-short-whistle-fall-406.ogg"])

        }

    public create() {
        this.fallingSound = this.sound.add("falling", { loop: false }) ...

then in update() or on a collision I am calling
this.fallingSound.play()

A sound object has only one playback position.
You need to create a second sound object or use this.sound.play('falling') instead.

Thank you very much for the information.  I wish it were reflected in the documentation.

@steveja42 It is actually!
https://photonstorm.github.io/phaser3-docs/Phaser.Sound.HTML5AudioSoundManager.html

To play multiple instances of the same HTML5 Audio sound, you need to provide an instances value when loading the sound with the Loader

That doesn't explain the difference this.sound.play(key) and asoundInstance.play() .
Also  when I used instances in the loader   asoundInstance.play() still started over every time so I don't see that instances did anything.

@steveja42 Fair enough
I believe you still need to use this.sound.play(key) otherwise calling play() on the instance directly will just restart that instance, as you mentioned

Thank you for submitting this issue. We have fixed this and the fix has been pushed to the master branch. It will be part of the next release. If you get time to build and test it for yourself we would appreciate that.


Handle validation errors from editing documents

Publishing a document involves four API requests. Currently any error from these is treated as a system error and handled like a 500, but a validation error should be handled like a 400 and passed into the template.
To avoid doing this four times, I've moved the API calls into a single serial function. If any error is returned, the outer code checks if it's a validation error and handles it more carefully if so.
#patch
Checklist

[x] I have updated the end-to-end tests to work with my changes

N/A

[x] I have added styling for Dark Mode

N/A

[x] I have checked that my UI changes meet accessibility standards

N/A

Codecov Report
Attention: Patch coverage is 48.27586% with 15 lines in your changes missing coverage. Please review.

Project coverage is 73.77%. Comparing base (7ef199c) to head (75e2fc5).
Report is 6 commits behind head on main.

Files with missing lines
Patch %
Lines

internal/server/edit_document.go
48.27%
7 Missing and 8 partials :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #576      +/-   ##
==========================================
- Coverage   73.81%   73.77%   -0.04%
==========================================
  Files         115      115
  Lines        4006     4027      +21
==========================================
+ Hits         2957     2971      +14
- Misses        735      739       +4
- Partials      314      317       +3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Perfomance of markers (600 points)

I'm making an app with a Google map and 600 markers :round_pushpin:. The problem is that markers are custom with an image (small image without shadow).
The map is very slow with many markers :turtle:
I have tried (in the last versión of React Native Maps):
-Marker with vector inside.
-Marker with an Image inside.
-Marker with an icon inside.
-Marker with mapview.circle inside.
-Marker width param image.
The map is always slow.
However, if I use the default Google icon, everything works super good.
Is there any way to edit (width image or svg or polygon) that marker outside React Native ?. My icon is always the same :round_pushpin:
Thanks! ... great work this module.  :cupid:

I had the same issue. I fixed it by clustering the points using supercluster.

@chintanparikh Can you give me an example code? I have not found any that worked.

He's referring to https://github.com/mapbox/supercluster

thanks @danieljvdm 💃

#213 see there. And #369
Check that you are not re-rendering MapView or your Markers