WIP: Kubernetes v1.0.3 v0.6.1 alpha

Follow-up of #191
Things to do when merging:

[ ] update https://github.com/GoogleCloudPlatform/kubernetes/pull/8832#issuecomment-130318613
[ ] update URLs in https://github.com/mesosphere/mesosphere-docs/tree/kubernetes-v1.0.1-v0.6.0-alpha1
[ ] merge https://github.com/mesosphere/mesosphere-docs/tree/kubernetes-v1.0.1-v0.6.0-alpha1

there are still references to app-id in config.json

tag v1.0.3-v0.6.1-alpha does not exist on Docker Hub anymore, it should be v1.0.3-v0.6.2-alpha.

While testing this, I noticed the kubernetes container does not by itself download depending containers. The logs show errors like:
dockerd[885]: No such image: gcr.io/google_containers/kube2sky:1.11
dockerd[885]: No such image: gcr.io/google_containers/skydns:2015-03-11-001
dockerd[885]: No such image: gcr.io/google_containers/etcd:2.0.9
dockerd[885]: No such image: gcr.io/google_containers/exechealthz:1.0

manually pulling all images solved the problem.

Also, when visiting http://<dcos-load-balancer>/service/kubernetes/, I get the following error:
{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {},
  "status": "Failure",
  "message": "no endpoints available for \"kube-ui\"",
  "code": 500
}

(still investigating this)

Thanks for testing this out! We're still working out a few bugs, as you've
noticed. I'm especially curious as to why dockerd failed to pull the gcr.io
images.
On Sat, Aug 15, 2015 at 4:54 AM, Jean Mertz<EMAIL_ADDRESS>wrote:

Also, when visiting http:///service/kubernetes/, I
get the following error:
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "no endpoints available for "kube-ui"",
"code": 500
}
(still investigating this)
—
Reply to this email directly or view it on GitHub
https://github.com/mesosphere/universe/pull/200#issuecomment-131317605.

@JeanMertz thanks for reporting the issues. I have fixed the weburi and the wrong container version in the package.

Perhaps the GCR infra was experiencing some growing pains?
https://groups.google.com/forum/#!topic/google-containers/FNrNJkm8R3g
On Sat, Aug 15, 2015 at 4:53 AM, Jean Mertz<EMAIL_ADDRESS>wrote:

While testing this, I noticed the kubernetes container does not by itself
download depending containers. The logs show errors like:
dockerd[885]: No such image: gcr.io/google_containers/kube2sky:1.11
dockerd[885 http://gcr.io/google_containers/kube2sky:1.11dockerd[885]: No such image: gcr.io/google_containers/skydns:2015-03-11-001
dockerd[885 http://gcr.io/google_containers/skydns:2015-03-11-001dockerd[885]: No such image: gcr.io/google_containers/etcd:2.0.9
dockerd[885 http://gcr.io/google_containers/etcd:2.0.9dockerd[885]: No such image: gcr.io/google_containers/exechealthz:1.0
manually pulling all images solved the problem.
—
Reply to this email directly or view it on GitHub
https://github.com/mesosphere/universe/pull/200#issuecomment-131317415.

Another thing I noticed,
tailing the log of the mesos-kube container shows:
* host IP: <IP_ADDRESS>
* prepare service apiserver
* prepare service controller-manager
* prepare service kube_dns
* prepare service kube_ui
* prepare service scheduler
* prepare service etcd-server

I haven't investigated yet, but looking at the bootstrap script, it shouldn't stop at that part of the log, and the last line should be * Monitoring apiserver, controller-manager and scheduler....
Again, haven't investigated, but might be useful to you guys. Nice job so far in making this work :+1:

Another error I'm seeing (not related to mesos/kubernetes):
System error: open /sys/fs/cgroup/memory/mesos/3c2fd0d2-68d1-4750-a4ed-35fe71e04299/system.slice/docker-afca5e30c06f4c442839fae49cca178a04f6ba142177195e802c9b257fdd46ab.scope/memory.memsw.limit_in_bytes: no such file or directory"

full log:
Aug 15 14:37:18 ip-10-0-1-154.eu-central-1.compute.internal mesos-slave[627]: E0815 14:37:18.986838   630 slave.cpp:3112] Container 'ded1cb19-d511-46fd-be2c-604324566196' for executor 'kubernetes.20839f76-435b-11e5-8b07-023ad9ee6b9f' of framework '20150814-143850-2281963530-5050-1109-0000' failed to start: Failed to 'docker run -d -c 1126 -m 838860800 -e PORT_25505=25505 -e SERVICE_CLUSTER_IP_RANGE=<IP_ADDRESS>/24 -e MARATHON_APP_VERSION=2015-08-15T14:36:30.401Z -e DEFAULT_CONTAINER_MEM_LIMIT=64.0 -e HOST=ip-10-0-1-154.eu-central-1.compute.internal -e APISERVER_SECURE_PORT=25500 -e PORT_25502=25502 -e GLOG_v=1 -e PORT_25500=25500 -e SCHEDULER_SERVICE_ADDRESS=<IP_ADDRESS> -e ENABLE_ETCD_SERVER=true -e DEBUG=false -e SCHEDULER_DRIVER_PORT=25501 -e K8SM_FAILOVER_TIMEOUT=300 -e PORT4=25501 -e DNS_DOMAIN=cluster.local -e DNS_REPLICAS=1 -e MESOS_TASK_ID=kubernetes.20839f76-435b-11e5-8b07-023ad9ee6b9f -e ENABLE_DNS=true -e PORT=25502 -e APISERVER_PORT=25502 -e PORT_25504=25504 -e SCHEDULER_PORT=25504 -e K8SM_MESOS_MASTER=zk://master.mesos:2181/mesos -e FRAMEWORK_WEBURI=http://kubernetes.marathon.mesos:25502 -e PORTS=25502,25500,25504,25505,25501 -e PORT3=25505 -e PORT1=25500 -e DEFAULT_DNS_NAME=kubernetes.marathon.mesos -e FRAMEWORK_NAME=kubernetes -e DEFAULT_CONTAINER_CPU_LIMIT=0.25 -e CONTROLLER_MANAGER_PORT=25505 -e MARATHON_APP_ID=/kubernetes -e PORT0=25502 -e PORT_25501=25501 -e DNS_SERVER_IP=<IP_ADDRESS> -e PORT2=25504 -e MESOS_SANDBOX=/mnt/mesos/sandbox -v /var/lib/mesos/slave/slaves/20150814-143850-2281963530-5050-1109-S3/frameworks/20150814-143850-2281963530-5050-1109-0000/executors/kubernetes.20839f76-435b-11e5-8b07-023ad9ee6b9f/runs/ded1cb19-d511-46fd-be2c-604324566196:/mnt/mesos/sandbox --net host --name mesos-ded1cb19-d511-46fd-be2c-604324566196 mesosphere/kubernetes:v1.0.3-v0.6.2-alpha': exit status = exited with status 1 stderr = time="2015-08-15T14:37:18Z" level=fatal msg="Error response from daemon: Cannot start container afca5e30c06f4c442839fae49cca178a04f6ba142177195e802c9b257fdd46ab: [8] System error: open /sys/fs/cgroup/memory/mesos/3c2fd0d2-68d1-4750-a4ed-35fe71e04299/system.slice/docker-afca5e30c06f4c442839fae49cca178a04f6ba142177195e802c9b257fdd46ab.scope/memory.memsw.limit_in_bytes: no such file or directory"

So far, only a full restart of the slave has solved this problem.
I can even reproduce it with a simple container:
% docker run --rm -m 128m alpine sh
FATA[0000] Error response from daemon: Cannot start container 65d9795a6f85eee087c0eda62b017354a2480942754963a916c770ea50c20dbe: [8] System error: open /sys/fs/cgroup/memory/mesos/3c2fd0d2-68d1-4750-a4ed-35fe71e04299/system.slice/docker-65d9795a6f85eee087c0eda62b017354a2480942754963a916c770ea50c20dbe.scope/memory.memsw.limit_in_bytes: no such file or directory

It does not happen for cpu-shares:
% docker run --rm -c 2 alpine echo works
works

It only happens after I ran dcos package install kubernetes (when using https://github.com/mesosphere/universe/archive/kubernetes-v1.0.3-v0.6.1-alpha.zip as the package source)

Also @sttts, using the latest version:

the bootstrap script i still "stuck" at * prepare service etch-server
http://<dcos-load-balancer>/service/kubernetes works :+1:
http://<dcos-load-balancer>/service/kubernetes/ui redirects to http://<dcos-load-balancer>/ui, resulting in a 404
http://<dcos-load-balancer>/service/kubernetes/ui/ redirects to http://<dcos-load-balancer>/api/v1/proxy/namespaces/kube-system/services/kube-ui/#/dashboard/, resulting in a 404

getting there :+1:

@jdef not sure, will have to try again soon and see if it works, for now, I've set the cloud-config to auto-download the images on boot.

Yeah, the redirects for kube-ui are wrong and unfortunately hard-coded. There should be a issue for that already.
The full url should work (if the docker pull worked fine):
/service/kubernetes/api/v1/proxy/namespaces/kube-system/services/kube-ui/#/dashboard/

Ah right. docker images does indeed not show the kube-ui image. I'll have to retry that part in a couple of hours when I get behind a machine again.

Correction, the kube-ui image is available, but I still can't access the UI.
This is the current state of affairs after using this PR to start the Kubernetes service:
% kubectl get nodes
NAME                                          LABELS                                                               STATUS
ip-10-0-1-154.eu-central-1.compute.internal   kubernetes.io/hostname=ip-10-0-1-154.eu-central-1.compute.internal   Ready
ip-10-0-1-155.eu-central-1.compute.internal   kubernetes.io/hostname=ip-10-0-1-155.eu-central-1.compute.internal   Ready

% kubectl get pods
NAME      READY     STATUS    RESTARTS   AGE

% docker logs mesos-29701ea1-d00b-4390-8bb7-802bdb0bbbf9
* Environment:
    SCHEDULER_PORT=25504
    PORT_25500=25500
    PORT_25501=25501
    APISERVER_PORT=25502
    DEBUG=false
    PORT_25502=25502
    HOSTNAME=ip-10-0-1-154.eu-central-1.compute.internal
    HOME=/
    FRAMEWORK_NAME=kubernetes
    PORT_25504=25504
    PORT=25502
    PORT_25505=25505
    GLOG_v=1
    APISERVER_SECURE_PORT=25500
    SERVICE_CLUSTER_IP_RANGE=<IP_ADDRESS>/24
    SCHEDULER_DRIVER_PORT=25501
    MARATHON_APP_ID=/kubernetes
    PORTS=25502,25500,25504,25505,25501
    DEFAULT_DNS_NAME=kubernetes.marathon.mesos
    DEFAULT_CONTAINER_MEM_LIMIT=64.0
    PORT0=25502
    PORT1=25500
    PORT2=25504
    PORT3=25505
    ENABLE_DNS=true
    DNS_REPLICAS=1
    CONTROLLER_MANAGER_PORT=25505
    DNS_DOMAIN=cluster.local
    PORT4=25501
    ENABLE_ETCD_SERVER=true
    DEFAULT_CONTAINER_CPU_LIMIT=0.25
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    MESOS_SANDBOX=/mnt/mesos/sandbox
    FRAMEWORK_WEBURI=http://kubernetes.marathon.mesos:25502
    K8SM_FAILOVER_TIMEOUT=300
    DNS_SERVER_IP=<IP_ADDRESS>
    HOST=ip-10-0-1-154.eu-central-1.compute.internal
    MARATHON_APP_VERSION=2015-08-15T14:36:30.401Z
    PWD=/
    K8SM_MESOS_MASTER=zk://master.mesos:2181/mesos
    MESOS_TASK_ID=kubernetes.387fa60c-435c-11e5-8b07-023ad9ee6b9f
    SCHEDULER_SERVICE_ADDRESS=<IP_ADDRESS>

* Sandbox: /mnt/mesos/sandbox
* Version: v1.0.3-v0.6.2
* Mesos master leader: zk://master.mesos:2181/mesos
* DNS name: kubernetes.marathon.mesos
* apiserver: kubernetes.marathon.mesos:25502
* secure apiserver: kubernetes.marathon.mesos:25500
* scheduler: kubernetes.marathon.mesos:25504
* scheduler driver port: 25501
* framework name: kubernetes
* framework_weburi: http://kubernetes.marathon.mesos:25502
* controller manager: kubernetes.marathon.mesos:25505
* service proxy: leader.mesos
* host IP: <IP_ADDRESS>
* prepare service apiserver
* prepare service controller-manager
* prepare service kube_dns
* prepare service kube_ui
* prepare service scheduler
* prepare service etcd-server

Strangely, there's this:
% docker exec -it 05c93a9605ca sh

# now inside kubernetes-mesos container
% export KUBERNETES_MASTER=http://kubernetes.marathon.mesos:25502
% /opt/kubectl get rc
CONTROLLER   CONTAINER(S)   IMAGE(S)   SELECTOR   REPLICAS
% /opt/kubectl create -f /opt/kube-ui-rc.yaml
Error from server: error when creating "/opt/kube-ui-rc.yaml": replicationControllers "kube-ui-v1" already exists
% /opt/kubectl get services
NAME             LABELS                                    SELECTOR   IP(S)        PORT(S)
k8sm-scheduler   component=scheduler,provider=k8sm         <none>     <IP_ADDRESS>   10251/TCP
kubernetes       component=apiserver,provider=kubernetes   <none>     <IP_ADDRESS>   443/TCP
% /opt/kubectl create -f /opt/kube-ui-svc.yaml
Error from server: error when creating "/opt/kube-ui-svc.yaml": service "kube-ui" already exists
% cat /mnt/mesos/sandbox/log/kube_ui/current
replicationcontrollers/kube-ui-v1
services/kube-ui
I0815 14:45:47.999999       0 respawn.xx:0] sleeping 3s before respawning kube_ui
I0815 14:45:50.999999       0 respawn.xx:0] sleeping 3s before respawning kube_ui

Okay, I have found out the problem, but not yet the solution:
% kubectl describe pod kube-ui-v1-wtv27 --namespace=kube-system
  Sat, 15 Aug 2015 23:09:06 +0200	Sat, 15 Aug 2015 23:09:06 +0200	1	{kubelet ip-10-0-1-155.eu-central-1.compute.internal}	implicitly required container POD	failed		Failed to start with docker id e13fe38c59ea with error: API error (500): Cannot start container e13fe38c59ea3e28ffbb9c45020936cea3387a908f3cb16bcba3437200e7051e: [8] System error: Invalid unit type.

@JeanMertz any luck with the "invalid unit type" error? I experienced the same today:
https://gist.github.com/jdef/a539a0b11eb6c3ab41a7

docker version I'm using when experiencing the "invalid unit type" error:
$ docker version
Client version: 1.6.2
Client API version: 1.18
Go version (client): go1.4.2
Git commit (client): 7c8fca2-dirty
OS/Arch (client): linux/amd64
Server version: 1.6.2
Server API version: 1.18
Go version (server): go1.4.2
Git commit (server): 7c8fca2-dirty
OS/Arch (server): linux/amd64

@jdef unfortunately no, I haven't found a solution yet. I am running the Docker version currently shipping in the latest CoreOS stable version. I believe it's also 1.6.2 but am unable to verify right now.
"Good to know" that it's not just my setup causing problems. Will investigate more in a couple of days.

strongly suspect some strange systemd integration problem: see https://github.com/systemd/systemd/blob/master/src/core/dbus-manager.c#L720
        t = unit_name_to_type(name);
        if (t < 0)
                return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid unit type.");

in docker1.6.2:./vendor/src/github.com/docker/libcontainer/cgroups/systemd/apply_systemd.go:
func getUnitName(c *configs.Cgroup) string {
        return fmt.Sprintf("%s-%s.scope", c.Parent, c.Name)
}
...
func (m *Manager) Apply(pid int) error {
        var (
                c          = m.Cgroups
                unitName   = getUnitName(c)
                slice      = "system.slice"
                properties []systemd.Property
        )
...
        if _, err := theConn.StartTransientUnit(unitName, "replace", properties...); err != nil {
                return err
        }
...

Right, so getUnitName returns an invalid systemd unit name. Looking at the code, that would mean either c.Parent or c.Name contains invalid characters?
Given the fact that there is nothing to find on this error, it seems to something we're doing wrong?

added systemd debug to docker.service (Environment=SYSTEMD_LOG_LEVEL=debug) and restarted docker on the slaves. i see this at docker startup (which may be fine, just doc'ing for posterity):
Aug 26 05:17:39 ip-10-0-0-157.ec2.internal systemd[1]: libcontainer-5319-systemd-test-default-dependencies.scope: Scope has no PIDs. Refusing.
Aug 26 05:17:39 ip-10-0-0-157.ec2.internal dockerd[5319]: time="2015-08-26T05:17:39Z" level=info msg="Loading containers: start."

A few minutes later, the executor is trying to die, but is looping forever printing this (over and over) to executor.log:
E0826 05:23:50.433097    5414 kubelet.go:1824] Update channel is closed. Exiting the sync loop.

I updated the executor code to more verbosely log the cgroup-root that is set for the kubelet:
I0826 06:05:50.128595   12875 service.go:137] passing cgroup "/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6" to the kubelet as cgroup root

Here's a dump of the cgroups for the kubelet and proxy processes:
core@ip-10-0-0-158 ~ $ sudo cat /proc/12875/cgroup
9:memory:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
8:perf_event:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
7:blkio:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
6:net_cls,net_prio:/
5:cpuset:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
4:freezer:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
3:cpu,cpuacct:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
2:devices:/mesos/18476fa3-8f24-46ab-a00f-6118e0e3c8b6/kubelet
1:name=systemd:/system.slice/mesos-slave.service
core@ip-10-0-0-158 ~ $ sudo cat /proc/12870/cgroup
9:memory:/kube-proxy
8:perf_event:/kube-proxy
7:blkio:/kube-proxy
6:net_cls,net_prio:/
5:cpuset:/kube-proxy
4:freezer:/kube-proxy
3:cpu,cpuacct:/kube-proxy
2:devices:/kube-proxy
1:name=systemd:/system.slice/mesos-slave.service

Looks like some minor changes went into docker's vendored libcontainer codebase between 1.6.2 and 1.7.0 - not sure how to interpret the impact of them.
Anyway, I suspect this error has something to do with the fact that we're transitively using --cgroup-parent for docker run and that by doing so we're triggering some systemd incompat. The reason that we're using the cgroup-parent feature is to get resource isolation for pods launched by k8s, so rolling it back has serious consequences.

Nothing constructive to add yet, as I've apparently broken my DCOS setup more than before:
$ curl http://<dcos-load-balancer>/service/kubernetes/healthz
ok

$ curl http://<dcos-load-balancer>/service/kubernetes/api/v1
{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {},
  "status": "Failure",
  "message": "the server could not find the requested resource",
  "reason": "NotFound",
  "details": {},
  "code": 404
}

$ kubectl get nodes
error: Server does not support API version 'v1'.

Possibly related: https://issues.apache.org/jira/browse/MESOS-1113

also, after dcos package uninstall kubernetes kube-proxy remains running in some cases

data point: if I remove the cgroup reparenting that we added for resource isolation then pods start right up. The cgroups for the executor then look like this:
core@ip-10-0-1-10 ~ $ sudo cat /proc/11634/cgroup
9:devices:/system.slice/dcos-mesos-slave.service
8:perf_event:/
7:blkio:/system.slice/dcos-mesos-slave.service
6:memory:/mesos/f5ee2564-ea3b-4a7c-8c43-ef01c78e9923
5:cpu,cpuacct:/mesos/f5ee2564-ea3b-4a7c-8c43-ef01c78e9923
4:net_cls,net_prio:/
3:freezer:/mesos/f5ee2564-ea3b-4a7c-8c43-ef01c78e9923
2:cpuset:/
1:name=systemd:/system.slice/dcos-mesos-slave.service

... and the cgroups for a process started within a pod container look like this:
core@ip-10-0-1-10 ~ $ sudo cat /proc/11935/cgroup
9:devices:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope
8:perf_event:/
7:blkio:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope
6:memory:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope
5:cpu,cpuacct:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope
4:net_cls,net_prio:/
3:freezer:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope
2:cpuset:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope
1:name=systemd:/system.slice/docker-207ed6558b054c9eff95e7409032b00cfb763012a7d8139a705c9345e21aba4a.scope

I have concerns re: the differences in the devices (and also the blkio) hierarchies. Docker commentary (in 1.7.0) says this:
       // Even if it's `not found` error, we'll return err because devices cgroup
       // is hard requirement for container security.

in our custom executor we build the docker cgroup-parent param based on the /mesos/xxx group. but it appears that the native mesos containerizer doesn't containerize devices for the executor, so it ends up with a different group (/system.slice/dcos-mesos-slave.service). I suspect that this is causing problems with how docker applies cgroup-parent because we're telling to use a parent group (/mesos/xxx) for the devices hierarchy that doesn't exist.

This is, in fact, related to https://issues.apache.org/jira/browse/MESOS-1113:

docker detects systemd and is very opinionated about how cgroup-parent works in that case

getUnitName() produces "{cgroup-parent}{docker-ctid}.scope" transient-unit name with a Slice property of system.slice

mesos doesn't use systemd dbus to create units (slices or scopes or anything)

mesos cgroups look like "/mesos/{exec-container-id}"

as a result, when docker asks systemd to create a new scope for it's container, using the cgroup-parent specified ('/mesos/{exec-container-id}'), systemd is confused and rejects the request ("Invalid unit type").
Potential solution: mesos could (possibly?) create a 'system-mesos-{exec-container-id}.slice' (via systemd!) which translates to a cgroup of '/system.slice/mesos.slice/mesos-{exec-conainer-id}.slice'. Docker probably needs to stop assuming a Slice property of 'system.slice'. We may then be able to pass into docker a cgroup-parent of '/system.slice/mesos.slice/{exec-container-id}.slice' and docker would (correctly parse the parent cgroup and translate it properly to a unit name, and then) create a scope unit of 'system-mesos-{exec-container-id}-{docker-container-id}.scope' with the correct Slice property ('system-mesos-{exec-container-id}.slice').
I'm still catching up on systemd, so that proposed solution is probably not perfect. It's not clear to me that you can create transient slices, only transient scopes. So I'm not sure how mesos would create executor container slices on the fly.
Any way, because our kubelet-executor uses cgroup-parent to re-parent docker containers under mesos, and docker (on DCOS) is running on systemd, the current implementation will probably never work as-is. We probably need to de-scope pod-resource-isolation-under-mesos for this release.

after ~7 mins kube-ui pod fails, from the scheduler:
I0905 23:47:55.087582     435 scheduler.go:410] task status update "TASK_FAILED" from "SOURCE_SLAVE" for task "pod.917a34e4-5427-11e5-bd18-06cc2761f7b1" on slave "20150905-233345-1812332554-5050-1325-S0" executor "" for reason "REASON_MEMORY_LIMIT" with message "Memory limit exceeded: Requested: 64MB Maximum Used: 64MB\n\nMEMORY STATISTICS: \ncache 8192\nrss 11829248\nrss_huge 6291456\nmapped_file 0\nwriteback 0\nswap 0\npgpgin 3635\npgpgout 2278\npgfault 5380\npgmajfault 0\ninactive_anon 0\nactive_anon 11837440\ninactive_file 0\nactive_file 0\nunevictable 0\nhierarchical_memory_limit 67108864\nhierarchical_memsw_limit<PHONE_NUMBER>854771712\ntotal_cache 16384\ntotal_rss 67092480\ntotal_rss_huge 46137344\ntotal_mapped_file 0\ntotal_writeback 0\ntotal_swap 0\ntotal_pgpgin 146706\ntotal_pgpgout 143608\ntotal_pgfault 452776\ntotal_pgmajfault 0\ntotal_inactive_anon 0\ntotal_active_anon 67100672\ntotal_inactive_file 4096\ntotal_active_file 4096\ntotal_unevictable 0"

Testing:
dcos config set package.sources '["https://github.com/mesosphere/universe/archive/kubernetes-v1.0.3-v0.6.1-alpha.zip"]'
dcos package update --validate

Remove backup config:
rm ~/.dcos/dcos.toml.bak

Does this need a rebase? Why are there so many changes?

It "always" needs a rebase after scripts/build.sh has been run. That's how the repo is working. Binary files...

I think I messed up the last rebase somehow. All of the commits listed are
not ours. Haven't gotten around to trying to clean it up. Not exactly sure
where I went wrong, but the binary index gz file is probably screwing
things up.
On Tue, Sep 15, 2015 at 3:29 PM, Karl Isenberg<EMAIL_ADDRESS>wrote:

Does this need a rebase? Why are there so many changes?
—
Reply to this email directly or view it on GitHub
https://github.com/mesosphere/universe/pull/200#issuecomment-140509284.

squashed all commits into one

@kensipe I think we're finally ready to have this merged, PTAL

@jdef it works as advertised... I walked through the full demo... looks good.   We are making an exception to several of our current standards.  We are in the process of revisiting those standards.  I would like to work with you / your team on bring this service up to that standard.
/cc @elingg
merging!


JSON-RPC: Add support for handler to pass information about the specifics when registering.

So there are two changes here, I have them both in the same PR as the last one depends on the first one.
1 - We needed a way to let the handler to pass information to the registration which at some point later on could be validated or used in any way, so this is a base change for further checks(like client's socket credentials). This defines a new type in the apidefs.h.in because this will eventually be used from the Plugin API.
Please check this commit to see this changes only.
There is also a documentation update here in this commit
2 - The main driver for this change: adding peer's credentials check on rpc calls.
Context:
When moved from traffic_manger admin socket to the new JSONRPC api, the management api restrictions were left out, the only restriction in place was related to the creation of the jsonrpc unix socket(either 700 or 777) just at user level losing the original capability  to check the socket’s peers credentials and allow or deny certain operations, like read only calls(record lookup) vs operation that can change the state of ATS(like a record set). This was a useful method to allow some non-root users to perform some actions while we leave root users to have full access to the API. So this PR also includes the same feature but now on the JSONRPC node.
Please check this  commit to see this changes only.

This is an example of the output you will get when if request an unauthorized rpc  method:
$ traffic_ctl config reload
Server Error found:
[10] Unauthorized action
- [2] Denied privileged API access for uid=1001 gid=1001

The raw json would look like:
   {
      "jsonrpc": "2.0",
      "error":{
         "code": 10,
         "message": "Unauthorized action",
         "data":[
            {
               "code": 2,
               "message":"Denied privileged API access for uid=XXX gid=XXX"
            }
         ]
      },
      "id":"5e273ec0-3e3b-4a81-90ec-aeee3d38073f"
   }

[approve ci autest]

[approve ci autest]

[approve ci autest]


Pipeline Icon is missing on Editor Tab

Currently when a pipeline editor is open the tab does not have an icon like other tabs.

dependent on JL 2.0 rebase

This has been addressed in the 2.0 branch, closing


a few includes less

Coverage decreased (-0.1%) to 96.262% when pulling 6baf1cdddc1d77a3486e5a90e341e51265e874df on less-includes into 3b933085cb31b76d7c2d4ac42ab19a411a02f62d on master.


not work for builtin function

Hi,
I don't know if it is really a bug. I cannot hover, or "go to definition" with builtin function.
I'm using the commit f2b7265.

@chrisduong
I have added the feature that support builtin function


Minor tweaks to the README

A couple of small things we could improve in the README:

[x] Use pip3 instead of pip, on macOS often people have both
[ ] Worth noting that on macOS both chromedriver and geckodriver can be installed with brew install XXX, and that the Safari webdriver ships by default. And also copy in the xattr command you need (below).

The xattr command you need is:
xattr -d com.apple.quarantine /usr/local/bin/chromedriver
xattr -d com.apple.quarantine /usr/local/bin/geckodriver

Done. Can you review the README?
Also, the purpose of xattr is lost on me... what is that for?

Some apple stuff

You need it after installing geckodriver / chromedriver

Sounds good. README has been updated with the improvements 👍


FAQ for the choice of react-native?

When I stumbled upon this project, I was confused - why does elm need react-native to work on mobile? So I asked on #general:

megapctr [10:21 AM]
any thoughts on why elm-native-ui uses react-native rather than cordova or phoneGap? https://github.com/elm-native-ui/elm-native-ui
labbekak [10:30 AM]
React Native has actual native UI
[10:30]
And it's more performant
[10:31]
I think using Elm with cordova is pretty trivial, isn't it?

Are you planning on adding a FAQ section? If so, I'd like to suggest explaining the advantage of react-native there.

It's true that elm can be run using Cordova but it still isn't the same as
a fully native app. Using fully native views instead of web views is much
more performant and most importantly feels like a part of the mobile
ecosystem. React native has the idea that each mobile platform is different
and therefore should be built differently, with different design and
sometimes functionality to fit into the platform. (for example an android
app might have a hamburger button that opens a side menu while an iOS app
might have tabs on the bottom and not menu at all). Cordova is all about
building an app once and running it everywhere pretty much. It's a
different philosophy. Both have their own use cases but since react native
is geared towards performance and a better user experience I think it is
necessary here.
On Tue, 11 Oct 2016 at 11:47 Filip<EMAIL_ADDRESS>wrote:

When I stumbled upon this project, I was confused - why does elm need
react-native to work on mobile? So I asked on #general:
megapctr [10:21 AM]
any thoughts on why elm-native-ui uses react-native rather than cordova or
phoneGap? https://github.com/elm-native-ui/elm-native-ui
labbekak [10:30 AM]
React Native has actual native UI
[10:30]
And it's more performant
[10:31]
I think using Elm with cordova is pretty trivial, isn't it?
Are you planning on adding a FAQ section? If so, I'd like to suggest
explaining the advantage of react-native there.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/elm-native-ui/elm-native-ui/issues/40, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AA2PjZ8CrogKEFZ-r_oLbQ13yloA_DSTks5qy00HgaJpZM4KTY4S
.

Frankly, i will strongly suggest to make elm hook into mobiles SDK or API, i.e NDK or android, and IOS xcode, with this, you are in total control. otherwise, your fate rely on react native application stability and you could be affected if there are unforeseen bugs.  I will be glad if we start from that direction, I believe other developers would volunteer to assist as well

@megapctr Right, this is something I have overlooked -- I have worked with Cordova before and sort of assumed everybody knows of its inherent weakness. Essentially, it's just an outdated mobile browser that can call on certain platform features. It is no replacement for native applications.
@afidegnum Yes, Evan also found it questionable to use even React Native in between the Elm output and the native bridge. Presumably, we could take a look at how RN utilizes JS at the platform level and re-implement a similar thing for Elm Native UI. Obviously, this is way too much to take on by myself, but it's starting to seem like the time is ripe for collaboration on this front.

@afidegnum @ohanhi I totally dig the idea. I'd like to help, but I probably won't be useful since I don't have any knowledge about android/iOS development or elm's Http library internals :disappointed:


Vibe.internal.meta.codegen fixes

Fixed ParameterTuple to have a saner API and take default parameters of different types, and even functions! But you won't be able to access it :-(
Added CloneFunctionDecl, which clones a declaration (think CloneFunction without body).
Added ability to CloneFunction to clone UDAs as well.

@s-ludwig : Anything holding this back ?

Sorry, just me being held back by other things. But apart from the CloneFunction question, LGTM (as well as #1048).

Is there any reason why CloneFunction does not use CloneFunctionDecl internally?

If you're thinking about factoring out the string generation and just adding the semicolon / body, I'd rather not do that: it's unlikely that those will change in the future, and if they do, they're close enough and trivial enough to make changes straightforward, and errors easy to spot.
Or do you have an idea to implement that using the function type ?

Sounds reasonable, they're short enough. Merging.

Thanks ! :)


Update urls in tutorials notebooks

This PR updates the tutorials notebooks with openveda.cloud URLS. It also adds .pre-commit-config.yaml for linting.
https://github.com/NASA-IMPACT/pangeo-notebook-veda-image/pull/27 along with bumping the image  is required for stac_ipyleaflet to run. There's still an error 'message': 'Error caught with collection', 'error': KeyError('item_assets') after those fixes, I think I'll need a pointer on how to debug that.

@maxrjones I'm only seeing the openveda.cloud update in the zonal statistic notebook. The other notebooks were just rerun/minor updates?

Where are you seeing 'message': 'Error caught with collection', 'error': KeyError('item_assets')?

@maxrjones I'm only seeing the openveda.cloud update in the zonal statistic notebook. The other notebooks were just rerun/minor updates?

Yeah, I ran through them all and made minor fixes while updating the URLs. I updated the PR title to be more descriptive.

Where are you seeing 'message': 'Error caught with collection', 'error': KeyError('item_assets')?

That was happening when running https://github.com/NASA-IMPACT/veda-docs/blob/main/notebooks/tutorials/stac_ipyleaflet.ipynb with the image from this PR - https://github.com/NASA-IMPACT/pangeo-notebook-veda-image/pull/27.

Where are you seeing 'message': 'Error caught with collection', 'error': KeyError('item_assets')?

That was happening when running main/notebooks/tutorials/stac_ipyleaflet.ipynb with the image from this PR - NASA-IMPACT/pangeo-notebook-veda-image#27.

I think it would be best to address this in a separate PR.

Where are you seeing 'message': 'Error caught with collection', 'error': KeyError('item_assets')?

That was happening when running https://github.com/NASA-IMPACT/veda-docs/blob/main/notebooks/tutorials/stac_ipyleaflet.ipynb with the image from this PR - NASA-IMPACT/pangeo-notebook-veda-image#27.

I think maybe this needs to be fixed in stac_ipyleaflet https://github.com/MAAP-Project/stac_ipyleaflet/issues/130. I drafted an issue and maybe we can open a PR for it eventually but maybe we should move forward with the other tutorial notebooks?
@maxrjones @smohiudd

Where are you seeing 'message': 'Error caught with collection', 'error': KeyError('item_assets')?

That was happening when running main/notebooks/tutorials/stac_ipyleaflet.ipynb with the image from this PR - NASA-IMPACT/pangeo-notebook-veda-image#27.

I think maybe this needs to be fixed in stac_ipyleaflet MAAP-Project/stac_ipyleaflet#130. I drafted an issue and maybe we can open a PR (it looks like a tiny change) for it eventually but maybe we should move forward with the other tutorial notebooks? @maxrjones @smohiudd

Thanks for opening that issue! 💯 on moving forward with the other notebooks


Dashboard Notes

hi, it is possible create new panel (like status, quotas, etc) called Notes with textarea for some text about server? Thx

In order to do have this you should file an issue to Webmin developers, it is not the theme field of practice.
Please leave a reference to this thread. It's already embedded to Virtualmin installation as far as I'm aware.


Security: Invitation page abuse

It is possible that anyone can receive an invitation, even if they were not assigned as RA to any object,
just by entering  "oidplus:invite_ra$xx$..." in the goto box.
It should be somehow secured.

It turns out that this is already implemented with the method getInvitationText()
The admin itself may invite everyone, even people who have no OID (yet).
So everything's good. No security risk.


Clarification: Anyway to get added, updated, and deleted values on Observables?

Simple question, is there anyway to get the items added, updated, or deleted on the Observables List or Objects?
While it's true that I can always subscribe to the Observers and set the list again on my controllers, it is not practical because by doing so the whole list is refreshed every time the subscription is called. The better approach is to simply add, edit, and delete an item. The list is only populated initially.
Or perhaps are there any library to compare two JSON files for added, updated, or deleted node perhaps?
Thank you very much. I went through the docs and I can't seem to find this information. My apologies if I may have missed this out.

Can you give an example of what you mean? I'm not sure I understand what you mean "Set the list on my controllers"
You can simply add the items for a basic *ngFor in your template and it will handle it's own changes based on the value at that node.
If you mean you dont want to rebuild the array without simply listening to the node then I'd suggest using firebase directly as it will return the snapshot of the items that are changed and expects you to self update your list. Angularfire2 does this for you.
What is the downside in your case at the moment? For us, we use different change detection which we can then trigger when we want so the page doesn't flicker/rebuild durning changes..

What I meant is to listen to the snapshot of the items changed, how do you do that with AngularFire 2?
"we use different change detection which we can then trigger when we want so the page doesn't flicker/rebuild durning changes.."
"If you mean you dont want to rebuild the array without simply listening to the node then I'd suggest using firebase directly as it will return the snapshot of the items that are changed and expects you to self update your list. Angularfire2 does this for you."
this.angularfire.database.list('/accounts').subscribe((accounts) => {
//with this code snippet, everytime an account in the list of accounts get changed, the accounts object on the controller will flicker/rebuild.
this.accounts = accounts;
});
Thanks so much!

@DivineCake you just need a trackBy function so the template knows it shouldn't redraw specific elements to the DOM. See this and this.


Monotonic Increasing TypeId

I love the typeId idea, but we still have a problem in one direction:

While going from true to false currently recreates the large subtree, Incremental DOM may support handling a single deletion.

if (condition) {
  open('div', null, 1);
    text('Hello');
  close('div');
}
open('div', null, 2);
  // Some large subtree
close('div');

What if we enforce that the typeId is a monotonic increasing int? That way we have 3 scenarios:

Scenario
currentNode's typeId
typeId
Behavior

1
5
5
Match!

2
5
4 (anything less than 5)
No match, will not find match in nextSibling direction

3
5
6 (anything more than 5)
No match, may find match in nextSibling direction

The current typeId handles scenario 1 perfectly, and bumbles 2 (it treats any typeId mismatch as a "insert this element before the current"). But it utterly fails 3. But with monotonic increasing, we have the information to decide what to do:

Scenario
Behavior

1
Nothing!

2
Insert element before current element, since its typeId is less

3
Remove current element, progress to next and recheck

Additionally, these should not be some runtime int that increases with every call to open. It has to be statically assigned for us to reap the rewards (though the runtime increasing int will just get us back to the current behavior).
// Good example
// Will never recreate large subtree
function render() {
  if (condition) {
    open('div', null, 1); // Regardless of runtime state, this element is statically "1"
      text('Hello');
    close('div');
  }
  open('div', null, 2); // Ditto
    // Some large subtree
  close('div');
}

// Bad example (Gives us current behavior)
// Will end up recreating large subtree every transition
function render() {
  var i = 0;
  if (condition) {
    open('div', null, i++); // Runtime state determines if this is "1"
      text('Hello');
    close('div');
  }
  open('div', null, i++); // Runtime state determines if this is "1" or "2".
    // Some large subtree
  close('div');
}

Note that the typeId int can be repeated, so this is totally fine:
function li() {
  open('li', null, 1);
  close('li');
}

function ul(lis) {
  open('ul', null, 1);
    for (var i = 0; i < lis.length; i++) li();
  close('ul');
}

So, in dev mode:

Opening an element pushes current "expected" into stack, sets "expected" to -1
All typeIds occurring in this parent element must be > "expected"
Closing the element sets expected to the value popped from stack

It would be nice to be able to also gracefully handle helper functions. For example, you could have:
function render() {
  elementOpen('div');
    if (...) { helperOne(); }
    if (...) { helperTwo(); }
  elementClose('div');

  elementOpen('div');
    if (...) { helperTwo(); }
    if (...) { helperOne(); }
  elementClose('div');
}

So you wouldn't necessarily be able to have a monotonic increasing typeId for both helper functions. This could be solved by setting or passing some sort of "base" typeId, which the helper could add to, but would make generating the code a bit more difficult.
I think the idea good as-is though, just might want to have some mechanism or guidance on how to handle helper functions.

Hmm, good thought.
How about assuming, but not enforcing, monotonic? We warn (in dev mode) when it's violated, and reset the "expected" to the lower value?

Closing since we no longer have typeId and keys no longer need to be unique. We could revisit this for keys, but I think it wouldbe better to handle always reusing, regardless of if the keys are increasing or not.


UML-1886: cookies page updated and banner shown on setting cookie preferences

Purpose
https://opgtransform.atlassian.net/browse/UML-1886
Fixes UML-1866
Approach
Explain how your code addresses the purpose of the change
Learning
Any tips and tricks, blog posts or tools which helped you. Plus anything notable you've discovered about the Use a Lasting Power of Attorney service
Checklist

[X] I have performed a self-review of my own code
[ ] I have added relevant logging with appropriate levels to my code
[ ] New event_codes have been documented on the wiki page
[ ] I have updated documentation (Confluence/GitHub wiki/tech debt doc) where relevant
[X] I have added tests to prove my work
[x] I have added welsh translation tags and updated translation files
[ ] I have run an accessibility tool on any pages I have made changes to and fixed any issues found
[ ] I have notified the Interaction Designer of any content changes so that appropriate screenshots/flow diagram changes can be made
[ ] The product team have tested these changes

Changes:

Cookies page content updated.
On changing cookie preferences, now shows a success banner in the cookies page.
The link in the banner, takes user back to the page they were previously on.
[Above applicable for actor service and viewer service.]

Mmm. Is it not possible to automatically redirect the user to their referring page and show the appropriate flash message there?
Though I think that may need a rework of the flash messages in general.

This user story is likely to get revised [a new ticket in making by Sarah], and the flash message is likely to change to the previous page used was on....like current pattern.


Rootkit

A rootkit would be a useful feature for hiding the client from task manager. Rootkit can also be used to hide client's network connection and files.
What do you think about this @MaxXor?

Ehmm, no.


[patch] Ran 'audit fix' in a couple projects and removed unneeded packages.

Thank you for your pull request!
Please add '[major]', '[minor]', or [patch] to the title to indicate the impact the change has on the code.  Please also provide the following information.

Change Description:
Updating some package dependencies to avoid vulnerabilities.

Do these changes impact command syntax of any of the packages? (e.g., add/remove command, add/remove a command parameter, or update required parameters)
No.

Do these changes impact documentation? (e.g., a tutorial on https://learn.microsoft.com/office/dev/add-ins/overview/office-add-ins)
No.

If you answered yes to any of these please do the following:
> Include 'Rick-Kirkham' in the review
> Make sure the README file is correct
Validation/testing performed:
built and ran automated tests.

/azurepipelines run

/azurepipelines run


Update title of autofill picker dialog

Task/Issue URL: https://app.asana.com/0/488551667048375/1203940129937488/f
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

Current dependencies on/for this PR:

develop

PR #2834   👈

This comment was auto-generated by Graphite.


Design a  monthly challenge

As part of unitaryHACK we are taking part and offering a bounty to two (2) challenge submissions. Additionally, there will be two (2) honorable mentions. Please see the challenge notebook for more details.
Como parte de unitaryHACK estamos participando y ofreciendo una recompensa a dos (2) presentaciones de desafíos. Además, habrá dos (2) menciones honoríficas. Consulta el cuaderno de desafío para obtener más información.

The link to the notebook returns 404

The link to the notebook returns 404

Oh yes my mistake, I solved it

Hi @MaldoAlberto made a PR With My submission added two tasks basic and intermediate with their possible solutions please have a look #64

Hi @AbdullahKazi500  thank you so much for your interest in this issue, with respect your proposal doesn't follow the minimal requirements, you need to explain and describe the problem with the format we mention in [challenge notebook](https://github.com/qosf/monthly-challenges/blob/main/challenge-2023.03-mar/challenge-2023.03-mar.ipynband one of your proposal is a similar idea of a previous task that is here

Hi @MaldoAlberto I created a small challenge in order to test the proposed grading system for another QOSF ticket, perhaps it could fit in this bounty as well, therefore, the PR will be the same as the other challenge, here it is: https://github.com/qosf/qosf.org/pull/107

@MaldoAlberto, hi, I just wanted to ping on this because the deadline is tomorrow or need something else to complete this, or if you deem convenient to push something else to enrichen this brief challenge


Metadata extractor support...

Draft of metadata extractor support; if files show up in the Dropbox with no metadata, (after 2 directory scans)
and we have a metadata extractor defined, run the extractor with the files and hope that that creates the
metadata.  Currently the only way to retry the extraction is to restart.

Wrong repo


Lots of commands don't work if you are launching neovim with fish

E.g. this is incorrect syntax with fish
let preview = '[[ "$(file --mime {})" =~ binary ]] && ' . g:fzf_binary_preview_command . ' || ' . g:fzf_preview_command

Similar to #19.
I plan to add a variable that can set that part.

Added g: fzf_preview_if_binary_command in #58
I can't try because there is no fish environment, but try '[["(file --mime {})" = ~ binary]]'.

Fish equivalent would be 'string match -q -r "binary" (file --mime {})' (though, better use something like "string match -q -r 'binary$' (file --mime-encoding {})")

I'm having issues too when using fish.
As Bannerets said, shouldn't the commands cannot be run with "/bin/bash -c" if bash is required?
Thanks.


Test/OIDC s3 mount

I think I came close - I'm looking in detail at my trust policy and I think a variable might have been off so I can't see the storage. Going to try again tomorrow.

Rebased with main.


Problem with the sample pkread.c

Hello
I try to use pkread.c to read a .p12 file (with a password)
In all my tests, I have an error in PKCS12_verify_mac (line CRYPTO_memcmp(mac, ASN1_STRING_get0_data(macoct), maclen) != 0)) with error PKCS12_R_MAC_VERIFY_FAILURE
If I run the command : openssl.exe  pkcs12 -in file.p12 -passin pass:xxxx -nokeys, I succeed to read .p12 file
Code is similar, but I don't understand why pkread return an error. Is there something that is missing in pkread.c ?
Cordialement
Gilles

Hello
I continueto try to understand without success.
Can somebody make a try ?
Regards
Gilles

you note that your attempts to run openssl.exe pkcs12 failed until you ran specifically:
 openssl.exe pkcs12 -in file.p12 -passin pass:xxxx -nokeys

What were you executing in the failing cases?

no response, marking as inactive, to be closed at the end of 3.4 dev barring further input


Detection rule query update

The OS tags changed in this PR - 2725

Linux -> OS: Linux
macOS -> OS: macOS
Windows -> OS: Windows

The detection rule queries in this repo should be updated to work with both new and old tags

@peasead could you have a look at this PR?

LGTM!


[Performance]: MLP speculator

Proposal to improve performance
No response
Report of performance regression
hi, sorry to trouble! I compared the performance of llama3-8b-instruct with mlp-speculator(llama3-8b-accelerator) and non-speculative version llama3-8b-instruct through offline engine: LLM().generate(), but I did not see any performance improvement.
Details:
For speculative decoding, I use llama3-8b-instruct as main model, llama3-8b-accelerator (https://huggingface.co/ibm-fms/llama3-8b-accelerator) as the speculative model. I set both speculative_draft_tensor_parallel_size and tensor_parallel_size as 1, use_v2_block_manager is set to be True, other parameters are set as default. On sampling, I set temperature as 0.0 and max_tokens as 100, other parameters are set as default. The GPU is NVIDIA H100 80GB HBM3, vllm version is 0.5.4, cuda version is 12. The prompt is the first question from mt_bench dataset, so the batch size should be 1.
Any insights on why there is no speedups observed?
A side question:
It seems that if I initialize an LLM() within a function, it will not free the GPU memory and some other resources automatically, and I need to free the GPU memory manually, is this as expected? If so, is there any suggested complete procedure to avoid leaks?
Misc discussion on performance
No response
Your current environment (if you think it is necessary)
The output of `python collect_env.py`

@hustxiayang how long are the prompts you’re using? There was an issue where the spec decoding gets disabled when the num of tokens is > 2k. This is now fixed and will be in the upcoming 0.5.5 release.

Hi, @njhill ,thanks for response, it was just 22 tokens


Create ClusterIP instead of Nodeport

Can we have a clusterIp created instead of Nodeport when installing via helm ?

we are going to have than on next release

Awesome! I am planning to add it to Civo cloud market place will keep kubevious team posted

Sounds great. Thanks

Resolved in v0.7.


homebridge-rpi running in a LXC container - warning: vcgencmd: cannot spawn vcgencmd: ENOENT

Iv'e installed homebrige in a unprivileged LXC container on rasperry buster.
Homebridge-rpi runs in this container. The container uses it's own IP-Adress via virtual bridge.
The idea is, connect to the real rasperry (also the host of the container) as a remote configuratrion. The getState script and the following steps on the remote raspi was successfully installed, the rpi -H 192.168.... info command on the homebridge raspi (container) works fine.
But every 15 sek. there is an warning in the homebridge log -> RPI-DEV Server: warning: vcgencmd: cannot spawn vcgencmd: ENOENT.
I've talking with Eric on discord abut this issue,
we checked my configuration it seems to be correct. He asked me to open an issue and provide the contents of /proc/cpuinfo and of /proc/1/sched in the container as well as on the host.
Container:-------------------------------------------------------------------------------------
There is no content in /proc/....
lxc@homebridgedev:~$ cat /proc/cpuinfo
[..]
Hardware        : BCM2711
Revision        : b03114
Serial          :<PHONE_NUMBER>c2ebe1
Model           : Raspberry Pi 4 Model B Rev 1.4
lxc@homebridgedev:~$ cat /proc/1/sched
systemd (1, #threads: 1)
se.exec_start                                :       9096519.620594
se.vruntime                                  :<PHONE_NUMBER>51
se.sum_exec_runtime                          :           609.064479
se.nr_migrations                             :                   23
nr_switches                                  :                  923
nr_voluntary_switches                        :                  501
nr_involuntary_switches                      :                  422
se.load.weight                               :                 1024
se.avg.load_sum                              :                  186
se.avg.runnable_sum                          :               190464
se.avg.util_sum                              :               167936
se.avg.load_avg                              :                    0
se.avg.runnable_avg                          :                    0
se.avg.util_avg                              :                    0
se.avg.last_update_time                      :<PHONE_NUMBER>464
se.avg.util_est.ewma                         :                    8
se.avg.util_est.enqueued                     :                    0
policy                                       :                    0
prio                                         :                  120
clock-delta                                  :                  148
Remote (Host):----------------------------------------------------------------------------------
pi@raspberrydev:~ $ cat /proc/cpuinfo
[..]
Hardware        : BCM2711
Revision        : b03114
Serial          :<PHONE_NUMBER>c2ebe1
Model           : Raspberry Pi 4 Model B Rev 1.4
pi@raspberrydev:~ $ cat /proc/1/sched
systemd (1, #threads: 1)
se.exec_start                                :       8756515.233873
se.vruntime                                  :          1652.941173
se.sum_exec_runtime                          :          5314.364120
se.nr_migrations                             :                   52
nr_switches                                  :                 2339
nr_voluntary_switches                        :                 1122
nr_involuntary_switches                      :                 1217
se.load.weight                               :                 1024
se.avg.load_sum                              :                  480
se.avg.runnable_sum                          :               491520
se.avg.util_sum                              :               470016
se.avg.load_avg                              :                    0
se.avg.runnable_avg                          :                    0
se.avg.util_avg                              :                    0
se.avg.last_update_time                      :<PHONE_NUMBER>688
se.avg.util_est.ewma                         :                   10
se.avg.util_est.enqueued                     :                    0
policy                                       :                    0
prio                                         :                  120
clock-delta                                  :                  112

Damn, that doesn’t give any clue.  From what I can find on stackexchange, there seems to be no generic, reliable way to determine whether you’re running in a container.  I need to check if I can use the presence of vcgencmd to conclude I’m running in a container.  Otherwise, I’ll probable need to add a config.json key forceRemote to the host section.

Can you try beta v1.3.3-0?  That should check whether vcgencmd can be run, before concluding the specified host is the localhost.

I tried the v1.3.3.-0 beta,
it works for me,
getting the following log without any errors from vcgencmd
[24.5.2021, 11:21:52] [RPi] RPI-DEV Remote: set Current Temperature from 36°C to 36.5°C
[24.5.2021, 11:21:52] [RPi] RPI-DEV Remote: set Frequency from 900MHz to 1000MHz
[24.5.2021, 11:21:52] [RPi] RPI-DEV Remote: set Load from 0.09 to 0.14
[24.5.2021, 11:22:07] [RPi] RPI-DEV Remote: set Current Temperature from 36.5°C to 36°C
[24.5.2021, 11:22:07] [RPi] RPI-DEV Remote: set Frequency from 1000MHz to 1500MHz
[24.5.2021, 11:22:07] [RPi] RPI-DEV Remote: set Load from 0.14 to 0.11
[24.5.2021, 11:22:22] [RPi] RPI-DEV Remote: set Current Temperature from 36°C to 37°C
[24.5.2021, 11:22:22] [RPi] RPI-DEV Remote: set Frequency from 1500MHz to 700MHz
[24.5.2021, 11:22:22] [RPi] RPI-DEV Remote: set Load from 0.11 to 0.09
[24.5.2021, 11:22:23] [RPi] RPI-DEV Remote Power LED: On changed from true to false
[24.5.2021, 11:22:25] [RPi] RPI-DEV Remote Power LED: On changed from false to true
[24.5.2021, 11:22:37] [RPi] RPI-DEV Remote: set Load from 0.09 to 0.22
[24.5.2021, 11:22:51] [RPi] RPI-DEV Remote: set Current Temperature from 37°C to 37.4°C
[24.5.2021, 11:22:51] [RPi] RPI-DEV Remote: set Frequency from 700MHz to 1500MHz
[24.5.2021, 11:22:51] [RPi] RPI-DEV Remote: set Load from 0.22 to 0.25
[24.5.2021, 11:23:07] [RPi] RPI-DEV Remote: set Current Temperature from 37.4°C to 37°C
[24.5.2021, 11:23:07] [RPi] RPI-DEV Remote: set Frequency from 1500MHz to 800MHz
[24.5.2021, 11:23:07] [RPi] RPI-DEV Remote: set Load from 0.25 to 0.2
The temperature and the power led are displayed in the accessories.

Released v1.3.3.


Download the archive of pretrained model failed

The archive size too big, and it's hard for me to download the archive since I will be blocked by Google when downloading the large file (when the file has been almost downloaded).
So I want to get archives of the single models. It will help me a lot.
Of course, it depends if you are not busy. I apologize for my reckless request.

@IDKiro I assume that you are able to download the pretrained models. Please let me know if you need any further help :)


Phi calculation

There are different implementations for Phi. Are these better?
E.g.:
https://github.com/samueleresca/phi-accrual-failure-detector/blob/main/phi-accrual-failure-detector/phi_accrual_failure_detector.py#L160

The failure detector here works fundamentally the same way as the phi accrual method, but I've simplified the math and made some approximations to streamline the implementation:

the exp/log step isn't necessary if you're just using it for a boolean threshold check
replaced the windowed mean/variance with a time decaying weighted estimate

I'm not opposed to having multiple implementations, however, and making the failure detector approach a configurable option.

Thank you for the explanation - and for all your efforts to implement this tricky paper!


Add Warning about issue with Week 53

Please add this warning to the top of the topic:
Warning    There is an issue with the use of this function. The last Monday in some calendar years can be returned as week 53 when it should be week 1. For more information and a workaround, see "Format or DatePart functions can return wrong week number for last Monday in Year" (https://docs.microsoft.com/en-us/office/troubleshoot/access/functions-return-wrong-week-number).
For reference, see also https://support.office.com/en-us/article/DatePart-Function-26868A79-5505-4E5A-8905-6001372223FA

@Markgi999 Thanks for pointing this out! This issue is now documented and appears in the topic on the live site.


Move 'releases' tab to the top of the menu.

As a new user, my first decision is what version to install. Then I figure out how to install that version.
The aspect that I found most confusing about the existing documentation is the fact that the "distributions" tab is several entries lower than the 'install' tab.

Good point.  We are looking at doing a general reorganization of that top-level menu, we'll make sure this is part of it.  Thanks for the report.

this has been addressed in the refactoring being done by @esthersweon


aPaaS is not a well used term

I have never heard aPaaS ever mentioned in Azure before (or any cloud computing contect).
I think it would be much clearer to the reader if you used SaaS - that is how I hear all internal Microsoft and external people describe IoT central.
If you think it doesn't quite count as SaaS you should link to what Microsoft means when it describes something as aPaaS rather than PaaS as I don't think anywhere else in Microsoft uses that term?

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

ID: 30009d60-b907-fa0d-b2f9-a6dd7e414259
Version Independent ID: 377f9495-ed09-bd1f-2f62-58007097d338
Content: Choose an Internet of Things (IoT) solution in Azure - Azure Architecture Center
Content Source: docs/example-scenario/iot/iot-central-iot-hub-cheat-sheet.yml
Service: architecture-center
Sub-service: example-scenario
GitHub Login: @martinekuan
Microsoft Alias: architectures

@thommck
Thanks for your feedback! We will investigate and update as appropriate.


Error: The element has no supported sources

Run in chrome，it is ok to play a m3u8 source with audio tag,when in PC mode，but when i change to mobile mode,  play failed. The error as below ：
Uncaught (in promise) DOMException: The element has no supported sources.
But I saw this tips:  "In general, MediaElement.js supports IE11+, MS Edge, Chrome, Firefox, Safari, iOS 8+ and Android 4.0+."，but i do not know whether it is supported m3u8 source width audio tag on mobile browser?

Depends on how it is implemented. If you provide a URL where the error occurs is the first step to detect what's wrong since it should support it

@rafa8626 The url is "http://d2zihajmogu5jn.cloudfront.net/bipbop-advanced/bipbop_16x9_variant.m3u8". I just replaced the m3u8 url (http://db3.indexcom.com/bucket/ram/00/05/64k/05.m3u8) in the official demo. With this url,i can play  on the pc chrome,but can not play on the mobile.

I tried your URL in iOS and worked fine; also Android on Browserstack worked for me. I'm thinking is a version issue.  Because I didn't experienced any issues with it

@rafa8626 Thank for your help. i was used master branch.Maybe there is something wrong with my code, i will try to find it. Thanks again!

i got the same error and in desktop mode it work's fine but in mobile agent mode i got Uncaught (in promise) DOMException: The element has no supported sources. error.
what's the problem?

iOS reads HLS natively, and Android 4+ should do it as well. It’s either the configuration for the player or maybe a codec is missing and it cannot read the file properly, based on what you describe


Enhanced State Explorer

Spyder has a beautiful feature that lets you explore a complicated data structure by opening multiple windows. This is an extremely desirable feature for our State Explorer. The implementation should be fairly straightforward.


Terraform the service account for CI/CD

This service account is already in use by the GitHub Actions of the
repository https://github.com/alphagov/govuk-knowledge-graph-search
It needs the roles/permissions that are documented here:
https://cloud.google.com/run/docs/reference/iam/roles#additional-configuration
Trello card

Please can this have another review @guilhem-fry?

added a block for the secret for GitHub Actions to use the service account.
updated terraform's state with what's actually in the dev environment at the moment (as far as I know, other things might have been added to the project that aren't in the terraform config).

Thanks @guilhem-fry.  Good points about the project-level admin roles, which do make the narrower roles redundant.  Unfortunately, the narrower roles didn't work.
I suspect that Google's first implementation didn't allow us to control which bucket and which artifact repository it would use, so it required project-level admin roles to create a bucket and repository itself.  We don't need it to create them, but it still seems to insist on having them.
I think it's worth configuring the redundant roles, though, because it makes it more obvious that the service account uses those particular resources.


add DISCO_L496AG + STModCellular BG96 support

Summary of changes

[X] I confirm this contribution is my own and I agree to license it with Apache 2.0.
[X] I confirm the moderators may change the PR before merging it in.
For new board enablements only:
[X] I confirm the board is Mbed Enabled and passes the Mbed Enabled test set.
[X] I confirm the contribution has been tested properly and the tests results for TESTS are attached.
[X] I confirm mbed-os.lib and mbed-cloud-client.lib hashes or the content in folders mbed-os and mbed-cloud-client were not modified in order to pass the tests.

Maintainers of this repository update the Mbed OS and Client hashes.
Please report any issues through issues in relevant repositories.

Add support for DISCO_L496AG + STModCellular BG96.
Integration tests all passed, Pelion E2E tests all passed except for update test due to python package issue. Update campaign succeeded with manual 'mbed dm' commands.
disco_l496ag_external_kvstore_pelion_e2e_test.log
disco_l496ag_external_kvstore_integration_test.log

Thanks for your changes.
@ARMmbed/pdmc-integrators please review.

@soleilplanet does this not depend on https://github.com/ARMmbed/mbed-os/pull/12411 ?

@teetak01 yes, this depends on https://github.com/ARMmbed/mbed-os/pull/12411, just forgot to put this information. Sorry about that.
I managed to get my python environment fixed, but the update test failed because it couldn't complete the the campaign within the specified timeout. (the default timeout is too short for NB-IoT network; my best record is 8 minutes, but it could take 30 minutes or longer, which depends on signal quality )

Thanks for clarifying. I have already mentioned earlier for the testing team about this issue with the test-timeout.

@teetak01 I've added an additional line and it is now not dependent on the Mbed-OS PR.

@teetak01 here are the logs with the new commit.
pelion_e2e_test_updated.log
l496ag_stmodcellular_bg96_mbed_os_integration_test.log

Can you fix the configuration? I am not sure that will even compile? Having two identical entries in .json should not even pass Mbed CLI verification, or if it does, one of those parameters would get silently ignored.

@teetak01  it would compile and here's the log with a dump of the mbed_app.json:
show_config_and_compile.log
I'm basically running a script to call:
cat mbed_app.json | grep -A40 'DISCO_L496AG'
mbed compile
combining those two lines in one will not be able to build; you will see 'DeviceKey was not declared' during compilation. That's why I filed the PR in Mbed-OS at the first place.
(and I guess I would need to file an issue to the tools team)

@teetak01 I found that the build error I mentioned above is not observed after I upgraded python to 2.7.17 (was 2.7.12) with single line of 'components_add'
So I'm going to merge those two lines and test again.

Yeah good. I was not able to reproduce the issue either.

You could also rebase the PR.

test logs with combined components_add:
integration_test_log_2.log
pelion_e2e_test_2.log

build-only

Test run: FAILED

Failed to build following targets:
DISCO_L496AG-ARM-TCP
Build artifacts
posted-by-tag: https://jenkins-client.isgtesting.com/job/mbed-os-example-pelion/

updated test log with new commit:
pelion_e2e_test_3.log
integration_test_log_3.log

build-only

Test run: SUCCESS

Build artifacts
posted-by-tag: https://jenkins-client.isgtesting.com/job/mbed-os-example-pelion/

@soleilplanet this would still require:

Add README entry for this board.
Squash the commits together
Rebase locally with master.

@teetak01 I just squashed and rebased from master, but I'm not sure if that's the result you'd like to see. Would you please check?
Thanks!

build-only

Test run: SUCCESS

Build artifacts
posted-by-tag: https://jenkins-client.isgtesting.com/job/mbed-os-example-pelion/

Looks good, thanks @soleilplanet


Ceki/logback 1.3.0 alpha14 adaptation

Injects missing class names in ImplicitModel instances taking into account default tag/class associations.
Previously, this was done while parsing the XML whereas starting with logback 1.3.0-alpha14, this step is delegated to model processing.
Future versions of logback might add this injection functionality to avoid code duplication it other processing pipelines.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: melix:x: cekiYou have signed the CLA already but the status is still pending? Let us recheck it.


Set realistic code coverage target.

The CI runs a check on code coverage. At present we are nowhere near the target and all recent PRs have failed this check.
I suggest reducing the % so that current PRs pass. This way we still check that PRs do not reduce coverage.
In future if someone wants to put a lot of TLC into this project, we can increase the values :-)

@clintonb this can be closed IMHO, with test coverage now being at 95%.


multi-room: disable feature for raspberrypi2 fam

Change-type: patch
Signed-off-by: Tomás Migone<EMAIL_ADDRESS>

@tmigone Why are we disabling it? Is it too bad for multirrom?

Yeah :/ See #220, Chris reported it a while back.


Add #pragma once to all mock header files

Check all header files to make sure they include #pragma once at the top of the file.

Issue resolved in pull request #383


Request for linking holograms

Could a command be added that would link 2 holograms together?
This would make it easier to have holograms with different scales together to achieve different sizes of text

Similarly to this I think a sort of HologramStack could be cool, it would allow players/devs to stack holograms on top of each other e.g a title hologram with larger text, item hologram and then some text below.
Best way to visualize this is looking at DecentHologram's stacking feature.

I actually started working on this a little while back: https://github.com/FancyMcPlugins/FancyHolograms/pull/110

If I'm not mistaken, this will also prevent holograms from breaking when using ViaBackwards to allow older clients to connect to the server.
In modern clients, those [LF] are actual line breaks that displayentities allow, but nametags don't.

If I'm not mistaken, this will also prevent holograms from breaking when using ViaBackwards to allow older clients to connect to the server. In modern clients, those [LF] are actual line breaks that displayentities allow, but nametags don't.

If implemented as my original plan for HologamStacks then it probably would not resolve the ViaBackwards issue as if 2 text lines follow each other then they should be merged into 1 entity in my opinion. I personally recommend opening an issue in ViaBackwards to report this to them

@OakLoaf from what you are saying it sounds like this is being worked on, do you have any estimate on when it might be added?

@OakLoaf from what you are saying it sounds like this is being worked on, do you have any estimate on when it might be added?

It hasn't been worked on in a very long time due to other commitments so I can't guarantee any estimate unfortunately, feel free to watch the pr though incase that's helpful


Make replication ID generation more robust.

Replications checkpoint to _local documents identified by replication ids. If
replication ids change replication tasks will not be able to find their
previous checkpoints and will rewind their change feeds back to 0. For a large
database that could mean reprocessing millions of documents.
Current version of replication id generation algorithm hashes the full url of
the source, target, their headers, including authorization ones as well, and a
few other things. This means when user changes their password and updates their
replication document, replication ids will change and all the checkpoint will
be invalidated.
Also, it is fairly common to upgrade services from http:// to https://.
Replication endpoint URIs then typically just change their schema part
accordingly. However, schema is part of the replication ID calculation, so
replication ids would then change as well.
Introduce a more robust replication id generation algorithm which can handle
some of those issues. The new algorithm:

Excludes source and target URI schema from the replication id calculation.
As long as the host and other parts stay the same changing the schema will
have no effect on the replication id.

Ignores inline (specified in the URL) basic authentication passwords.

Ignores basic authentication password even if provided in the
basic authorization headers.

Is insensitive to switching between providing basic authentication
credentials inline or in a headers section. However it includes the username
used in the basic auth in the calculation. It is plausible scenario that
<EMAIL_ADDRESS>is really a different database than
http://user2:pass2@@a.host.com

Issue #688

Please hold this until after the 2.1 release. I'd like to keep master clean until we re-fork for 2.1.

-1. You can't change the meaning of replication checkpoint type 3. You should define the new type 4 as being protocol-insensitive. that will cause smooth upgrade.

The type 3 is not part of the public replication API. That is it is not exposed to the outside.
The numbers are used to create a sequence of replication ID generation algorithms to try? So it doesn't matter which one the is 3rd, only which one is tried first, next, and so on. In effect this preserves the current (v3) algorithm as the top one so replication ids of https:// don't change. But we wanted to insert another algorithm to try if https:// endpoints can't be found, and ideally it would have been something like 2.5 (try to find an http:// endpoint) but since integers are used used for sequencing we just bumped the top to 4 to make room.

The new version ignores schema and basic auth passwords. It also looks at the headers and tries to ignore password from there as well.

+1

@davisp @rnewson
Made a separate PR to cover a corner case where upgrading to this code could result in lost checkpoints (and change feed rewinds):
https://github.com/apache/couchdb/pull/721


Collection edit has empty entity type dropdown if no entities / relationship types initialised

Describe the bug
When you don't have a DB with the entity types initialised (with script initialize-entities -f ../dspace/config/entities/relationship-types.xml) the 'Entity Type' dropdown in collection is empty, causing some confusion.
If the repository does not work with entity types & relationships then they don't need to be initialised but then also this dropdown should not be present in collection create / edit form.
To Reproduce
Steps to reproduce the behavior:

Start with empty DB or DB with no entity types initialised
Go to create and/or edit collection form
The entity type input (dropdown) exists but is empty

Expected behavior
When there are no entity types, then this field should not exist on the create and edit collection form.

Pulling this over to the 7.6.x maintenance board as we should try to fix this in a 7.6.x bug-fix release

I would like to claim this issue


ENDOC-25 ENG-561 Add the documents related to selecting the embedded …

…databases.

@Kerruba , this is meant to combine the changes from PRs #92, #94, and #96 but moved into the new docs structure.


Add a type which is equivalent to _Bool in C99

Postponed RFC
This type would have to ensure two aspects:

The size of the representation is the same as the backing compiler's representation.
Each value is only ever allowed to contain the integer 0 or 1.

This could possibly be done through a new c_bool primitive type in liblibc (not an alias) or perhaps a wrapper struct/wrapper newtype if we're able to enhance as semantics enough (for example).

Did this ever happen? What should I do if I'm wrapping a C library that uses bool (_Bool)?

I would argue that we should define Rust's bool to be equivalent to _Bool.

Wouldn't it prevent the compiler to do things like pack 8 bool in a byte?

@Yamakaky Packing like that would have to be opt-in because you can take references to any fields.

Well, I'm not a rust pro, but I'd be happy with a c_bool that is defined to match _Bool and lets you convert between Rust's native bool and c_bool using as. That way you don't need to have Rust's native bool follow some weird C 'an integer at least as big as blah' stuff.

There are basically 2 ways to define c_bool:

The easy way: type c_bool = bool
The hard way:

#[repr(i8)]
enum c_bool {
    c_false = 0,
    c_true = 1,
}

The first one is easier to use, but ties our representation of bool with that of _Bool. Both use the same underlying representation (1 byte which is either 0 or 1) for all supported platforms, but in theory (though very unlikely) a future platform may appear which uses a different representation for _Bool.

@Amanieu I think that tying our representation of bool to _Bool is better; too many people have written extern functions assuming that bool is equivalent, that to do otherwise would be a serious back-compat concern, but only on esoteric platforms where one may not have tested their code.

I feel like this issue needs to be resolved.
Currently there is no stable way to use _Bool in FFI, and as long as Rust bool and _Bool compatible by accident, indecision just means defaulting to @ubsan's solution (eventually, de facto use of bool for the purpose will prevent any changes to its representation without silently breaking all that code).

@le-jzr it's already de facto resolved (and basically de jure resolved). There's no way to change it without silently breaking a ton of code.

It's just a matter of adding type c_bool = bool to the libc crate to confirm it.

@ubsan According to https://github.com/rust-lang/rfcs/pull/954#issuecomment-83811006, specifying that bool is _Bool has not been the intention. While that position might have changed, I haven't found any comments indicating so.
Note carefully that I'm not saying I'm categorically against that. I'm just saying it hasn't been stabilized yet. That's the principal problem. As long as it's unstable, then de jure that "ton of code" you speak of is a ton of undefined behavior, even though it de facto works right now.
That said, according to https://github.com/rust-lang/rfcs/pull/954#issuecomment-169820630, the current representation of bool matches _Bool on all supported platforms, so we should in fact have type c_bool = bool in either case. That's a separate thing from defining them equal. FFI code using bool directly would still be invalid until and unless https://github.com/rust-lang/rfcs/pull/954 passes, since bool could change representation while c_bool just switches definition to compensate.

@le-jzr but it's also allowed in FFI functions without warning (which is close to de jure confirmation).

Hi! At @torproject, we recently decided for tor that it's permissible to write C99, and we have now have a function returning a bool that I'd like to wrap in an FFI definition for exposure to our Rust code (cf. https://bugs.torproject.org/25727).
We've noted that bool should be compatible to C/++'s _Bool, however a theoretical-but-currently-non-existent compiler could create a multi-byte _Bool type. However, it appears that Rust's bool has now been defined as a single byte, so the theoretically-weird C compiler edge case is out of the picture.
On the other hand, it seems the improper_ctypes lint was recently modified to add bool. It'd be really nice to have some closure on whether or not bools can cross the FFI boundary, since it might affect our C coding standards moving forward.
If the ABI of bool is decided to remain reserved, would it be acceptible to define a c_bool type in the libc crate? I'd be happy to write a patch.
Is it possible to come to a decision on this issue soon?

@isislovecruft I believe that the RFC was closed, and that the representation of bool will be the same as _Bool on all platforms? I may be wrong.

It looks like @withoutboats proposed basically accepting #954 (at https://github.com/rust-lang/rust/pull/46156#issuecomment-346217109) and also thinks that Rust's bool should be documented as having the same representation as C's _Bool (https://github.com/rust-lang/rust/pull/46176#issuecomment-359613962). There was some amount of agreement, and no obvious significant objections.
I'm not very familiar with the Rust RFC process, so I'm not sure what needs to happen next if we want this to move forward. Does someone need to reopen #954? Or should someone propose a FCP on this RFC? Or something else?

It seems to me that given https://github.com/rust-lang/rust/pull/46156#issuecomment-346217109 and other changes noted in https://github.com/rust-lang/rfcs/issues/992#issuecomment-389297983 the points in OP are completed.


fix: bump block number to pool helper contract deployment

Updating examples to use block number from where the new pools query contract was deployed.

Thanks for updating those @gmbronco !
Since you're fixing examples, do you mind taking the opportunity to figure out why your prettier isn't working for examples and fix that?

Thanks for updating those @gmbronco ! Since you're fixing examples, do you mind taking the opportunity to figure out why your prettier isn't working for examples and fix that?

examples were ignored in .eslintignore - re-added it.


Review latest version of nixos-generate-config and synchronize

There's some new behaviour in nixos-generate-config which we should sync with.

I thought I had seen some new behaviour, but I was wrong.


What info do you need in the wps_links.yml file?

@gap736uk : I have put together a draft YAML file for the you to query so that you can populate links in MOLES records:
https://github.com/cedadev/ceda-wps-assets/blob/main/ceda_wps_assets/assets/wps_links.yml
Does it have all the information you would require? I assume you need:

MOLES URL
URL of WPS UI submission form
Text for the URL to the WPS UI

Is there anything else that would be useful? Or that you would want to connect/push the other way from MOLES?

I'm wondering if we're missing something here  - is there a connection that we're missing that allows us to determine what the mapping is between MOLES and the WPS?
e.g. a WPS will have some functionality and criteria associated with it I would imagine in terms of it archive scope... e..g point in the archive to which it relates, file format, etc.
If these could be codified such that it would be possible to then look them up somehow... and visa versa back the other way...
MOLES has an API end point that gives the ability to look up a record for a given path. That path may be at or below a given Observation's Result Path.
Is there a similar index for the WPS end-points, or is this what is being constructed here. If it is, then could it be constructed in such a way that MOLES info isn't needed to be stored here per se, but the WPS index allows:

identification of associated archive paths for a given WPS operation
has an API to allow checking against a given path for associated WPS functionality and links?
gives the ability for the WPS to use the associated paths to then do a look-up using the MOLES path_to_record API endpoint to get the relevant links to MOLES records?

Given the above may not be possible (all depends on the WPS conceptual model, but I suspect that can't be that well defined), then returning to this issue, the following would be needed for a WPS tool entry to allow MOLES linkage:

Title of function to appear in Online Resource entry in MOLES
URL to tool
Function type (incase this differs from Data Tool)
Associated MOLES Observation UUIDS/URLS

Additionally, to go back the other way (i.e. for the WPS to then be able to provide the necessary MOLES details) the WPS would require one of two approaches here:
Option 1:
a) pull back the MOLES uuid/URL
b) poll API to get details for each MOLES entry (title, access type*)
Option 2:
a) pull back MOLES uuid/URL
b) get stored MOLES details for title, access type, access link (if necessary)

@gap736uk thanks for your thoughts. I think the first step required is to be able to say that we have two separate entities that are linked:

A MOLES entry (via its URL)
A WPS Process (via its URL)

The current setup means that this can be a one-to-one, many-to-one, one-to-many, or many-to-many relationship. So I don't think it'll be simple. I think the first step is to have a place where we control/manage the connections (in a YAML files). In future, we can make it more dynamic. But initially, we can create scripts to dump out the required YAML and be done with it.
So, let's stick with:

Title of function to appear in Online Resource entry in MOLES
URL to tool
Function type (incase this differs from Data Tool)
Associated MOLES Observation URLs

Closing, as we have resolved elsewhere. I'm about to create some new issues.


[BUG] Wrong entrypoint in malformed executables

From<EMAIL_ADDRESS>on October 18, 2012 14:18:58
What steps will reproduce the problem? Scan with yara with this files: http://www.mediafire.com/?j9sri3j6droprsg 2cd824f14689dabce09f7dd2d944bb1e
33a2504c99c525c9de3835ce14a42129
6cce882e601bc0e2c12f4445c40ce92d
9d61140f3ac118a42947c3f1ad3f8b16
All this files have the same EP, at RVA 0xf10f, when you use "entrypoint" variable in one rule yara will returns 0xfd0f, that offset is erroneus and out of the file.
This files have a wrong SizeOfRawData in the first section, this causes a wrong result of the pe_rva_to_offset routine used by yara to get the EP in PE files.
I fixed it making some little changes in the original routine in exe.c file, I don't know if it is the best way, but it works :)
unsigned long long pe_rva_to_offset(PIMAGE_NT_HEADERS pe_header, unsigned long long rva, unsigned int buffer_length)
{
int i = 0;
unsigned long long max_va = 0;
PIMAGE_SECTION_HEADER section;
PIMAGE_SECTION_HEADER vsection;
section = IMAGE_FIRST_SECTION(pe_header);

while(i < MIN(pe_header->FileHeader.NumberOfSections, 60))
{
    if ((unsigned char*) section - (unsigned char*) pe_header + sizeof(IMAGE_SECTION_HEADER) < buffer_length)
    {
        if (rva >= section->VirtualAddress &&
            rva <  section->VirtualAddress + section->SizeOfRawData)
        {
            if (section->VirtualAddress >= max_va)
            {
                max_va = section->VirtualAddress;
                vsection = section;
            }
        }
        section++;
        i++;
    }
    else
    {
        break;
    }
}
if (max_va != 0)
{
    return vsection->PointerToRawData + (rva - vsection->VirtualAddress);
}
else
{
    return 0;
}

}
Original issue: http://code.google.com/p/yara-project/issues/detail?id=66

Fixed long ago.


Anoosha

Genome Tracker terms

Hi Anoosha! Sorry I didn't catch this earlier, but we should add all additives to the FoodOn Robot Tables Dietary Additives tab instead of directly into the foodon-edit.owl file. I can then rerun the robot command and have those additives appear via import. Ok?

Sure, no worries! I will add them in Robot file. Then maybe I should revert these commits.

I've added the terms in FoodOn Robot Tables/Dietary Supplement gsheet. Reverting all the commits except one 'new mexico Chile powder'.

Ok, indeed commits would need reverting, or just (oy!) drop pull request branch and just do the chili powder one.


Update docs

renamed documentation directory - doc -> docs
moved all support files to docs directory and added missing files
updated documentation to reflect changes in Stratigility 2.1 which supports all versions of http-interop/http-middleware, now we have examples with different version of http-interop middleware

Update the documentation is always a very good idea! 👍

Thanks, @webimpress! Edited and pushed; should deploy shortly.


Update zio-prelude to 1.0.0-RC21

About this PR
📦 Updates dev.zio:zio-prelude from 1.0.0-RC19 to 1.0.0-RC21
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio", artifactId = "zio-prelude" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio", artifactId = "zio-prelude" }
}]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by #688.


Hue Slider Horizontal

How to place Hue Slider Horizontally in color picker instead of vertical.

have you found a solution for this?


Update Settings: Translations

Task/Issue URL: https://app.asana.com/0/0/1208870901574431/f
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#5412  👈 (View in Graphite)
#5398
#5397
#5394
develop

This stack of pull requests is managed by Graphite. Learn more about stacking.


Use ConfigMap with the explicit routes for the cluster

Besides the pair of services the created NatsCluster also has a config map that is used to include the full list of the non-failed pods so far, this as one step in order to be able to use wildcard certificates for the cluster routes.
$ kubectl get cm test-nats-cluster-1 -o yaml
apiVersion: v1
kind: ConfigMap
data:
  nats.conf: |2

      "port": 4222

      "http_port": 8222

      "cluster": {
        "port": 6222

        "routes": [
          "nats://nats-4dnrj8qh1j.nats-cluster-1-mgmt.default.svc:6222"

          "nats://nats-cvms254b0l.nats-cluster-1-mgmt.default.svc:6222"

          "nats://nats-w142n49wt6.nats-cluster-1-mgmt.default.svc:6222"
        ]
      }

Given the example above, what is "nats://nats-4dnrj8qh1j.nats-cluster-1-mgmt.default.svc:6222? One service per pod? 🤔

In that example, there would be a single service named nats-cluster-1-mgmt and then in the PodSpec the subdomain it is mapped so that it is the same as the one from the service, plus the name of the pod as the hostname:
https://github.com/nats-io/nats-operator/blob/4efdeeae68c848b1c86f3260c6f588b2e098de7c/pkg/util/kubernetes/kubernetes.go#L333-L335
Using the hostname+subdomain and headless service in combination creates the additional A record which can also be used to connect to the node, doing nslookup would result in something like:
$ nslookup nats-cluster-1-mgmt.default.svc

Name:     nats-cluster-1-mgmt.default.svc
Address 1: <IP_ADDRESS> nats-4dnrj8qh1j.nats-cluster-1-mgmt.default.svc.cluster.local
Address 2: <IP_ADDRESS> nats-cvms254b0l.nats-cluster-1-mgmt.default.svc.cluster.local
Address 3: <IP_ADDRESS> nats-w142n49wt6.nats-cluster-1-mgmt.default.svc.cluster.local

I don't follow totally but if it works, great.


⚠ ClamAV has degraded performance

In 2f282f9, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 425 ms

Resolved: ClamAV performance has improved in 60bc47c.


Long tweets fail with error Tweet needs to be a bit shorter (Code 186)

When attempting to send tweets longer than 280 characters using the Eliza Twitter client, the API responds with an error:
Error sending tweet; Bad response: {
  errors: [
    {
      message: 'Authorization: Tweet needs to be a bit shorter. (186)',
      locations: [Array],
      path: [Array],
      extensions: [Object],
      code: 186,
      kind: 'Permissions',
      name: 'AuthorizationError',
      source: 'Client',
      tracing: [Object]
    }
  ],
  data: {}
}

https://discord.com/channels/1253563208833433701/1300025221834739744/1318559898312904745

Hi @tcm390 could you add a direct link to the message for all issues gotten from discord. This is to help with investigation since there might have been some conversation around it.

yes, updated.

This would be the same issue as https://github.com/ai16z/eliza/issues/883.

okay but is it fixed? there was written merged but I dont think it works yet. Can please tell me if it works or not ? Thanks inadvance

okay but is it fixed? there was written merged but I dont think it works yet. Can please tell me if it works or not ? Thanks inadvance

It hasn’t been released yet. We need to wait until the latest scraper is available. I’ve already asked the team to release it, but they haven’t responded yet.

agent-twitter-client v0.0.17 has been released. You may have to pull changes from develop branch or update the version of agent-twitter-client manually on your local version.

okay thank you very much for informing me about new update and fixing that issue.

@shakkernerd so i pulled changes but there is no function called sendLongTweet - which was my issue. I mean there is sendTweet and there should be sendLongTweet for tweets more than 280 character long size but it is not there can you check it please

Implemented in #1339


Allow for parent-child relations to return

💡 Summary
The concept of parent-child relationships exists in the database and application but the code for children, currently referred to as "Teams" in the application and Figma, are commented out.
Removing the restrictions would allow a user to still only view their organization but see their parent.  Meaning
Jefferson County, WV could not see the scans of the state of West Virginia despite being their child.
Motivation and context
Applying structure to the large volume of data that could exist within Crossfeed
Implementation notes
frontend/src/pages/Organization/Organization.tsx has the code that needs to be uncommented.

This has been fixed. It was a licensing issue that has been addressed (Lamar)

@actualeyes does this issue have to do with licensing issues?

@actualeyes does this issue have to do with licensing issues?

I commented on this during a issue refinement meeting. I imagine this was supposed to go into the elasticsearch ticket.


Connected device disconnects on new scan request (iOS)

Hi,
I am having an issue that if I have connected to a device and I start a new scan, the connection with the connected device is broken. I even do not get "disconnected" device state change. Seems like the object that holds the connection is destroyed when a new scan is started.
Is this possible to fix? Or it is not possible to scan for new devices while maintaining current connection.

After debugging in XCode I noticed an error message:
 [CoreBluetooth] API MISUSE: Forcing disconnection of unused peripheral <CBPeripheral: 0x280704960, identifier = 9F2C4F65-E692-88D4-1FD2-534E0F3CA3A6, name = device, state = connected>. Did you forget to cancel the connection?
After checking the code, it seems that when performing a new scan, the reference to the previously connected device is removed by calling [self.scannedPeripherals removeAllObjects];. It looks like there is no implementation for storing strong reference to connected/used devices.
I understand that this is probably a limitation in the library, however it should not cause "API MISUSE" and connected devices should be disconnected properly, when starting a new scan.

Hi @eriknorth , may I know how you were able to solve the above error ?
I got the same Xcode error message when trying to connect (on iOS v13.0 using flutter_blue's 0.7.2).

if (Platform.isIOS) {
await Future.delayed(const Duration(seconds: 1));
}
await bleReaderDevice?.connect(autoConnect: false);
await _sendData();
I also had the exact same issue.Once I found my device in scanned result list then I added a delay 1 second before connecting to the device.


different language?

What should I do if I want to implement it in a different language?
I have only a poor skill.

The Watson speech-to-text, Assistant, and text-to-speech support additional languages:
https://cloud.ibm.com/docs/services/speech-to-text?topic=speech-to-text-models
https://cloud.ibm.com/docs/services/assistant?topic=assistant-language-support
https://cloud.ibm.com/docs/services/text-to-speech?topic=text-to-speech-voices
The service docs explain how you would use them.
This bot doesn't come with non-English example.  It would take some work to customize it.