Incremental sync mode may cause DM cluster to crash

What did you do?
The relevant description of incremental in DM official documentation can automatically start synchronization without setting binlog-name, binlog-pos, and binlog-gtid.
https://docs.pingcap.com/tidb/v6.5/task-configuration-file-full
The position where the binlog replication starts when task-mode is incremental and the downstream database checkpoint does not exist. If the checkpoint exists, the checkpoint is used. If neither the meta configuration item nor the downstream database checkpoint exists, the migration starts from the latest binlog position of the upstream.

During the actual test, synchronization can occasionally be started normally. Occasionally, dm-master reports an error and then the cluster restarts. During the restart, the cluster crashes for more than ten seconds and dmctl reports an error.
» start-task roger_test_240227.yaml
fail to run: [start-task roger_test_240227.yaml]
Error: [code=48001:class=dmctl:scope=internal:level=high], Message: can't connect to x.x.x.84:8466, RawCause: context deadline exceeded, Workaround: Please check your network connection.
» query-status --more
can not query  task's status(in sources [])
fail to run: [query-status --more]
Error: rpc error: code = Canceled desc = grpc: the client connection is closing
At present, I personally suspect that the difference is caused by inconsistent mariadb user permissions.
The mariadb permission is all and synchronization can be started normally.
GRANT ALL PRIVILEGES ON . TO 'dmsyncnew'@'%' IDENTIFIED BY PASSWORD ''
Only some permissions will cause the cluster to crash
GRANT SELECT, RELOAD, PROCESS, SHOW DATABASES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, SHOW VIEW ON . TO 'dmsyncnew'@'%' IDENTIFIED BY PASSWORD ''
The following is the dm-master log during the two tests
[2024/02/27 16:23:55.103 +08:00] [INFO] [server.go:2668] [payload=] [request=QueryStatus]
[2024/02/27 16:23:55.103 +08:00] [INFO] [server.go:807] ["get sources"]
[2024/02/27 16:24:02.419 +08:00] [INFO] [server.go:2668] [payload="{......}"] [request=StartTask]
[2024/02/27 16:24:02.420 +08:00] [WARN] [task.go:741] ["mysql-instance doesn't set meta for incremental mode, user should specify start_time to start task."] [sourceID=x.x.x.8_4011]
[2024/02/27 16:24:04.006 +08:00] [INFO] [checker.go:380] ["\n************ task roger_test_240227 checking items \ntarget db privilege checker\nmysql_server_id\nmysql_binlog_enable\nmysql_binlog_format\nmysql_binlog_row_image\nsource db replication privilege checker\nonline ddl checker\nbinlog_do_db/binlog_ignore_db check\ntable structure compatibility check\n task roger_test_240227 checking items "] [unit="task check"]
[2024/02/27 16:24:04.349 +08:00] [INFO] [table_structure.go:158] ["check table structure over"] ["spend time"=343.228368ms]
[2024/02/27 16:24:02.420 +08:00] [WARN] [task.go:741] ["mysql-instance doesn't set meta for incremental mode, user should specify start_time to start task."] [sourceID=x.x.x.8_4011]
[2024/02/27 16:24:04.006 +08:00] [INFO] [checker.go:380] ["\n task roger_test_240227 checking items \ntarget db privilege checker\nmysql_server_id\nmysql_binlog_enable\nmysql_binlog_format\nmysql_binlog_row_image\nsource db replication privilege checker\nonline ddl checker\nbinlog_do_db/binlog_ignore_db check\ntable structure compatibility check\n task roger_test_240227 checking items "] [unit="task check"]
[2024/02/27 16:24:04.349 +08:00] [INFO] [table_structure.go:158] ["check table structure over"] ["spend time"=343.228368ms]
[2024/02/27 16:24:04.350 +08:00] [INFO] [server.go:519] ["task name"=roger_test_240227] [task="{......}"] [request=StartTask]
[2024/02/27 16:24:04.360 +08:00] [INFO] [server.go:1994] ["fail to get expect operation result"] [retryNum=0] [task=roger_test_240227] [source=x.x.x.8_4011] [expect=Running] [resp="result:true msg:"no sub task started" sourceStatus:<source:"x.x.x.8_4011" worker:"dm-x.x.x.84-8292" > "]
[2024/02/27 16:24:11.514 +08:00] [INFO] [keeper.go:247] ["update source tables"] ["old source table"="{"task":"","source":"","tables":null}"] ["new source table"="{"task":"roger_test_240227","source":"x.x.x.8_4011","tables":{"test":{"r1":{"roger_test":{"r1":{}}}}}}"]
[2024/02/27 16:24:12.245 +08:00] [WARN] [interceptor.go:197] ["request stats"] [component="embed etcd"] ["start time"=2024/02/27 16:24:02.419 +08:00] ["time spent"=9.826508437s] [remote=x.x.x.8:30514] ["response type"=/pb.Master/StartTask] ["request count"=-1] ["request size"=-1] ["response count"=-1] ["response size"=-1] ["request content"=]
[2024/02/27 16:24:28.038 +08:00] [INFO] [server.go:2668] [payload="name:"roger_test_240227" "] [request=QueryStatus]
[2024/02/27 16:27:39.501 +08:00] [INFO] [server.go:2668] [payload="op:Delete name:"roger_test_240227" "] [request=OperateTask]
[2024/02/27 16:27:40.519 +08:00] [WARN] [interceptor.go:197] ["request stats"] [component="embed etcd"] ["start time"=2024/02/27 16:27:39.501 +08:00] ["time spent"=1.017550249s] [remote=x.x.x.8:30514] ["response type"=/pb.Master/OperateTask] ["request count"=-1] ["request size"=-1] ["response count"=-1] ["response size"=-1] ["request content"=]
[2024/02/27 16:27:40.519 +08:00] [INFO] [keeper.go:231] ["delete source tables"] ["source table"="{"task":"roger_test_240227","source":"x.x.x.8_4011","tables":null}"]
[2024/02/27 16:32:45.971 +08:00] [INFO] [server.go:2668] [payload="{......}"] [request=StartTask]
[2024/02/27 16:32:45.971 +08:00] [WARN] [task.go:741] ["mysql-instance doesn't set meta for incremental mode, user should specify start_time to start task."] [sourceID=x.x.x.8_4011]
[2024/02/27 16:32:48.435 +08:00] [INFO] [checker.go:380] ["\n task roger_test_240227 checking items \ntarget db privilege checker\nmysql_server_id\nmysql_binlog_enable\nmysql_binlog_format\nmysql_binlog_row_image\nsource db replication privilege checker\nonline ddl checker\nbinlog_do_db/binlog_ignore_db check\ntable structure compatibility check\n task roger_test_240227 checking items ******"] [unit="task check"]
[2024/02/27 16:32:48.776 +08:00] [INFO] [table_structure.go:158] ["check table structure over"] ["spend time"=340.787866ms]
[2024/02/27 16:32:48.776 +08:00] [INFO] [server.go:519] ["task name"=roger_test_240227] [task="{......}"] [request=StartTask]
[2024/02/27 16:32:48.785 +08:00] [INFO] [server.go:1994] ["fail to get expect operation result"] [retryNum=0] [task=roger_test_240227] [source=x.x.x.8_4011] [expect=Running] [resp="result:true msg:"no sub task started" sourceStatus:<source:"x.x.x.8_4011" worker:"dm-x.x.x.84-8292" > "]
[2024/02/27 16:32:55.636 +08:00] [INFO] [keeper.go:247] ["update source tables"] ["old source table"="{"task":"","source":"","tables":null}"] ["new source table"="{"task":"roger_test_240227","source":"x.x.x.8_4011","tables":{"test":{"r1":{"roger_test":{"r1":{}}}}}}"]
[2024/02/27 16:32:56.353 +08:00] [WARN] [interceptor.go:197] ["request stats"] [component="embed etcd"] ["start time"=2024/02/27 16:32:45.971 +08:00] ["time spent"=10.3822469s] [remote=x.x.x.8:35062] ["response type"=/pb.Master/StartTask] ["request count"=-1] ["request size"=-1] ["response count"=-1] ["response size"=-1] ["request content"=]
[2024/02/27 16:33:01.547 +08:00] [INFO] [server.go:2668] [payload="name:"roger_test_240227" "] [request=QueryStatus]
[2024/02/27 16:37:32.671 +08:00] [INFO] [server.go:2668] [payload="op:Delete name:"roger_test_240227" "] [request=OperateTask]
[2024/02/27 16:37:32.812 +08:00] [INFO] [keeper.go:231] ["delete source tables"] ["source table"="{"task":"roger_test_240227","source":"x.x.x.8_4011","tables":null}"]
[2024/02/27 16:42:26.134 +08:00] [INFO] [server.go:2668] [payload="{HidePasswordObject="op:StartSource config:\"source-id: \\\"<IP_ADDRESS>\\\"\\n\\nenable-gtid: true\\n\\nenable-relay: false\\nrelay-binlog-name: '' \\nrelay-binlog-gtid: '' \\n\\nfrom:\\n  host: \\\"<IP_ADDRESS>\\\"\\n  user: \\\"dmsyncnew\\\"\\n  password: \\\"\\\"\\n  port: 3306\\n\\n\" "}"] [request=OperateSource]
[2024/02/27 16:42:26.485 +08:00] [INFO] [scheduler.go:2383] ["found free worker when source bound"] [component=scheduler] [worker=dm-x.x.x.85-8292] [source=<IP_ADDRESS>]
[2024/02/27 16:42:26.486 +08:00] [INFO] [scheduler.go:2427] ["bound the source to worker"] [component=scheduler] [bound="{"source":"<IP_ADDRESS>","worker":"dm-x.x.x.85-8292"}"]
[2024/02/27 16:42:27.579 +08:00] [WARN] [interceptor.go:197] ["request stats"] [component="embed etcd"] ["start time"=2024/02/27 16:42:26.134 +08:00] ["time spent"=1.445084176s] [remote=x.x.x.8:39842] ["response type"=/pb.Master/OperateSource] ["request count"=-1] ["request size"=-1] ["response count"=-1] ["response size"=-1] ["request content"=]
[2024/02/27 16:42:31.515 +08:00] [INFO] [server.go:2668] [payload="{......}"] [request=StartTask]
[2024/02/27 16:42:31.515 +08:00] [WARN] [task.go:741] ["mysql-instance doesn't set meta for incremental mode, user should specify start_time to start task."] [sourceID=10.1107.108.252]
[2024/02/27 16:42:47.292 +08:00] [INFO] [version.go:47] ["Welcome to dm-master"] [release-version=v6.5.3-20231229-5120c7b] [git-hash=5120c7bf52d74d30860f9fec917a4561abaddbb8] [git-branch=heads/refs/tags/v6.5.3-20231229-5120c7b] [utc-build-time="2023-12-29 10:30:27"] [go-version="go version go1.19.13 linux/amd64"] [failpoint-build=false]
[2024/02/27 16:42:47.292 +08:00] [INFO] [main.go:63] ["dm-master config"="{"log-level":"info","log-file":"/data/dm-patch-deploy/dm-master-8466/log/dm-master.log","log-format":"text","log-rotate":"","rpc-timeout":"30s","rpc-rate-limit":10,"rpc-rate-burst":40,"master-addr":"<IP_ADDRESS>:8466","advertise-addr":"x.x.x.84:8466","config-file":"conf/dm-master.toml","name":"master1","data-dir":"/data/dm-patch-data/dm-master-8466","peer-urls":"http://<IP_ADDRESS>:8496","advertise-peer-urls":"http://x.x.x.84:8496","initial-cluster":"master1=http://x.x.x.84:8496,master2=http://x.x.x.85:8496,master3=http://x.x.x.86:8496","initial-cluster-state":"new","join":"","max-txn-ops":2048,"max-request-bytes":1572864,"auto-compaction-mode":"periodic","auto-compaction-retention":"1h","quota-backend-bytes":2147483648,"openapi":false,"v1-sources-path":"","ssl-ca":"","ssl-cert":"","ssl-key":"","cert-allowed-cn":null,"ExperimentalFeatures":{"OpenAPI":false}}"]
[2024/02/27 16:42:47.293 +08:00] [INFO] [config.go:462] ["Set log level of etcd to warn, if you want to log more message about etcd, change log-level to debug in master configuration file"]
[2024/02/27 16:42:47.293 +08:00] [INFO] [server.go:161] ["config after join prepared"] [config="{"log-level":"info","log-file":"/data/dm-patch-deploy/dm-master-8466/log/dm-master.log","log-format":"text","log-rotate":"","rpc-timeout":"30s","rpc-rate-limit":10,"rpc-rate-burst":40,"master-addr":"<IP_ADDRESS>:8466","advertise-addr":"x.x.x.84:8466","config-file":"conf/dm-master.toml","name":"master1","data-dir":"/data/dm-patch-data/dm-master-8466","peer-urls":"http://<IP_ADDRESS>:8496","advertise-peer-urls":"http://x.x.x.84:8496","initial-cluster":"master1=http://x.x.x.84:8496,master2=http://x.x.x.85:8496,master3=http://x.x.x.86:8496","initial-cluster-state":"new","join":"","max-txn-ops":2048,"max-request-bytes":1572864,"auto-compaction-mode":"periodic","auto-compaction-retention":"1h","quota-backend-bytes":2147483648,"openapi":false,"v1-sources-path":"","ssl-ca":"","ssl-cert":"","ssl-key":"","cert-allowed-cn":null,"ExperimentalFeatures":{"OpenAPI":false}}"]
[2024/02/27 16:42:47.322 +08:00] [WARN] [store.go:1220] ["simple token is not cryptographically signed"] [component="embed etcd"]
[2024/02/27 16:42:47.362 +08:00] [INFO] [server.go:281] ["listening gRPC API and status request"] [address=<IP_ADDRESS>:8466]
[2024/02/27 16:42:47.364 +08:00] [INFO] [election.go:300] ["get response from election observe"] [component=election] [key=/dm-master/leader/76758de9a8e10804] [value="{"id":"master1","addr":"x.x.x.84:8466"}"]
[2024/02/27 16:42:47.364 +08:00] [INFO] [election.go:331] ["become leader"] [component=election] ["current member"="{"id":"master1","addr":"x.x.x.84:8466"}"]
[2024/02/27 16:42:47.364 +08:00] [INFO] [election.go:56] ["current member become the leader"] ["current member"=master1]
[2024/02/27 16:42:47.364 +08:00] [INFO] [bootstrap.go:72] ["bootstrap before scheduler start"]
[2024/02/27 16:42:47.365 +08:00] [INFO] [upgrade.go:109] ["fetch previous version"] [preVer="{"internal-no":4,"release-ver":"v6.5.0"}"]
[2024/02/27 16:42:47.365 +08:00] [INFO] [scheduler.go:222] ["the scheduler is starting"] [component=scheduler]
[2024/02/27 16:42:47.373 +08:00] [INFO] [scheduler.go:2286] ["no unbound sources need to bound"] [component=scheduler] [worker="{"name":"dm-x.x.x.86-8292","addr":"x.x.x.86:8292"}"]
[2024/02/27 16:42:47.373 +08:00] [INFO] [scheduler.go:300] ["the scheduler has started"] [component=scheduler]
[2024/02/27 16:42:47.373 +08:00] [INFO] [pessimist.go:72] ["the shard DDL pessimist is starting"] [component="shard DDL pessimist"]
[2024/02/27 16:42:47.374 +08:00] [INFO] [pessimist.go:137] ["get history shard DDL info"] [component="shard DDL pessimist"] [info={}] [revision=294]
[2024/02/27 16:42:47.375 +08:00] [INFO] [pessimist.go:146] ["get history shard DDL lock operation"] [component="shard DDL pessimist"] [operation={}] [revision=294]
[2024/02/27 16:42:47.375 +08:00] [INFO] [pessimist.go:93] ["the shard DDL pessimist has started"] [component="shard DDL pessimist"]
[2024/02/27 16:42:47.375 +08:00] [INFO] [optimist.go:66] ["the shard DDL optimist is starting"] [component="shard DDL optimist"]
[2024/02/27 16:42:47.376 +08:00] [INFO] [optimist.go:405] ["get history initial source tables"] [component="shard DDL optimist"] [revision=294]
[2024/02/27 16:42:47.376 +08:00] [INFO] [optimist.go:413] ["get history shard DDL info"] [component="shard DDL optimist"] [revision=294]
[2024/02/27 16:42:47.377 +08:00] [INFO] [optimist.go:421] ["get history shard DDL lock operation"] [component="shard DDL optimist"] [revision=294]
[2024/02/27 16:42:47.378 +08:00] [INFO] [optimist.go:90] ["the shard DDL optimist has started"] [component="shard DDL optimist"]
[2024/02/27 16:42:47.378 +08:00] [INFO] [server.go:434] ["init cluster id begin"]
[2024/02/27 16:42:47.378 +08:00] [INFO] [server.go:463] ["init cluster id success"] [cluster_id=7182842293442053991]
[2024/02/27 16:42:47.378 +08:00] [INFO] [bootstrap.go:51] ["start bootstrapping"]
[2024/02/27 16:42:47.379 +08:00] [INFO] [upgrade.go:67] ["fetch previous version"] [preVer="{"internal-no":4,"release-ver":"v6.5.0"}"]
[2024/02/27 16:42:47.379 +08:00] [INFO] [bootstrap.go:67] ["successful bootstrapped"]
[2024/02/27 16:42:49.318 +08:00] [INFO] [server.go:2668] [payload="leader:true master:true names:"master1" "] [request=ListMember]
[2024/02/27 16:42:49.420 +08:00] [INFO] [server.go:2668] [payload="leader:true master:true names:"master2" "] [request=ListMember]
[2024/02/27 16:42:49.421 +08:00] [INFO] [server.go:2668] [payload="leader:true master:true names:"master3" "] [request=ListMember]
[2024/02/27 16:42:49.426 +08:00] [INFO] [server.go:2668] [payload="worker:true names:"dm-x.x.x.84-8292" "] [request=ListMember]
[2024/02/27 16:42:49.426 +08:00] [INFO] [server.go:2668] [payload="worker:true names:"dm-x.x.x.85-8292" "] [request=ListMember]
[2024/02/27 16:42:49.426 +08:00] [INFO] [server.go:2668] [payload="worker:true names:"dm-x.x.x.86-8292" "] [request=ListMember]
[2024/02/27 16:43:34.360 +08:00] [INFO] [election.go:401] ["fail to watch, the leader is deleted"] [component=election] [key=/dm-master/leader/76758de9a8e10804]
[2024/02/27 16:43:34.360 +08:00] [INFO] [election.go:334] ["retire from leader"] [component=election] ["current member"="{"id":"master1","addr":"x.x.x.84:8466"}"]
[2024/02/27 16:43:34.360 +08:00] [INFO] [pessimist.go:121] ["pessimist will quit now"]
[2024/02/27 16:43:34.360 +08:00] [INFO] [pessimist.go:221] ["the shard DDL pessimist has closed"] [component="shard DDL pessimist"]
[2024/02/27 16:43:34.360 +08:00] [INFO] [optimist.go:112] ["the shard DDL optimist has closed"] [component="shard DDL optimist"]
[2024/02/27 16:43:34.360 +08:00] [INFO] [scheduler.go:313] ["the scheduler is closing"] [component=scheduler]
[2024/02/27 16:43:34.360 +08:00] [INFO] [scheduler.go:2561] ["observeLoadTask will quit now"]
[2024/02/27 16:43:34.360 +08:00] [INFO] [keepalive.go:198] ["watch keepalive worker quit due to context canceled"]
[2024/02/27 16:43:34.361 +08:00] [INFO] [scheduler.go:2106] ["observeWorkerEvent will quit now"]
[2024/02/27 16:43:34.361 +08:00] [INFO] [scheduler.go:327] ["the scheduler has closed"] [component=scheduler]
[2024/02/27 16:43:34.361 +08:00] [INFO] [election.go:45] ["current member retire from the leader"] ["current member"=master1]
[2024/02/27 16:43:34.362 +08:00] [INFO] [election.go:278] ["fail to campaign"] [component=election] ["current member"="{"id":"master1","addr":"x.x.x.84:8466"}"] [error="context canceled"]
[2024/02/27 16:43:34.363 +08:00] [INFO] [election.go:300] ["get response from election observe"] [component=election] [key=/dm-master/leader/22e98de9a8e6c904] [value="{"id":"master2","addr":"x.x.x.85:8466"}"]
[2024/02/27 16:43:34.363 +08:00] [INFO] [election.go:324] ["current member is not the leader"] [component=election] ["current member"="{"id":"master1","addr":"x.x.x.84:8466"}"] [leader="{"id":"master2","addr":"x.x.x.85:8466"}"]
[2024/02/27 16:43:34.363 +08:00] [INFO] [election.go:96] ["get new leader"] [leader=master2] ["current member"=master1]
[2024/02/27 16:43:34.364 +08:00] [INFO] [election.go:273] ["successful manually clean election key"] [component=election] ["campaign error"="context canceled"]
[2024/02/27 16:43:34.365 +08:00] [INFO] [election.go:278] ["fail to campaign"] [component=election] ["current member"="{"id":"master1","addr":"x.x.x.84:8466"}"] [error="context canceled"]
[2024/02/27 16:43:34.365 +08:00] [INFO] [election.go:300] ["get response from election observe"] [component=election] [key=/dm-master/leader/22e98de9a8e6c904] [value="{"id":"master2","addr":"x.x.x.85:8466"}"]
[2024/02/27 16:55:13.993 +08:00] [INFO] [server.go:2668] [payload=] [request=QueryStatus]
[2024/02/27 16:55:13.993 +08:00] [INFO] [server.go:2683] ["will forward after a short interval"] [from=master1] [to=master2] [request=QueryStatus]
[2024/02/27 16:55:14.894 +08:00] [WARN] [interceptor.go:197] ["request stats"] [component="embed etcd"] ["start time"=2024/02/27 16:55:13.993 +08:00] ["time spent"=901.52325ms] [remote=x.x.x.8:46504] ["response type"=/pb.Master/QueryStatus] ["request count"=-1] ["request size"=-1] ["response count"=-1] ["response size"=-1] ["request content"=]
[2024/02/27 16:55:22.419 +08:00] [INFO] [server.go:2668] [payload="{HidePasswordObject="op:StopSource sourceID:\"<IP_ADDRESS>\" "}"] [request=OperateSource]
[2024/02/27 16:55:22.419 +08:00] [INFO] [server.go:2683] ["will forward after a short interval"] [from=master1] [to=master2] [request=OperateSource]
[2024/02/27 16:55:28.802 +08:00] [INFO] [server.go:2668] [payload="{HidePasswordObject="op:StopSource sourceID:\"x.x.x.8_4011\" "}"] [request=OperateSource]
[2024/02/27 16:55:28.802 +08:00] [INFO] [server.go:2683] ["will forward after a short interval"] [from=master1] [to=master2] [request=OperateSource]
[2024/02/27 16:56:13.697 +08:00] [INFO] [server.go:2668] [payload="leader:true master:true names:"master1" "] [request=ListMember]
[2024/02/27 16:56:13.697 +08:00] [INFO] [server.go:2683] ["will forward after a short interval"] [from=master1] [to=master2] [request=ListMember]
What did you expect to see?
As stated in the documentation, incremental mode can start synchronization normally without setting binlog-name, binlog-pos, and binlog-gtid.
Even if parameters must be specified, an error message should be reported in dmctl instead of causing a crash.
What did you see instead?

TiUP

Other interesting information (system version, hardware config, etc):
>
>

current status of DM cluster (execute query-status <task-name> in dmctl)
tiup is checking updates for component dm ...
Starting component `dm`: /data1/tiup_home/components/dm/v1.12.3/tiup-dm display dm-patch-test
Cluster type:       dm
Cluster name:       dm-patch-test
Cluster version:    v6.5.3
Deploy user:        tidb
SSH type:           builtin
ID                  Role                 Host           Ports      OS/Arch       Status     Data Dir                            Deploy Dir
--                  ----                 ----           -----      -------       ------     --------                            ----------
xxx.84:8466  dm-master (patched)  xxx.84  8466/8496  linux/x86_64  Healthy    /data/dm-patch-data/dm-master-8466  /data/dm-patch-deploy/dm-master-8466
xxx.85:8466  dm-master (patched)  xxx.85  8466/8496  linux/x86_64  Healthy|L  /data/dm-patch-data/dm-master-8466  /data/dm-patch-deploy/dm-master-8466
xxx.86:8466  dm-master (patched)  xxx.86  8466/8496  linux/x86_64  Healthy    /data/dm-patch-data/dm-master-8466  /data/dm-patch-deploy/dm-master-8466
xxx.84:8292  dm-worker (patched)  xxx.84  8292       linux/x86_64  Free       /data/dm-patch-data/dm-worker-8292  /data/dm-patch-deploy/dm-worker-8292
xxx.85:8292  dm-worker (patched)  xxx.85  8292       linux/x86_64  Free       /data/dm-patch-data/dm-worker-8292  /data/dm-patch-deploy/dm-worker-8292
xxx.86:8292  dm-worker (patched)  xxx.86  8292       linux/x86_64  Free       /data/dm-patch-data/dm-worker-8292  /data/dm-patch-deploy/dm-worker-8292
Total nodes: 6

/severity major


Don't show artifact transformation headers

The headers for artifact transforms should not show up in the build
log if there is no output from the transformations.
That makes the console log much cleaner, especially for the plain and
verbose console.
The logging for artifact transformations still shows up in build scan
logs or if the transformation produced some output.

@eriwen Can you take a look at this PR if it makes sense from a console logging perspective?

@wolfs Well this seems like a good step to me, then. I vote we move forward here.


Add maxDecimalPlaces to Marker component

There is a blur issue with Chrome and Safari when the translate property has a pixel value with decimal numbers.
I added a prop for the Marker component that controls how many, if any decimal places should be used. Not sure the control option is needed, maybe the maxDecimalPlaces should just be set to 0 by default.
Here I am not using maxDecimalPlaces:

Here I am using maxDecimalPlaces:

You will need to click on the images to get the full res image.
Both images from Chrome 55.0.2883.95
Please feel free to make changes or comments on this :)

Thanks for the PR, is there a considerable position shift if you max zoom to a Marker and check with toFixed(0) and without ?

Here you can see a Marker with and without decimal numbers on max zoom
With decimal:

Without decimal:

I can't see any considerable position shift for this specific Marker at least. If there are no decimals the Marker can only move max 0.5 pixels on both the X and Y axis.

Ok, then I guess when can go with a toFixed(0) by default 👍  would you mind doing the change ?

Awesome thank you 👍


Nested recursive functions verification problem

I have a problem with nested recursive functions verification. Full code:
module Test

let isDigit x = x >= 0 && x <= 9

type digit = x:int{isDigit x}

type num =
	| D of digit
	| N of digit * num

val f: num -> num -> num
let f n1 n2 =
    match n1 with
        | D d -> n1
        | N (d, n) ->
            begin
                let rec g x =
                    match x with
                        | D d1 -> N (d, x)
                        | N (d1, n1) -> N (d1, n1)
                in
                g n
            end

Error message:
Unexpected error; please file a bug report, ideally with a minimized version of the source program that triggered the error.
Bound term variable not found: d

Definition of d is pattern  | N (d, n) ->. If I specify g  as non-recursive function (let g x =) then verification is OK.

Thanks for reporting.
We had similar problems in the past even for non-nested recursion, but those were fixed already (#192).
In general the support for nested fixpoints is rather flaky in F* (#194), and the usual workaround is hoisting such fixpoints to the top level.

But in @gsvgit example f is not even recursive.
This is a simpler example:
// Substituting `pos` for a non-refined type makes `f` below typecheck
// type num = | N of int
type num = | N of pos

val f: num -> num
let f n =
  match n with
  | N d -> let rec g x = N d in g 1

Sorry if I wasn't clear enough, by nested recustion I meant "not top level" recursion. I don't think it makes any difference if you nest a let rec within another let rec or anything else.

A fix for this kind of bug will probably be relegated to the universes branch ...

Yet another test for this problem: refined types and mutual recursion.
RefinedTypesAndMutualRecursion.txt

It's clearly not the same problem, so I've filed it separately (#442).

Cannot repro with --universes. Closing.


Support for BGP Unnumbered Interfaces/BGP Flowspec

I can't find any documentation about Calico support for BGP Unnumbered Interfaces or BGP Flowspec, Is there current support. If not can we add it to the roadmap with Extended Next-hop Encoding. I think its a useful feature for deployment in Data Centers.

I am unaware of support for those (though I do not really know what they are TBH).
@robbrockbank or @kprabhak do either of you know if we support these?
I marked this as 'kind/support' for the time being but we can change it to feature request if it is confirmed that those are not supported.

Regd BGP unnumbered, I know of some existing deployments with Bird that accomplish this with some templating around Bird, in combination with a ToR switch which also has this capabilities. So this can be accomplished with some additional Calico/Bird templating work.
Alternatively, if one uses one of the alternative bgp back-ends to Calico, like GoBGP, these might also support Unnumbered BGP as described here: https://github.com/osrg/gobgp/blob/master/docs/sources/unnumbered-bgp.md
I'm not up to speed with the latest on Flowspec implementation status in Bird or GoBGP, perhaps @robbrockbank or (once he's back from vacation) @liljenstolpe might be able to comment. At least GoBGP seems to indicate that it supports Flowspec, per this link:  https://github.com/osrg/gobgp/blob/master/docs/sources/flowspec.md

Thanks @kprabhak for the clarification. I think I switch backends to GoBGP and test BGP unnumbered and flow spec with it.


[WIP]Add extra available token

1.add extra token list.
2.add authorization in MultiToken.
3.add a view method in TokenConvert for getting resource token's deposit balance
4.bug fixed about updating connector

:x: Build AElf <IP_ADDRESS>01 failed (commit https://github.com/AElfProject/AElf/commit/a3e7d78c80 by @llypb)

:white_check_mark: Build AElf <IP_ADDRESS>20 completed (commit https://github.com/AElfProject/AElf/commit/a89e0c484b by @llypb)

:x: Build AElf <IP_ADDRESS>59 failed (commit https://github.com/AElfProject/AElf/commit/d1e18a6f85 by @llypb)

:x: Build AElf <IP_ADDRESS>99 failed (commit https://github.com/AElfProject/AElf/commit/fb008b0f61 by @llypb)

:x: Build AElf <IP_ADDRESS>01 failed (commit https://github.com/AElfProject/AElf/commit/cde7d66ce1 by @llypb)


Remove cupy/cuda/_environment.py

There are two _environment.py in the codebase that implement get_cuda_path(), and this is quite confusing and unnecessary. I propose to merge them.
In addition, note that get_cuda_path() in cupy/cuda/_environment.py is never used in the codebase -- currently cupy.cuda.get_cuda_path() is just an alias of cupy._environment.get_cuda_path(). So this is another reason to do this.
What I did is to move all functions in cupy/cuda/_environment.py to cupy/_environment.py, with minor changes that I'll comment in the diff shortly.
Ideally we should do this the other way around (that is, remove cupy/_environment.py), but it is not possible due to the intertwined dependency between cupy.cuda and cupy.core.
I am not 100% confident this will work given the complex dependency graph; I only tested tests/cupy_tests/core_tests/test_raw.py, so it'd be nice to kick off the CI first.
Thanks.

Done. PTAL.

Jenkins, test this please

Jenkins CI test (for commit e762e93ef5d22f7184de2ae73c229071bea8282b, target branch master) failed with status FAILURE.

Ah, let me rebase after breakfast.😅

Had to rebase to fix the import path in the test added in #3201. PTAL.

Jenkins, test this please

Jenkins CI test (for commit 72844bc42844602460297170d8ec9412a2404292, target branch master) failed with status FAILURE.

Jenkins, test this please

Jenkins CI test (for commit c359d1a012862575b0f189c9f9a52a196ffa71d5, target branch master) failed with status FAILURE.

c23302e should fix it. The problem is that the tests need to be updated due to the code fix, but not in the fix itself.

Jenkins, test this please

Jenkins CI test (for commit c23302e6b0e7f30b6d1c886b9678c004fabce12c, target branch master) succeeded!

Thanks again!


[realsense2] Update to v2.18.0

Update realsense2 port to librealsense v2.18.0.
Add OpenNI2 driver option.

@vicroms Why did you do this operation?
What should I do something next?

@UnaNancyOwen
I had a local branch of this PR for testing that became outdated, I had to merge it with master in order to get regression results from the CI system.
Please feel free to revert my commits if they had an adverse effect.
Also, the CI build reported regressions on x86, x64, and x64-static that I haven't been able to reproduce locally, which is strange... I'll queue a fresh build and wait for results.

@vicroms I fixed some problem.

Hi @UnaNancyOwen
Sorry for the long delay. I tried installing realsense2[core,tools,openni2]:x64-windows locally, but my build fails with the following log output:
It looks like the build is not finding the installed OpenNI2 headers.
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\CL.exe /c
    /I"D:\vcpkg\buildtrees\realsense2\src\v2.18.0-5ace468cc5\realsense2"
    /I"D:\vcpkg\buildtrees\realsense2\src\v2.18.0-5ace468cc5\src"
    /I"D:\vcpkg\buildtrees\realsense2\src\v2.18.0-5ace468cc5\include"
    /I"D:\vcpkg\buildtrees\realsense2\src\v2.18.0-5ace468cc5\third-party\glfw\include"
    /Z7 /W3 /WX- /diagnostics:classic /MP /O2 /Oi /D WIN32 /D _WINDOWS /D NDEBUG /D _UNICODE
    /D NOMINMAX /D ELPP_THREAD_SAFE /D ELPP_NO_DEFAULT_LOG_FILE /D BUILD_EASYLOGGINGPP
    /D HWM_OVER_XU /D ENFORCE_METADATA /D RS2_USE_WMF_BACKEND /D UNICODE /D __SSSE3__
    /D _CRT_SECURE_NO_WARNINGS /D "CMAKE_INTDIR=\"Release\"" /D _UNICODE /D UNICODE /Gm-
    /MD /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"rs-color.dir\Release\\"
    /Fd"rs-color.dir\Release\vc141.pdb" /Gd /TC /FC /errorReport:queue  /utf-8
    "D:\vcpkg\buildtrees\realsense2\src\v2.18.0-5ace468cc5\examples\C\color\rs-color.c"
.
.
.
30> D:\vcpkg\buildtrees\realsense2\src\v2.18.0-5ace468cc5\wrappers\openni2\src\rs2base.h(3):
    fatal error C1083:
        Cannot open include file: 'Driver/OniDriverAPI.h':
        No such file or directory (compiling source file
            D:\vcpkg\buildtrees\realsense2\src\v2.18.05ace468cc5\wrappers\openni2\src\Rs2Base.cpp)

@vicroms Thanks, I fixed it. Please re-confirm.

Looks like that fixed the build with the OpenNI feature, however we still have problems in the CI machine.
Specifically, it fails in the configure step when trying to fetch libusb from git.
Can you make it so that it depends on the libusb installed by vcpkg?
-- Use external libusb
CMake Error at D:/downloads/tools/cmake-3.12.4-windows/cmake-3.12.4-win32-x86/share/cmake-3.12/Modules/ExternalProject.cmake:2324 (message):
  error: could not find git for clone of libusb
Call Stack (most recent call first):
  D:/downloads/tools/cmake-3.12.4-windows/cmake-3.12.4-win32-x86/share/cmake-3.12/Modules/ExternalProject.cmake:3100 (_ep_add_download_command)
  CMake/external_libusb.cmake:4 (ExternalProject_Add)
  CMake/windows_config.cmake:41 (include)
  CMakeLists.txt:17 (os_set_flags)

libusb port can not be installed on my environments.
Were you able to install it? vcpkg install libusb:x64-windows

I'm able to install libusb:x64-windows.
I'm using the latest portfile version from master 1.0.22-1.
Can you see why it fails for you in the output logs?
PS D:\github\vcpkg> ./vcpkg install libusb:x64-windows --no-binarycaching
The following packages will be built and installed:
    libusb[core]:x64-windows
Starting package 1/1: libusb:x64-windows
Building package libusb[core]:x64-windows...
-- Downloading https://github.com/libusb/libusb/archive/v1.0.22.tar.gz...
-- Extracting source D:/github/vcpkg/downloads/libusb-libusb-v1.0.22.tar.gz
-- Using source at D:/github/vcpkg/buildtrees/libusb/src/v1.0.22-f45a56be59
-- Building msvc/libusb_dll_2017.vcxproj for Release
-- Building msvc/libusb_dll_2017.vcxproj for Debug
-- Installing: D:/github/vcpkg/packages/libusb_x64-windows/share/libusb/copyright
-- Installing: D:/github/vcpkg/packages/libusb_x64-windows/include/libusb-1.0/libusb.h
-- Performing post-build validation
-- Performing post-build validation done
Building package libusb[core]:x64-windows... done
Installing package libusb[core]:x64-windows...
Installing package libusb[core]:x64-windows... done

It is this error https://github.com/libusb/libusb/issues/207.
It seems to be occure problem on multi-byte character locale such as Japanese.
I think that it should make the same fix as this patch to libusb port.
c:\vcpkg\buildtrees\libusb\x64-windows-rel\v1.0.22-f45a56be59\libusb\strerror.c(111): error C2001: newline in constant [C:\vcpkg\buildtrees\libusb\x64-windows-rel\v1.0.22-f45a56be59\msvc\libusb_dll_2017.vcxproj]
c:\vcpkg\buildtrees\libusb\x64-windows-rel\v1.0.22-f45a56be59\libusb\strerror.c(117): error C2001: newline in constant [C:\vcpkg\buildtrees\libusb\x64-windows-rel\v1.0.22-f45a56be59\msvc\libusb_dll_2017.vcxproj]

Can you make it so that it depends on the libusb installed by vcpkg?

@vicroms I tried it, but I gave up because it was difficult for me at least. :'(

Update to 2.19 is being handled in PR #5777
@UnaNancyOwen
Can the scope of this PR be reduced to adding NI driver support?
I seem to recall that working OK at least locally.

@vicroms No, OpenNI2 driver is included since RealSense SDK v2.16.2 (or later). However, This port is RealSense SDK v2.16.1 in the current vcpkg (master/HEAD).
Therefore, It is necessary to update RealSense SDK to v2.16.2 (or later) to implement OpenNI2 driver option.  (I suggest to implement this option after merged #5777. )

@UnaNancyOwen
Thanks for the PR!


Remove version: WinMerge.WinMerge version 2.16.6

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://sourceforge.net/projects/winmerge/files/stable/2.16.6/WinMerge-2.16.6-Setup.exe/download
Status Code: 200
(Automated message - build 897)

Close with reason: Package still available.;


bug about reload tmux config

this error came out after i reload my tmux config in a session
cut -c3- ~/.tmux.conf | sh -s _apply_configuration' returned 127
but if i start a new session . no such error

Hello @rmGFW 👋
Does the problem still exist with the current master branch?
Please make sure you kill all tmux processes with tmux kill-server or pkill -f tmux 🙏


implemented air gapped installation with API Airgapped option

Signed-off-by: Mohamed Belgaied<EMAIL_ADDRESS>
What this PR does / why we need it:
This PR implements the first working RKE2 provider for air-gapped RKE2 clusters with multiple Controlplane and multiple worker nodes. It has been only tested with CAPD.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #39
Fixes #40
Fixes #42
Fixes #43
Fixes #44
Fixes #47
Special notes for your reviewer:
Checklist:

[X] squashed commits into logical changes
[ ] includes documentation
[X] adds unit tests -- only on a couple of functions
[ ] adds or updates e2e tests

Thanks for the review and the good ideas for further improvements @richardcase . This begins to feel like a real project that can bring value to users.


New Feature request: Delete a Project

I want to blow away my test project, I want a way to delete/archive the data so it doesn't show on the landing page.

Due to the way the we need to store historical data, we can't delete the project.  As for archiving, a ticket already exists: https://github.com/projectjellyfish/api/issues/394


Rps integration test flicker

See https://app.circleci.com/pipelines/github/statechannels/monorepo/5910/workflows/bfd40557-e3b9-48f3-9572-44d19f9eca66/jobs/23560/steps

Just saw this test fail here.

Curious if @geoknee you have any recent insights on this?

@snario This test failed last 3 days ago, for a different reason: https://app.circleci.com/pipelines/github/statechannels/monorepo/6599/workflows/2a43f493-fbe6-43d9-b6d7-f37659f79f8a/jobs/28298
By my reckoning it has since passed 25+ times.
There were some recent changes to RPS, but I don't know if they would have an impact on the flicker frequency.


chore(gulp): make gulp release-update-package-versions more resilient

By handling tag names like v5.1.1\n and by failing on error rather than silently giving up on the task.
I found this was necessary when playing with/working on the release process/gulp scripts. Apparently the getLastTag() and getTagFromTagString(tagString) functions are highly dependent on the current state of your local git repo (whether or not you have fetched recently) and what the name of the previous tag is (it was expecting values like v2.0.0-alpha.4-7-gc936d0b instead of v5.1.1\n). I fixed this to support both, returning the appropriate tag name instead of an empty string (which would result in an undefined array element returned from the componentsWithChanges() helper function).
Also, if an error was encountered during the release-update-package-versions task (e.g. an unhandled rejection), the error would not be logged, the build would not fail, and the task would not complete (would timeout I suppose). This affected the parent release-prepare task too. This was fixed by returning the promise instead of attempting to handle the done callback manually.

I think this is a huge step forward.


delayed_delta indexing correctly, but leaving delta flag set to false

Pat, I'm using ts-delayed-delta on a project and thing seem to work fine when I search, except that the delta column is never set back to false by the delta reindexing task.
What I'm finding out is that as I add new records to the DB, the delta task is processing an increasing number of them. And if I look at the DB, the delta flag is never set to false for those new records (it is only set to false when I do a ts:rebuild)
indexing index 'transaction_delta'...
collected 1 docs, 0.0 MB
sorted 0.0 Mhits, 100.0% done
total 1 docs, 99 bytes
total 0.010 sec, 9467 bytes/sec, 95.62 docs/sec
total 3 reads, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
total 9 writes, 0.000 sec, 0.1 kb/call avg, 0.0 msec/call avg
rotating indices: successfully sent SIGHUP to searchd (pid=36846).
[Worker(host:pi.local pid:36850)] Job Thinking Sphinx: Process transaction_delta (id=39) COMPLETED after 0.1610
[Worker(host:pi.local pid:36850)] Job Thinking Sphinx: Mark 121 in transaction_core as deleted (id=40) RUNNING
[Worker(host:pi.local pid:36850)] Job Thinking Sphinx: Mark 121 in transaction_core as deleted (id=40) COMPLETED after 0.0053
[Worker(host:pi.local pid:36850)] 2 jobs processed at 9.8449 j/s, 0 failed

and then after adding another transaction:
indexing index 'transaction_delta'...
collected 2 docs, 0.0 MB
sorted 0.0 Mhits, 100.0% done
total 2 docs, 198 bytes
total 0.011 sec, 17128 bytes/sec, 173.01 docs/sec
total 3 reads, 0.000 sec, 0.1 kb/call avg, 0.0 msec/call avg
total 9 writes, 0.000 sec, 0.2 kb/call avg, 0.0 msec/call avg
rotating indices: successfully sent SIGHUP to searchd (pid=36846).
[Worker(host:pi.local pid:36850)] Job Thinking Sphinx: Process transaction_delta (id=41) COMPLETED after 0.1240
[Worker(host:pi.local pid:36850)] Job Thinking Sphinx: Mark 124 in transaction_core as deleted (id=42) RUNNING
[Worker(host:pi.local pid:36850)] Job Thinking Sphinx: Mark 124 in transaction_core as deleted (id=42) COMPLETED after 0.0032
[Worker(host:pi.local pid:36850)] 2 jobs processed at 14.1306 j/s, 0 failed

I'm sure I'm missing something obvious...
here's my index:
ThinkingSphinx::Index.define :transaction,
                             :with => :active_record,
                             :delta => ThinkingSphinx::Deltas::DelayedDelta do
  has :account_id, :user_id, :type, :created_at
  indexes 'cast(transactions.amount/100 as decimal(10,2))', :as => :amount, :sortable => true
  indexes :card_name, :sortable => true
  indexes :card_type
...
  indexes :card_receipt_number
  indexes :card_address
  indexes :card_city
  indexes :card_postal_code
  indexes :card_phone
  indexes account(:name), :as => :account_name
  indexes [user(:first_name),user(:last_name)], :as => :username
end

And this is my Gemfile:
gem 'rails', '3.2.14'
...
gem 'delayed_job', '4.0.0'
gem 'delayed_job_active_record', '4.0.0'
gem 'thinking-sphinx', '3.0.4'
gem 'ts-delayed-delta', '2.0.0'

Hi Pat,
In our Project, there are 30,000 records in a table.
Suppose we are updating some columns in this table for 9000 existing records and running delta index.
so all these 9000 records have been set delta as true for indexing.
As you are saying, delta will not set to false after re-indexing.(Actullay this re-indexing is taking 30 min)
After re-indexing, if user creates a new record in this table, sphinx will rotate all 9001 records instead of 1 record.(Again re-index will take 30 min instead of milliseconds)
can you help me on this issue.


[Bug]: 2024_07 BCR breaks snowflake_user.foo.default_secondary_roles when unset

Terraform CLI Version
1.9.1
Terraform Provider Version
0.92.0
Terraform Configuration
resource "snowflake_user" "dev3229" {
  name         = "DEV3229"
  login_name   = "DEV3229"
  comment      = "A user of snowflake."
  disabled     = false
  must_change_password = false

  default_secondary_roles = null
}

Category
category:resource
Object type(s)
snowflake_user
Expected Behavior
default_secondary_roles should be null, and prior to the 2024_07 behavior change, this worked as expected. Additionally, after applying the above infrastructure, a subsequent terraform plan should plan cleanly with no diffs reported, which also worked as expected prior to the behavior change.
Actual Behavior
It's no longer possible to set this at null, or set it to an empty list, without plan diffs.
Steps to Reproduce

Apply the 2024_07 behavior change.
Apply the above HCL which uses default_secondary_roles = null (or which doesn't specify default_secondary_roles at all). This will apply cleanly.
Run a terraform plan and you'll see diffs like this:

  # module.sandbox3_application.snowflake_user.dev3229 will be updated in-place
  ~ resource "snowflake_user" "dev3229" {
      ~ default_secondary_roles = [
          - "ALL",
        ]
        id                      = "DEV3229"
        name                    = (sensitive value)
        # (12 unchanged attributes hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

Hmm, that's weird, try applying again maybe?
Now it gets even weirder because now the diff looks like this on every subsequent plan:

  # module.sandbox3_application.snowflake_user.dev3229 will be updated in-place
  ~ resource "snowflake_user" "dev3229" {
      ~ default_secondary_roles = [
          - jsonencode([]),
        ]
        id                      = "DEV3229"
        name                    = (sensitive value)
        # (12 unchanged attributes hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

Try setting it to an empty list instead of null. Apply again.
All subsequent diffs still look like this:

  # module.sandbox3_application.snowflake_user.dev3229 will be updated in-place
  ~ resource "snowflake_user" "dev3229" {
      ~ default_secondary_roles = [
          - jsonencode([]),
        ]
        id                      = "DEV3229"
        name                    = (sensitive value)
        # (12 unchanged attributes hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

How much impact is this issue causing?
Low
Logs
No response
Additional Information
No response
Would you like to implement a fix?

[ ] Yeah, I'll take it 😎

Hey @jrobison-sb. Thanks for reaching out to us.
We release v0.95 with user resource changes today. I'll check if it needs adjustments to work correctly with this bundle.

Hey @jrobison-sb. We have just released v0.95.0 of the provider.
default_secondary_roles were replaced with default_secondary_roles_option. Please consult the migration guide.


.github: Add markdownlint

This adds a linter to catch common markdown formatting errors.
The linter used is markdownlint-cli2 which is available on all platforms
and has an associated Github Action to automate these checks in CI.
Configuration is checked in at .markdownlint-cli2.yaml.
You may run the check locally using markdownlint-cli2.
Or you may install the extension for VSCode:
DavidAnson.vscode-markdownlint

Any provisions for running this check locally?

Yes. Added to the commit message.

Rebase and pushed @tamird


Add support for gpt-4o-2024-08-06

Description
Adding support for the newly released gpt-4o-2024-08-06 model.
Fixes # (issue)
New Package?
Did I fill in the tool.llamahub section in the pyproject.toml and provide a detailed README.md for my new integration or package?

[x] Yes
[ ] No

Version Bump?
Did I bump the version in the pyproject.toml file of the package I am updating? (Except for the llama-index-core package)

[ ] Yes
[ ] No

Type of Change
Please delete options that are not relevant.

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

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[ ] I stared at the code and made sure it makes sense

Suggested Checklist:

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I ran make format; make lint to appease the lint gods

@logan-markewich when is the next release to be able to utilize this model?


use Js.Array2

Current dependencies on/for this PR:

master

PR #285   👈

This comment was auto-generated by Graphite.


race condition in sendWindowSize

==================
WARNING: DATA RACE
Read at 0x00c0001d0000 by goroutine 25:
  github.com/lucas-clemente/quic-go/internal/flowcontrol.(*baseFlowController).sendWindowSize()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/base_flow_controller.go:60 +0x51
  github.com/lucas-clemente/quic-go/internal/flowcontrol.(*connectionFlowController).SendWindowSize()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/connection_flow_controller.go:42 +0x4d
  github.com/lucas-clemente/quic-go/internal/flowcontrol.(*streamFlowController).SendWindowSize()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/stream_flow_controller.go:110 +0x96
  github.com/lucas-clemente/quic-go.(*sendStream).Write()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:98 +0x588
  github.com/lucas-clemente/quic-go.(*stream).Write()
      <autogenerated>:1 +0xcf
  NGN/common/sm-quic-conn.(*Conn).Write()
      /home/go/src/NGN/common/sm-quic-conn/conn.go:311 +0x101
  NGN/common/sm-conn.SendSMHeader()
      /home/go/src/NGN/common/sm-conn/sm-conn.go:165 +0x55a
  NGN/common/sm-conn.SMhandshake()
      /home/go/src/NGN/common/sm-conn/sm-conn.go:224 +0x1a1
  main.forwardConnection()
      /home/go/src/NGN/cmd/client/client.go:319 +0xbd2

Previous write at 0x00c0001d0000 by goroutine 15:
  github.com/lucas-clemente/quic-go/internal/flowcontrol.(*baseFlowController).AddBytesSent()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/base_flow_controller.go:46 +0x79
  github.com/lucas-clemente/quic-go/internal/flowcontrol.(*connectionFlowController).AddBytesSent()
      <autogenerated>:1 +0x61
  github.com/lucas-clemente/quic-go/internal/flowcontrol.(*streamFlowController).AddBytesSent()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/stream_flow_controller.go:106 +0xa6
  github.com/lucas-clemente/quic-go.(*sendStream).getDataForWriting()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:232 +0x55e
  github.com/lucas-clemente/quic-go.(*sendStream).popStreamFrameImpl()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:178 +0x366
  github.com/lucas-clemente/quic-go.(*sendStream).popStreamFrame()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:155 +0xa9
  github.com/lucas-clemente/quic-go.(*stream).popStreamFrame()
      <autogenerated>:1 +0x86
  github.com/lucas-clemente/quic-go.(*framerI).AppendStreamFrames()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/framer.go:95 +0x44d
  github.com/lucas-clemente/quic-go.(*packetPacker).composeNextPacket()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/packet_packer.go:349 +0x5b3
  github.com/lucas-clemente/quic-go.(*packetPacker).PackPacket()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/packet_packer.go:264 +0x3cd
  github.com/lucas-clemente/quic-go.(*session).sendPacket()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/session.go:1105 +0x22b
  github.com/lucas-clemente/quic-go.(*session).sendPackets()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/session.go:1013 +0x6f4
  github.com/lucas-clemente/quic-go.(*session).run()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/session.go:426 +0x1688
  github.com/lucas-clemente/quic-go.(*client).establishSecureConnection.func1()
      /home/go/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.11.2/client.go:269 +0x85

Goroutine 25 (running) created at:
  main.XXX()
      XXX/client.go:250 +0x79f
  main.clientMain()
      XXX/client.go:168 +0x6a8
  main.(*program).Run()
      XXX/client.go:569 +0x139

Can you provide some details on how to reproduce this?
We're running all of our integration tests with race detector, and this never showed up.

Hi
I got it with running app with dlv and race flag.. read/write is with tight loop with heavy load (fast.com)
I'll check how often I get it.

I can repeate this without fast.com:
test client sends packets my proxy app, test server replies to packets one by one.
usually one of the 4 first hits the race.

Could you upload a minimal example that triggers this bug? We have quite a lot of integration tests, and we're running them with race detector on our CI, but for some reason it doesn't catch this one. Being able to reproduce this would be super helpful in fixing this race condition.

do you have test case for several streams having continious data (not just http request/reply) ?
could it be that http-reply takes some time to generate and problem does not appear in your tests ?
or it is just dlv with race that triggers false positive race condition.
I can do it, but probably not very soon.

We have all those test, and none of them ever showed a race condition.

@apmattil Any updates on this?

sorry, I can not do anything for this in next tree weeks.
I'll try then provide you a version to repeate issue.
On Sat, Aug 10, 2019 at 7:11 PM Marten Seemann<EMAIL_ADDRESS>wrote:

@apmattil https://github.com/apmattil Any updates on this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lucas-clemente/quic-go/issues/2013?email_source=notifications&email_token=AE42IFBPATBDZGXII53PVALQD3SEZA5CNFSM4IF4I4B2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4AQMEI#issuecomment-520160785,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE42IFDHQ6ML4ETZ5WG3XKDQD3SEZANCNFSM4IF4I4BQ
.

I got now stripped down version, but I would not like to put it as public.
where could I upload it ?

Maybe create a Gist?

too many files to cut and paste, could I just upload tarball to somewhere ?
On Tue, Aug 27, 2019 at 12:12 PM Marten Seemann<EMAIL_ADDRESS>wrote:

Maybe create a Gist https://gist.github.com/?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lucas-clemente/quic-go/issues/2013?email_source=notifications&email_token=AE42IFGZSMAEACZSDELV4N3QGTVZNA5CNFSM4IF4I4B2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5HCHCI#issuecomment-525214601,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE42IFEEHFH6NIXKWRC3P6LQGTVZNANCNFSM4IF4I4BQ
.

Ok, feel free to upload it anywhere you like.

please try to download it from here :
https://fex.safemove.net/fop/jg8ZBEcA/stripped2.tgz
On Tue, Aug 27, 2019 at 12:58 PM Marten Seemann<EMAIL_ADDRESS>wrote:

Ok, feel free to upload it anywhere you like.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lucas-clemente/quic-go/issues/2013?email_source=notifications&email_token=AE42IFDR6A4KUQQYDJ2AZ3TQGT3GFA5CNFSM4IF4I4B2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5HGL4Y#issuecomment-525231603,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE42IFFU7GWX6YLWNDK65UDQGT3GFANCNFSM4IF4I4BQ
.

@apmattil Thanks for the file. I was asking for a minimal example, not 3500 lines of code though.

I stripped about 60% of code, if I would spend more time to strip it I
could get it smaller.
But if you can repeat the issue with that we should be good ?
Problem probably is that window variable is shared and it just shows up
when you have multiple sessions created with short interval.
On Tue, Aug 27, 2019 at 1:41 PM Marten Seemann<EMAIL_ADDRESS>wrote:

@apmattil https://github.com/apmattil Thanks for the file. I was asking
for a minimal example, not 3500 lines of code though.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lucas-clemente/quic-go/issues/2013?email_source=notifications&email_token=AE42IFCUWH737PC7WHHLLOLQGUAF5A5CNFSM4IF4I4B2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5HJYBQ#issuecomment-525245446,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE42IFGXTTHBDICMOSBBGZLQGUAF5ANCNFSM4IF4I4BQ
.

A minimum working example shouldn't have maybe 100-200 lines of code, not thousands. I'd have to spend many hours to understand what your code doing.

I can understand it would be really hard to understand first revision of
code (my first real go code), but the problem at raceback trace has only 3
frames of my code. As I see it you really do not need to understand rest of
my code.
Problem points to baseFlowController.AddBytesSent() and
sendWindowSize.sendWindowSize() where c.bytesSent is shared between go
routines. Other is doing handshake ? and one (mine) is doing write.
baseFlowController is for all streams of the session ? so c.bytesSent needs
mutex ?
==================

WARNING: DATA RACE
Read at 0x00c0001e8000 by goroutine 27:
github.com/lucas-clemente/quic-go/internal/flowcontrol.(*connectionFlowController).SendWindowSize()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/base_flow_controller.go:60
+0x3f
github.com/lucas-clemente/quic-go/internal/flowcontrol.(*streamFlowController).SendWindowSize()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/stream_flow_controller.go:110
+0xa2
github.com/lucas-clemente/quic-go.(*sendStream).Write()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:98 +0x349
github.com/lucas-clemente/quic-go.(*stream).Write()
:1 +0x6f
NGN/common/sm-quic-conn.(*Conn).Write()
/home/go/src/striped/NGN/common/sm-quic-conn/conn.go:363 +0x9d
NGN/common/sm-conn.SendSMHeader()
/home/go/src/striped/NGN/common/sm-conn/sm-conn.go:157 +0x305
NGN/common/sm-conn.SMhandshake()
/home/go/src/striped/NGN/common/sm-conn/sm-conn.go:216 +0xbb
main.forwardConnection()
/home/go/src/striped/NGN/cmd/client/client.go:248 +0x501
Previous write at 0x00c0001e8000 by goroutine 14:
github.com/lucas-clemente/quic-go/internal/flowcontrol.(*baseFlowController).AddBytesSent()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/base_flow_controller.go:46
+0x55
github.com/lucas-clemente/quic-go/internal/flowcontrol.(*connectionFlowController).AddBytesSent()
:1 +0x4d
github.com/lucas-clemente/quic-go/internal/flowcontrol.(*streamFlowController).AddBytesSent()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/internal/flowcontrol/stream_flow_controller.go:106
+0xa1
github.com/lucas-clemente/quic-go.(*sendStream).getDataForWriting()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:232 +0x2be
github.com/lucas-clemente/quic-go.(*sendStream).popStreamFrameImpl()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:178 +0x1cf
github.com/lucas-clemente/quic-go.(*sendStream).popStreamFrame()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/send_stream.go:155 +0x56
github.com/lucas-clemente/quic-go.(*stream).popStreamFrame()
:1 +0x53
github.com/lucas-clemente/quic-go.(*framerI).AppendStreamFrames()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/framer.go:95 +0x2ca
github.com/lucas-clemente/quic-go.(*packetPacker).composeNextPacket()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/packet_packer.go:349 +0x1c2
github.com/lucas-clemente/quic-go.(*packetPacker).PackPacket()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/packet_packer.go:264 +0x18f
github.com/lucas-clemente/quic-go.(*session).sendPacket()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/session.go:1105 +0xce
github.com/lucas-clemente/quic-go.(*session).sendPackets()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/session.go:1013 +0x1d0
github.com/lucas-clemente/quic-go.(*session).run()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/session.go:426 +0xa8f
github.com/lucas-clemente/quic-go.(*client).establishSecureConnection.func1()
/home/go/go/pkg/mod/
github.com/lucas-clemente/quic-go@v0.11.2/client.go:269 +0x65

On Tue, Aug 27, 2019 at 3:05 PM Marten Seemann<EMAIL_ADDRESS>wrote:

A minimum working example shouldn't have maybe 100-200 lines of code, not
thousands. I'd have to spend many hours to understand what your code doing.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lucas-clemente/quic-go/issues/2013?email_source=notifications&email_token=AE42IFF3WMZLIES4ET4VZJDQGUJ67A5CNFSM4IF4I4B2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5HP4FQ#issuecomment-525270550,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE42IFFWMCRZJ4NTQOSWJULQGUJ67ANCNFSM4IF4I4BQ
.

These function should only be called from the session’s run loop. If this weren’t the case, we’d get failures in of our integration tests.
I suspect the error is somewhere in your code (e.g. things would get racy if you call Write on the same stream from multiple Go routines), but I won’t dig through 3500 lines to locate it.

backtrace of go routine 14 is all there.. my code does not call anything in
it.. that started at c.session.run()
My calls Write() of stream.. about 100% sure of the same session.
On Tue, Aug 27, 2019 at 4:56 PM Marten Seemann<EMAIL_ADDRESS>wrote:

These function should only be called from the session’s run loop. If this
weren’t the case, we’d get failures in of our integration tests.
I suspect the error is somewhere in your code (e.g. things would get racy
if you call Write on the same stream from multiple Go routines), but I
won’t dig through 3500 lines to locate it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lucas-clemente/quic-go/issues/2013?email_source=notifications&email_token=AE42IFGJPKJWT7LEF57LATTQGUXANA5CNFSM4IF4I4B2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5H2ICQ#issuecomment-525313034,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE42IFDSG5FN4LSGGSM7ZUDQGUXANANCNFSM4IF4I4BQ
.

Closing this issue for now. I don’t see anything actionable here, and the code provided is orders of magnitude too complex to be helpful for debugging.
Feel free to reopen once you have a minimal example that triggers the supposed issue.

Hi
This race condition was made by me.
I had added SendWindowSize() to sendStream.Write() for logging when I was debugging congestion problem.
Sorry again.


"Use Webjobs" checklist item is missing a configuration recommendation.

The checklist contains the item "Use Webjobs", but the "Configuration recommendations" section is missing this item

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

ID: 3b4b1013-1137-d8db-da28-4db0e1f52e53
Version Independent ID: 3b4b1013-1137-d8db-da28-4db0e1f52e53
Content: Azure App Service and reliability - Microsoft Azure Well-Architected Framework
Content Source: well-architected/service-guides/azure-app-service/reliability.md
Service: waf
GitHub Login: @martinekuan
Microsoft Alias: martinek

Thank you for your feedback. We have opened internal ticket #183345 on our backlog to investigate this issue.


key direction should be specified in client config

When I specify tls_auth in the client config, the key-direction isn't put in the client config.
openvpn::client { 'myclient':
 server        => 'myserver',
 remote_host   => '<IP_ADDRESS>',
 port          => '443',
 proto         => 'tcp',
 tls_auth      => 'true',
}

The resulting client config contains the PSK (tls-auth), but not the key-direction. Connecting a client with that config to the server results in an HMAC error. Putting key-direction 0 in the client config fixes this issue.
The following is a workaround:
openvpn::client { 'myclient':
 server        => 'myserver',
 remote_host   => '<IP_ADDRESS>',
 port          => '443',
 proto         => 'tcp',
 tls_auth      => 'true',
 custom_options => {
   "key-direction" => "1",
 },
}

Support for tls-crypt, which does not require key-direction, could be added too.
tls-crypt is mutually exclusive with tls-auth and enciphers TLS packets with a shared key, making it
impossible to intercept certificate exchange without this shared key.
tls-crypt was added in OpenVPN 2.4.

+1


[Snyk] Security upgrade @rollup/plugin-commonjs from 21.0.1 to 26.0.0

This PR was automatically created by Snyk using the credentials of a real user.![snyk-top-banner](https://github.com/andygongea/OWASP-Benchmark/assets/818805/c518c423-16fe-447e-b67f-ad5a49b5d123)
Snyk has created this PR to fix 2 vulnerabilities in the npm dependencies of this project.
Snyk changed the following file(s):

packages/node/base/package.json
packages/node/base/package-lock.json

Vulnerabilities that will be fixed with an upgrade:

Issue
Score

Missing Release of Resource after Effective Lifetime SNYK-JS-INFLIGHT-6095116
  141

Regular Expression Denial of Service (ReDoS) SNYK-JS-MINIMATCH-3050818
  45

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
Max score is 1000. Note that the real score may have changed since the PR was raised.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Regular Expression Denial of Service (ReDoS)

Checkmarx One – Scan Summary & Details – 6ca4dc8e-c0bf-4e1f-9057-94722e48b2dd
New Issues

Severity
Issue
Source File / Package
Checkmarx Insight

Aurora With Disabled at Rest Encryption
/rds.tf: [81](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L81)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L1)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [33](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L33)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [17](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L17)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [130](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L130)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [113](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L113)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [49](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L49)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [65](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L65)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: [97](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L97)
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

CVE-2023-42282
Npm-ip-1.1.5
Vulnerable Package

CVE-2023-45133
<EMAIL_ADDRESS>Vulnerable Package

CVE-2023-45133
<EMAIL_ADDRESS>Vulnerable Package

CVE-2024-27088
Npm-es5-ext-0.10.53
Vulnerable Package

CVE-2024-27351
Python-Django-1.2
Vulnerable Package

CVE-2024-29180
Npm-webpack-dev-middleware-5.2.1
Vulnerable Package

CVE-2024-4068
Npm-braces-2.3.2
Vulnerable Package

CVE-2024-4068
Npm-braces-3.0.2
Vulnerable Package

Cx37f28a21-b2a7
Npm-angular-1.8-1.8.2
Vulnerable Package

Cx94a5c81d-63b1
Npm-angular-1.8-1.8.2
Vulnerable Package

Cx9eb96c9b-eb45
Npm-angular-mocks-1.8-1.8.2
Vulnerable Package

Cxcf770dcb-fd21
Npm-angular-1.8-1.8.2
Vulnerable Package

Passwords And Secrets - Generic Access Key
/providers.tf: [10](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/providers.tf# L10)
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Access Key
/lambda.tf: [45](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/lambda.tf# L45)
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Password
/sql.tf: [50](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/sql.tf# L50)
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Password
/instance.tf: [11](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/instance.tf# L11)
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Password
/instance.tf: [45](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/instance.tf# L45)
Query to find passwords and secrets in infrastructure code.

Sensitive Port Is Exposed To Entire Network
/ec2.tf: [83](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/ec2.tf# L83)
A sensitive port, such as port 23 or port 110, is open for the whole network in either TCP or UDP protocol

Sensitive Port Is Exposed To Entire Network
/ec2.tf: [83](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/ec2.tf# L83)
A sensitive port, such as port 23 or port 110, is open for the whole network in either TCP or UDP protocol

CVE-2023-26159
Npm-follow-redirects-1.14.6
Vulnerable Package

CVE-2023-44270
Npm-postcss-7.0.39
Vulnerable Package

CVE-2023-44270
Npm-postcss-8.3.11
Vulnerable Package

CVE-2024-25710
Maven-org.apache.commons:commons-compress-1.15
Vulnerable Package

CVE-2024-25710
Maven-org.apache.commons:commons-compress-1.20
Vulnerable Package

CVE-2024-28849
Npm-follow-redirects-1.14.6
Vulnerable Package

CVE-2024-28863
Npm-tar-4.4.19
Vulnerable Package

CVE-2024-28863
Npm-tar-6.1.11
Vulnerable Package

CVE-2024-29041
Npm-express-4.17.1
Vulnerable Package

CVE-2024-4067
Npm-micromatch-3.1.10
Vulnerable Package

CVE-2024-4067
Npm-micromatch-4.0.4
Vulnerable Package

Unpinned Actions Full Length Commit SHA
/build.yaml: [15](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//.github/workflows/build.yaml# L15)
Pinning an action to a full length commit SHA is currently the only way to use an action as an immutable release. Pinning to a particular SHA helps...

Unpinned Actions Full Length Commit SHA
/semgrep.yml: [14](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//.github/workflows/semgrep.yml# L14)
Pinning an action to a full length commit SHA is currently the only way to use an action as an immutable release. Pinning to a particular SHA helps...

Unpinned Actions Full Length Commit SHA
/pull_request.yaml: [14](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//.github/workflows/pull_request.yaml# L14)
Pinning an action to a full length commit SHA is currently the only way to use an action as an immutable release. Pinning to a particular SHA helps...

IAM Access Analyzer Not Enabled
/roles.tf: [3](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/roles.tf# L3)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/instance.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/instance.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/trail.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/alicloud/trail.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/random.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/random.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/rds.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/alicloud/rds.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/neptune.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/neptune.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/networks.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/gcp/networks.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/mssql.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/mssql.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/sql.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/sql.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/gke.tf: [6](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/gcp/gke.tf# L6)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/security_center.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/security_center.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/ec2.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/ec2.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/logging.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/logging.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/gcs.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/gcp/gcs.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/aks.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/aks.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/s3.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/s3.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/bucket.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/oracle/bucket.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/key_vault.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/key_vault.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/lambda.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/lambda.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/application_gateway.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/application_gateway.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/kms.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/kms.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/networking.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/networking.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/es.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/es.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/db-app.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/db-app.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/resource_group.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/resource_group.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/instances.tf: [3](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/gcp/instances.tf# L3)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/app_service.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/app_service.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/storage.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/storage.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/big_data.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/gcp/big_data.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/rds.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/rds.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/ecr.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/ecr.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/iam.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/iam.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/policies.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/azure/policies.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/eks.tf: [19](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/eks.tf# L19)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/compartment.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/oracle/compartment.tf# L1)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

IAM Access Analyzer Not Enabled
/elb.tf: [2](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/elb.tf# L2)
IAM Access Analyzer should be enabled and configured to continuously monitor resource permissions

Fixed Issues

Severity
Issue
Source File / Package

Cx6b921f00-d395
Npm-vm2-3.9.5

S3 Bucket SSE Disabled
/ec2.tf: [271](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/ec2.tf# L271)

S3 Bucket SSE Disabled
/s3.tf: [65](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/s3.tf# L65)

S3 Bucket SSE Disabled
/s3.tf: [89](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/s3.tf# L89)

S3 Bucket SSE Disabled
/s3.tf: [42](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/s3.tf# L42)

S3 Bucket SSE Disabled
/s3.tf: [1](https://github.com/ACN-APPSAS/terragoat/blob/snyk-fix-ed96c47a0f06665b6eff0dc47962b7fc//terraform/aws/s3.tf# L1)

CVE-2007-2379
Npm-jquery-3.6.0

CVE-2014-6071
Npm-jquery-3.6.0

CVE-2023-2251
Npm-yaml-1.10.2


Missing compiler flag support for building with additional debug support

When building with
DebugInfo = DebugInfoMode.Full;
bForceDebugInfo = true;
bUsePDBFiles = true;
bUseFastPDBLinking = false;

We encounter the following error on many files:
[2024-11-20T09:19:59Z ERROR octobuild::worker] Cannot cache task X.cpp: Error: Found unknown command line arguments: ["/FS", "/Fd..\\Intermediate\\Build\\Win64\\x64\\UnrealEditor\\Development\\UnrealEd\\SharedPCH.UnrealEd.Cpp20.h.pdb"]
I interpret this as neither /FS nor /Fd are supported currently.
Any help adding them would be aprecciated 🙇

I interpret this as neither /FS nor /Fd are supported currently.

You interpret it correctly.
Added support for /FS. /Fd is a bit less trivial, need to think about it.

As a workaround for missing support for /Fd, just disable bUsePDBFiles. It should not reduce debuggability of the code, only the way debug info is stored.


A certain username was modified at the phase of mqtt connect

Hi @knolleary
I found that somehow with a certain username, it would be modified at the phase of mqtt connect.
If the connection is only executed in void loop(), with this username magellanop.Project1 would be modified to \357\277\275\002gellanop.Project1. However, it is fine with magellanop.Project or magellanop.Qroject1.
But if the connection is executed in void setup(), magellanop.Project1 would not be modified.
The MQTT CONNECT packages that executing in setup() and loop() are as below:
In loop():

In setup():

I am puzzled that why would 6d 61 be changed to bd 02
Repost my sketch here:

#include <SPI.h>
#include <Ethernet2.h>
#include <PubSubClient.h>
#include "Authentication_OneFile.h"
#include <sha1.h>
#include <Base64.h>

#define username "magellanop.Project1"
#define CONSUMER_SECRET "mysecret"
#define CLIENT_VERSION "0.0.1"
char* password;

byte mac[] = { 0x90, 0xA2, 0xD2, 0x0F, 0xF7, 0x7F };
EthernetClient ethClient;
PubSubClient client( ethClient );
IPAddress serverName(192,168,1,153);
#define clientName "7ff70fd2a290"
#define topicName "hello/topic"

void connect(){
  while(!client.connected()){
    Serial.println(F("Attempting MQTT conncection..."));

    // the username will be modified here, even test with hard code
    //if(!client.connect("7ff70fd2a290", "magellanop.Project1", "testpassword" )){
    if(!client.connect(clientName, username, password )){
      Serial.print(F("failed, rc="));
      Serial.print(client.state());
      Serial.println(F(" try again in 5 seconds"));
      delay(5000);
    }
  }
}

void setup(){
  Serial.begin(115200);
  pinMode(ledPower,OUTPUT);
  client.setServer(serverName, 1883);

  Serial.print(F("Initializing Ethernet..."));
  if(Ethernet.begin(mac)) {
    Serial.print(F("Connected with IP: "));
    Serial.println(Ethernet.localIP());
  }

  Authentication auth( username, CONSUMER_SECRET, CLIENT_VERSION );
  password = auth.getPassword();

  // connect(); // connect in setup, the username would not be changed
}

void loop(){

  if(!client.connected()){
    Serial.println(F("Reconnecting..."));
    connect();
  }else{
    Serial.println(F("Publish data..."));
    client.publish(topicName,"Hi Peggy");
  }

  client.loop();
}

This is very strange. Putting the connect() in the loop() function and comment out in the setup(), the username would be modified to a weird string. This is not an issue to this library.


Ready: Add isNotFound parameter to data type responses

Fixes #536 (CLIENTS-552).

Tests pass for me, and the code is good.
One question: there seems to be at least 2 things in this PR 1. the change as described 2. a general refactor.
I think 2 PRs would have been better.

I can't get the iTests to run, I just get java.lang.AssertionError: Update operation failed: com.basho.riak.client.core.NoNodesAvailableException even after using java.lang.AssertionError: Update operation failed: com.basho.riak.client.core.NoNodesAvailableException. I can ping the nodes, and member-status says they're a cluster and happy.
Will wait for @alexmoore to get in rather than persist at this point

👍 Tests pass, code looks good.

@russelldb I'll try to at least split them into different commits in the future.  I've been avoiding a "mega-refactor" PR, just because it would be terrible to review everything all at once.  reformatting as I go seems to work though.

+1
Tests pass. Looks good. WFM


Compatibility goals?

This looks like a very interesting project, but I am wondering what the goal is, is this supposed to be compatible with a large fraction of packages on Hackage? Or is that simply not a goal?
For example, parsec-<IP_ADDRESS> has tabs and carriage return in its cabal file. I was able to adjust the parser to accept that. But it also uses braces, which I hadn't seen before. And now I don't know whether it makes sense to start to have MicroCabal parse this.
Since I suspect that the code will be more minimal if unnecessary features are avoided, it's a trade-off: Either the code is uglier and more compatible, or it is prettier and less compatible. To align contributors to the project goals, it would make sense to specify the goals in the readme file.

I think it makes sense for the parser to be compatible. It's hard to do without trial-and-error since there is no documented grammar.
I'm happy to take any fixes you make.

The goal is to be able to build all packages from Hackage. It's far from there.

The goal is to be able to build all packages from Hackage.

That's good to hear.

there is no documented grammar.

There is this, but it doesn't seem to cover indention (possibly because it is context-sensitive then?) comment in Fields/Parser.hs.
There is a paper with a modification of Happy that provides an academic underpinning of indention: Principled Parsing for Indention-Sensitive Languages. Thanks to @TeofilC for making me aware of this.

My parser can deal with Haskell style indentation, so it should be adaptable to Cabal too.
I had not noticed the comment in the field parser. I wonder how accurate it is?


new rule remove-empty-list-markers & minor fix for format-tags-in-yaml

remove-empty-list-markers will simply remove bullet points you have left empty.

The minor fix for format-tags-in-yaml is related to the fact, that yaml-keys with - were not matched with the current regex using \w+. This is most notable when using the breadcrumbs plugin, where you have a a yaml line like BC-tag-note: '#coding' where you explicitly need the #. By changing \w+ to [A-Za-z-]+, I fixed that. You can see the difference here:

with \w+: https://regex101.com/r/reyLZq/1
with [A-Za-z-]+: https://regex101.com/r/0L4vd5/2

thanks!


Table Flip Scroll

I recently came across a cool way to show tables, called flip-scroll.
Any plans to add this to Bootstrap in the future?

You seem to have the wrong repo. This is the Ratchet repository.
Bootstrap's is https://github.com/twbs/bootstrap


Allow Resource Creation with conditions

Is this a BUG REPORT or FEATURE REQUEST?:
FEATURE REQUEST
What happened:
By default, all the resources will be created in asynchronous calls. There might be a chance where one of the k8s resource is dependent on other resource. For example: To create RoleBinding you must have Role and Service Account already exists. We should allow option to provide the dependency structure if one needed.
This should be part of Namespace Template as well as ManagedNamespace (well, behind the scenes its using same struct)
What you expected to happen:
For ex: In following template, controller should create service account only after Role is created successfully.
    resource:
      - name: local_service_account2
        type: ServiceAccount
        dependsOn: local_role
        serviceAccount:
          apiVersion: v1
          kind: ServiceAccount
          metadata:
            name: ${env}-sa2
            namespace: ${name}
      - name: local_role
        type: Role
        role:
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: ${env}-role
          rules:
            - apiGroups:
                - ""
              resources:
                - pods/attach
                - pods/exec
              verbs:
                - get
                - list
                - watch
                - create

How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

manager version
Kubernetes version :

$ kubectl version -o yaml

Other debugging information (if applicable):
- controller logs:

$ kubectl logs

This should also provide the condition if resource have to be created only once and should not be overwritten after that. This might be useful in a case where administrator can provide default value but namespace owners can always update based on their requirements directly on the managed cluster itself using any CICD tool.


Create Heading component

Not much you need to do here, mostly a wrapper around <h1>, <h2>, etc.
Eg:
import { Html } from '@react-email/html';
import { Heading } from '@react-email/heading';

const Email = () => {
  return (
    <Html lang="en">
      <Heading size="1">Lorem</Heading>
      <Heading size="2">Ipsum</Heading>
      <Heading size="3">Dolor</Heading>
      <Heading size="4">Sit</Heading>
      <Heading size="5">Amet</Heading>
      <Heading size="6">Consectetur</Heading>
    </Html>
  );
};

Another idea is to have a more native HTML experience and create something like <H1>, <H2>, etc.


Photo fixes

Fix #219 and fix #220
The image's contextmenu should now be translated. Deleting images should delete the db entry and the image (original and thumb) from the disk.
Please review @eScienceCenter/spacialists

Any error in lumen or js console? Are you really on latest commit? :wink:

:thinking:  There where no errors, but while thinking about it: can I even test this on a testing VM if images are not stored on the very machine? I think that's might be the issue. Will re-check this on Tuesday.

Yes, lumen instance and data storage must be on the same machine. The Storage driver is configured as local. Maybe it is possible to mount our test server's disk as storage on your vm.

Deleting worked if tested directly on the server


using core.Resource in a Dart transformer leads to Build error

From @simon-void on September 19, 2015 16:15
using the core.Resource class in a Barback transformer leads to a build error in the project referencing that transformer. In case of my transformer project this error looks like this:
Build error: Transform InsertCopyright on {your project} threw error: Load Error for "package:simple_resource_loading_transformer/copyright.txt": SocketException: OS Error: Connection refused
a little bit more explanation in this stackoverflow ticket
Copied from original issue: dart-lang/sdk#24382

Can you post a minimal reproduction repo?

you can link to my simple_resource_loading_transformer:
dependencies:
  simple_resource_loading_transformer:
    git: https://github.com/simon-void/simple_resource_loading_transformer.git

transformers:
- simple_resource_loading_transformer

or do you mean i should create such a minimal project that uses this transformer?

This is by design. As pub loads transformers, it spins up short-lived servers to serve different phases of the transformer loading process. The Resource API tries to re-use these servers, which no longer exist.
You should really be using the Barback Transform APIs to load assets anyway. That's what it's for.


Add: Hover States & Social Icon CSS changes

-Added hover state to social icons
-Changed footer color to light-opacity pink so GitHub icon could be seen when scrolled up to the darker background videos at the top of the page.
-Gave .social-icons bottom margin to give icons more breathing room when drawer is open.
-Added text stroke for read-ability.

Couldn't have done it better myself! Will merge this immediately 👍


constructor_standings(year, race) always returns constructor_standings(year) only

Line 709 of pyergast.py is:
url = 'http://ergast.com/api/f1/{}/constructorStandings.json?limit=1000'.format(year, race)
But it should be:
url = 'http://ergast.com/api/f1/{}/{}/constructorStandings.json?limit=1000'.format(year, race)
This error causes the following bug:
When you try to get constructor standings for a certain race in a year, you always get the final constructor standings.

By the way, I am going to submit a PR solving this.

Merged. Thanks!


[Scalability] - Using UpdateRecomm API optimize code to handle horizontal scaling of pods

/v1/recommendations POST/UPDATE/DELETE/GET
/v1/experiments
/v1/results

this is ready and can be closed


 Initial work on customizing LG

What does this PR do?

Fixes # (issue)
Feature/Issue validation/testing
Please describe the tests that you ran to verify your changes and relevant result summary. Provide instructions so it can be reproduced.
Please also list any relevant details for your test configuration.

[ ] Test A
Logs for Test A

[ ] Test B
Logs for Test B

Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a Github issue? Please add a link
to it if that's the case.
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

Thanks for contributing 🎉!

Confirmación
Karliz garcia
El El lun, 1 de julio de 2024 a las 14:03, albertodepaola <
@.***> escribió:

@.**** commented on this pull request.
In src/llama_recipes/utils/dataset_utils.py
https://github.com/meta-llama/llama-recipes/pull/550#discussion_r1661487461
:

@@ -54,6 +53,7 @@ def get_custom_dataset(dataset_config, tokenizer, split: str):
"grammar_dataset": get_grammar_dataset,
"samsum_dataset": get_samsum_dataset,
"custom_dataset": get_custom_dataset,

"llamaguard_dataset": get_custom_dataset,

Probably will be apparent when running it, but the function should be
called differently from the "custom" dataset.
—
Reply to this email directly, view it on GitHub
https://github.com/meta-llama/llama-recipes/pull/550#pullrequestreview-2152161233,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BFDKPYP7A3MWOIRBCJ4HOM3ZKGY25AVCNFSM6AAAAABITEPCKOVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDCNJSGE3DCMRTGM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


feat: adding binary send/receive example for 5.2.1 release

With the upcoming 5.2.1 Notecard firmware release, we can now perform efficient binary data transfer. This example shows relatively easy to use send and receive file examples (the binary data is the blues logo as a jpeg).

@zfields @haydenroche5 I think this is ready for another review when you have a chance


Add tele-broadcast.cr

Happy to see it is now a part of Awesome Crystal list ❤ 💎
What's next?

announce it on Crystal ANN dev hub
share it on Reddit channel
say about it if you created something the community is looking for


Feature: Add indices to analysis_data

Łukasz noted that the lack of indices on analysis_data was making it very slow. Early testing indicates orders of magnitude better performance when filling affiliations.

Pushed with a21f12436d13ec5de8cf923843cc66e9fb188073. Appears to be working and providing 6x performance when filling affiliations (in my tests at least).


pull request for e2e test at 12/11/2016 14:15:02

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

optest/docs/updated_at.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Define ResolveTypeRequest

Now that the foundations are merged, requestify type resolution. I'll eventually use this to migrate all the callers of TypeChecker::validateType once their TypeLocs have been stripped.

@swift-ci test

@swift-ci test source compatibility

⛵


Better documentation

Coverage remained the same at 29.96% when pulling 644f858894a55dd4134cab5df2453540587c5c1b on kishikawakatsumi-patch-1 into 9a6ee1c0a20cf3d41b8e1597561d3884ee04eda6 on master.


Add tests to datasets.public_dataset to reach 100% test coverage

Current Behavior
Test coverage is currently at 47%:
https://app.codecov.io/gh/aeye-lab/pymovements/blob/main/src/pymovements/datasets/public_dataset.py
Expected Behavior
Test coverage should be at 100%
Minimum acceptance criteria

[ ] 100% test coverage

fixed by #264


how to speed up the response time?

The response of the interface request provided by this client is super slow. It usually takes several minutes to get no result. For example, when requesting http://localhost:5099/getDeployments?offset=510&max=10, how could I possibly use this for production environment?

Hi,
sorry for the late reply. Just tested it using http://localhost:5099/docs/
and got immediate results.
It can be you didn't get connected to enough peers, which increases the "hopping". Did you get many disconnects prior to executing?

no, just stuck for a long time for any new(different params) request, do i need to open my port to everyone?