text:
Enable TPM emulation

The following commit enables TPM emulation and its configuration in the
os2 configuration file.
TPM Emulation is considered unsafe and meant only for testing purposes.
For example, to enable tpm emulation with a static seed, disabling also
smbios headers:
rancheros:
  tpm:
    emulated: true
    no_smbios: true
    seed: "5"

It also adds a specific test for config file reading via ws with tpm.
Closes: https://github.com/rancher-sandbox/os2/issues/20
Signed-off-by: Ettore Di Giacinto edigiacinto@suse.com

Good news is it seems to be triggered just fine with:
#cloud-config
rancheros:
    tpm:
      emulated: true
      seed: 5
    install:
        registrationURL: https://rancher.lan/v1-rancheros/registration/fpdt9q8rtq4zhzwjpp2m6c9vwvjt7l2s5kqjbbt6jpwdznh92hgdtk
        registrationCaCert: |
		-----BEGIN CERTIFICATE-----
		MIIBqDCCAU2gAwIBAgIBADAKBggqhkjOPQQDAjA7MRwwGgYDVQQKExNkeW5hbWlj
		bGlzdGVuZXItb3JnMRswGQYDVQQDExJkeW5hbWljbGlzdGVuZXItY2EwHhcNMjIw
		MjI1MTAyNjIwWhcNMzIwMjIzMTAyNjIwWjA7MRwwGgYDVQQKExNkeW5hbWljbGlz
		dGVuZXItb3JnMRswGQYDVQQDExJkeW5hbWljbGlzdGVuZXItY2EwWTATBgcqhkjO
		PQIBBggqhkjOPQMBBwNCAAQZism1pRiA3T4Iy7JaRQduzoIj3+VQ7diJR8Eat7ig
		xQjJhc/prvPuSD5ZvXJkfuul6PbfpOsAvzQkfKg0HxNNo0IwQDAOBgNVHQ8BAf8E
		BAMCAqQwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU/8cdAPHMv/AY6aa/fcXs
		v7bdFo4wCgYIKoZIzj0EAwIDSQAwRgIhAO901vBbpLPVNOknrT0NIxj2jeN6G90D
		SxMto9w8zWAzAiEA38Q6b0GNOW7cAiLRwx1TxrGgNuwtvKz+G2xfnOg52Kc=
		-----END CERTIFICATE-----

although fails as ros-installer is built with CGO_ENABLED=0:
Feb 25 12:21:46 localhost ros-installer[1696]: time="2022-02-25T12:21:46Z" level=info msg="TPM Emulation enabled"
Feb 25 12:21:46 localhost ros-installer[1696]: time="2022-02-25T12:21:46Z" level=info msg="TPM Emulation Seed5"
Feb 25 12:21:46 localhost ros-installer[1696]: time="2022-02-25T12:21:46Z" level=error msg="failed to read registration URL https://rancher.lan/v1-rancheros/registration/fpdt9q8rtq4zhzwjpp2m6c9vwvjt7l2s5kqjbbt6jpwdznh92hgdtk, retrying: opening tpm for getting attestation data: startup: using the simulator requires building with CGO"
Feb 25 12:22:01 localhost ros-installer[1696]: time="2022-02-25T12:22:01Z" level=info msg="TPM Emulation enabled"
Feb 25 12:22:01 localhost ros-installer[1696]: time="2022-02-25T12:22:01Z" level=info msg="TPM Emulation Seed5"
Feb 25 12:22:01 localhost ros-installer[1696]: time="2022-02-25T12:22:01Z" level=error msg="failed to read registration URL https://rancher.lan/v1-rancheros/registration/fpdt9q8rtq4zhzwjpp2m6c9vwvjt7l2s5kqjbbt6jpwdznh92hgdtk, retrying: opening tpm for getting attestation data: startup: using the simulator requires building with CGO"

Seems tests failed just for a timeout:
            "status": {
                "conditions": [
                    {
                        "lastProbeTime": null,
                        "lastTransitionTime": "2022-02-25T14:27:19Z",
                        "status": "True",
                        "type": "Initialized"
                    },
                    {
                        "lastProbeTime": null,
                        "lastTransitionTime": "2022-02-25T14:27:19Z",
                        "message": "containers with unready status: [rancheros-operator]",
                        "reason": "ContainersNotReady",
                        "status": "False",
                        "type": "Ready"
                    },
                    {
                        "lastProbeTime": null,
                        "lastTransitionTime": "2022-02-25T14:27:19Z",
                        "message": "containers with unready status: [rancheros-operator]",
                        "reason": "ContainersNotReady",
                        "status": "False",
                        "type": "ContainersReady"
                    },
                    {
                        "lastProbeTime": null,
                        "lastTransitionTime": "2022-02-25T14:27:19Z",
                        "status": "True",
                        "type": "PodScheduled"
                    }

As the ros-operator was coming up still.

Seems to work, getting another issue now that @kkaempf is facing too, but that deserves its own PR. this one shouldn't be blocked:
localhost:~ # ros-installer
INFO[0000] TPM Emulation enabled
INFO[0000] TPM Emulation Seed '5'
INFO[0000] Using TPMHash 2f4faaebb65f37d803d6ef954e91f73983a53c502cb7ce1fb7daa9c5d1641213 to dial wss://rancher.lan/v1-rancheros/registration/csdkbh2c2gcmp5kx9nt2mqlfd772lnl4tfl6cf7mj4t8qfhptbwpz6
INFO[0004] Retrieved config from registrationURL: {"install":{"device":"/dev/vda"},"rancherd":{"server":"https://rancher.lan","token":"tpm://"},"rancheros":{"install":{"automatic":true,"isoUrl":"https://github.com/rancher/os2/releases/download/v0.1.0-alpha12/rancheros-v0.1.0-alpha12-amd64.iso"}},"users":[{"name":"root","passwd":"root"}]}
Install environment:
ELEMENTAL_CLOUD_INIT=/tmp/ros-install582744199
ELEMENTAL_ISO=https://github.com/rancher/os2/releases/download/v0.1.0-alpha12/rancheros-v0.1.0-alpha12-amd64.iso
ELEMENTAL_AUTOMATIC=true
ELEMENTAL_TARGET=/dev/sda
DEBU[2022-02-25T17:18:21Z] Loading luet config from /etc/luet/luet.yaml
INFO[2022-02-25T17:18:21Z] Install called
INFO[2022-02-25T17:18:21Z] Running before-install hook
INFO[2022-02-25T17:18:21Z] Downloading from https://github.com/rancher/os2/releases/download/v0.1.0-alpha12/rancheros-v0.1.0-alpha12-amd64.iso to /tmp/elemental906251707/cOs.iso
INFO[2022-02-25T17:18:23Z] Mounting iso /tmp/elemental906251707/cOs.iso into /tmp/elemental906251707/iso-mounted
E0225 17:18:23.182684    1691 mount_linux.go:195] Mount failed: exit status 32
Mounting command: systemd-run
Mounting arguments: --description=Kubernetes transient mount for /tmp/elemental906251707/iso-mounted --scope -- mount -t loop /tmp/elemental906251707/cOs.iso /tmp/elemental906251707/iso-mounted
Output: Running scope as unit: run-r0d6156aedcaa46f1ad765c313289bf94.scope
mount: /tmp/elemental906251707/iso-mounted: unknown filesystem type 'loop'.

Error: 1 error occurred:
        * mount failed: exit status 32
Mounting command: systemd-run
Mounting arguments: --description=Kubernetes transient mount for /tmp/elemental906251707/iso-mounted --scope -- mount -t loop /tmp/elemental906251707/cOs.iso /tmp/elemental906251707/iso-mounted
Output: Running scope as unit: run-r0d6156aedcaa46f1ad765c313289bf94.scope
mount: /tmp/elemental906251707/iso-mounted: unknown filesystem type 'loop'.

FATA[0006] exit status 1

Nice, looks pretty simple :)
However I am still concerned we are forced to make use of TPM, isn't it a limitation in the world of embedded or tiny devices? Anyway that's another discussion.

I fully agree here, let's leave it indeed for a follow-up discussion


text:
Accessibility: add alt attribute to images with text.

Tied to the audit mentioned in #4324, to improve accessibility, we need to scan over all our images and ensure we have alt attributes in place with its corresponding text alternative.

We should only create an alt text for images with a distinct purpose which do not have text or labels to describe them properly.

source: gharchive/issue

authors: gaktive kwwii

repo: rancher/dashboard

license_type: permissive

license_source: github-api


text:
ARM and ARM64 support

Hello.
Will test the master soon on a RPi.
I see that you've merged the most of the things I did earlier: https://github.com/rancher/docker-from-scratch/compare/master...luxas:raspberrypi
But one thing: If the Pi hasn't cgroup_enable=memory and swapaccount=1 set in /boot/cmdline.txt, it will probably fail. So maybe it's best to do something like:
// Do not throw errors if memory isn't mounted (e.g. on an ARM machine)
if err != nil && mount[1] != "/sys/fs/cgroup/memory" {

I could send a PR with that code if you like
I'm waiting on my Pine64 and the Hypriot guys are hacking on getting HypriotOS running on it, but after that we could try to get RancherOS running on that too

problem is uboot and allstar soc which has a known terrible linux support and no upstream kernel (for the pine64).. LOADS of hacking + 64 bit arm is different .. i play with hikeys here (UEFI makes things so much easyer .. )

authors: PierreKircher luxas

repo: rancher/docker-from-scratch

license_source: bigquery


text:
Enhancement/noun verb syntax

This is a draft PR to decide on the migration from the current VERB NOUN (e.g. k3d create cluster) syntax to a new NOUN VERB (e.g. k3d cluster create) syntax.
There are some pro's and con's for each of them (pros for the one are usually cons for the other option):

VERB NOUN

Pro: the syntax that current k3d users are used to and also what we've showcased so far for v3.0.0 (blog posts, meetup recording)
Pro: "natural"/"speaking" syntax
Pro: closest to what kubectl and kind do (and some other tools in the Kubernetes ecosystem

NOUN VERB

Pro: cleaner CLI (hierarchy)
Pro: makes it easier to add new nouns (i.e. k3d managed objects)
Pro: similar to many other cloud-native CLIs (e.g. gcloud, awscli, azure cli, ...)
Pro: easier development experience (k3d internal)

@iwilltry42 You should clarify in the PR message that voting with thumbs up is voting for the NOUN VERB syntax, voting with thumbs down  is for VERB NOUN.
Personally I am for NOUN VERB because when using the computer I start picking a category of nouns before the action (verb). After years of living in the CLI my thought process has adapted to the non-natural way you control a computer.
While it's not a big issue I never quite liked the way kubecli handles it.

Voting
NOUN VERB: 13
VERB NOUN: 6
-> Accepted the changes of this PR

source: gharchive/pull-request

license: MIT


text:
Add -s source option to 'ros install'

Make the source device configurable for "ros install" instead of hard-coding it to "/dev/sr0".

@SvenDowideit

there's a cmd := exec.Command("blkid", "-L", "RancherOS") which should detect the deviceName - mmm, oh, good point, you guys probably have something else in there.. What do you get when you run blkid on your ISO?

/dev/sr0: UUID="2017-02-23-17-37-46-00" LABEL="OemOS" TYPE="iso9660" PTTYPE="dos"
/dev/sda1: LABEL="RANCHER_STATE" UUID="148e94ab-c818-4781-9821-dfd9d16bf6de" TYPE="ext4"

Wasn't sure if folks would ever want to do a loopback mount ISO in which case it might be nice to have it be configurable.
I have to do a lot of other perl -pi -e 's/RancherOS/OemOS/g' ugliness already (plus "rancheros" and "rancher" too) in the "os" repo to rebadge everything properly.  It is my aim to try to slowly fix as many of these upstream in RancherOS as possible.

if you make a PR to extract the strings into a set of constants - you should be able to replace that perl with a build option...

There is a DISTRIB_ID environment variable that might be good to use in place of the string for the blkid check.

ok - to make sure tho - do you actually need this cmdline change, or does it work when you change the blkid to use OemOS

Haven't tried replacing the blkid string yet.  Currently on fire for my other committments.
Should probably close this PR then until I have time to try your suggestion and perhaps ponder a better fix.

ok, don't close - I was mostly wondering if i should rush this into v0.8.1 today-ish, and that suggests we can wait til 0.9.0 mid-march

In all honesty, some of my desire to add the "-s" option here was mostly due to the fact that this hack was needed when we were still using RancherOS 0.4.x here and was done on our fork by one of my colleagues;  I copied it again when we moved to 0.7.1 (since it was easier than trying to fix everybody's scripts).  Adding this option to RancherOS 0.8.x or later should be safe since omitting the "-s /dev/sr0" option should have identical behaviour.

Yes, it would be perfectly fine if this were to be considered for inclusion in 0.9.0 or later.

authors: SvenDowideit tylert

repo: rancher/os


text:
Add service --prune option

https://github.com/rancher/rancher/issues/7993

Please provide  a WIP PR in the rancher/cli project proving out the integation between it and this project.

Is there a reason why a test for this change cannot be added to https://github.com/rancher/rancher-compose-executor/blob/master/tests/integration/cattletest/core/test_compose.py?

LGTM

LGTM

authors: carolynhu cjellick joshwget

repo: rancher/rancher-compose-executor


text:
UI for ingress controller for RKE cluster

Ingress controller is enabled in types and rke, we need to give user a UI option to enable/disable it, similar to networkplugin/auth.

can not find the ingress controller related field in /v3/schemas/rancherKubernetesEngineConfig with rancher/server:master.  Which field should I use for the ingress controller option?

@alena1108 Can I have a payload example for it?

@loganhz ingress is enabled by default in rke, and can be customized as following:
ingress:
  provider: nginx
  options:
    map-hash-bucket-size: "128"
    ssl-protocols: SSLv2

options are described in the official documentation of nginx ingress controller

@galal-hussein how to disable it in rke ？

Version - 2.0 master 4/11
UI added, post and in API
Verified fixed

authors: alena1108 galal-hussein loganhz tfiduccia

repo: rancher/rancher


text:
State for Local users doesn't update until refresh

Rancher versions: 2.0 master 7/26
Steps to Reproduce:

Go to Users
Create a local user

Results:  State of local user stays in "Initializing" until I refresh the page.

Duplicated with https://github.com/rancher/rancher/issues/14738

authors: loganhz tfiduccia


text:
Hardcoded assign_ipv6_address_on_creation in somewhere to false (not working Assign IPv6 on creation) for ec2 instances

What kind of request is this (question/bug/enhancement/feature request): bug
Steps to reproduce (least amount of steps as possible): Create a subnet with AssignIpv6AddressOnCreation = true and use that subnet to launch a instance from Rancher
Result:
Instance is created without a IPv6 assigned.
Other details that may be helpful:
Creating a instance using  the EC2 management console in such subnet will result in a instance with an IPv6 assigned.
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): 2.1.3
Installation option (single install/HA): single install

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): Infrastructure Provider

Machine type (cloud/VM/metal) and specifications (CPU/memory): c5.large

Kubernetes version (use kubectl version): 1.12.3

Docker version (use docker version): 17.3.2

This is probably in docker-machine, but Kubernetes doesn't support dual-stack anyway, so your goal may be mostly moot...

@vincent99  Just to clarify, I need IPv6 communication from inside Docker to external only IPv6 networks, that is not achievable with AWS EC2 -> Rancher -> Kubernetes -> Docker?

Kubernetes supports IPv4-only or IPv6 only, but not both together (dual-stack) and pods/services/nodes/etc having one of each kind of address.  If you just need to talk to an external thing that has only a v6 address, that might be possible.
I'd launch some nodes in EC2 manuallyy and make a "custom" cluster out of them.  If you can get them to do what you want, then there would be a reason to look into who/where is disabling v6 in the docker-machine flow.


text:
Not able to display stats when a container are stopped and started - stays in "connecting" state until page is refreshed in container detail page.

Server version - v0.38.0-rc1
Lauch container detail page of any container.
Try to stop and start/ restart container.
After the container gets to "Running" state , Not able to display stats  , it stays in "connecting" state until page is refreshed.

Tested with server build - v0.38.0-rc3  .
When  containers are restarted/stopped and started , we do not see "connecting" anymore. I see the stats show up. But i sometime encounter cases where the graphs are empty - tracked in #2086


text:
rancherd 2.5 installer breaks because it defaults to 2.6

Rancher Server Setup

Rancher version: 2.6.0

Information about the Cluster
local cluster
Describe the bug
If you follow these instructions: https://rancher.com/docs/rancher/v2.5/en/installation/other-installation-methods/install-rancher-on-linux/ the installation of rancherd will fail because 2.6 does not support rancherd, but 2.6.0 is the release that the rancherd installer ends up looking for.

To Reproduce
Follow those instructions, watch it fail.
Result
Should see output like this:
curl -sfL https://get.rancher.io | sh -
[INFO]  finding release for channel latest
[INFO]  using v2.6.0 as release
[INFO]  downloading checksums at https://github.com/rancher/rancher/releases/download/v2.6.0/sha256sum.txt
[INFO]  downloading tarball at https://github.com/rancher/rancher/releases/download/v2.6.0/rancherd-amd64.tar.gz
curl: (22) The requested URL returned error: 404 Not Found

Expected Result
If we are going to keep the rancherd installer around in our 2.5 docs and functional for 2.5, we should probably pin the installer to 2.5.x releases, not 2.6.
Additional context
I feel like the 2.5 docs (linked above) should also say that this installation is not available in 2.6. Can whoever works on this also fix the docs to say that (assuming the powers that be agree with that).

This has been discused in a few issues:

https://github.com/rancher/rancher/issues/29209
https://github.com/rancher/rancher/issues/34648
https://github.com/rancher/rancherd/issues/8

And basically closed as won't fix, but I think leaving the installation method in a broken state by default is not good.


text:
Images from unused charts are in rancher-images.txt

Rancher Server Setup

Rancher version:v2.6.0

Describe the bug

In the rancher-images.txt file, there are images from system-charts that are not available to use within Rancher.
Whatever is fixed should be fixed to evaluate what is needed for system-charts as well as charts (non-master branch) to only find images in valid helm charts based on Rancher min/max version.
Example:
The original OPA gatekeeper chart uses rancher/opa-gatekeeper:v3.1.0-beta.7, but the max Rancher version of the chart is Rancher v2.4.99 as it was moved to the charts repo as of 2.5.
The script to get the list of charts doesn't account what Rancher version is applicable.
To Reproduce

Cut a RC of Rancher
Review list of images.txt

Result
rancher/opa-gatekeeper is in the list of images
Expected Result

There shouldn't be rancher/opa-gatekeeper on the list as it's not a valid image to be used in charts.
A way to test that it's fixed is to remove it from the list of images and confirm that OPA Gatekeeper can still be installed via the Apps and Marketplace view which is using the rancher/mirrored-opa-gatekeeper.
Screenshots

Additional context

Should be fixed with https://github.com/rancher/rancher/issues/33037, but that use case was to provide additional images if more than 1 version of a chart was applicable for a release

Is this rancher/opa-gatekeeper - or is it to validate that no files are present that shouldn't be? How can I get a list of entries that should NOT be present in rancher-images.txt?

Pass Verified in v2.6.4-rc3rancher/opa-gatekeeper not present in rancher-images.txt or rancher-images-source.txt
This also confirms #33037 Update rancher-images generator to support feature and system charts min/max version constraint passes

authors: deniseschannon ronhorton


text:
Creating RKE cluster with rotateEncryptionKey set to true crashes rancher

Rancher Server Setup

Rancher version: 2.6.3
Installation option (Docker install/Helm Chart): HA, Hosted Rancher

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc): RKE1

Issue description:
If you create a custom RKE cluster with rotateEncryptionKey set to true, rancher pods will crash and stay in crash loop back-off
Business impact:
This can result in an outage of rancher
Repro steps:

Create cluster
Set a name, click Edit as YAML
change rotateEncryptionKey: false to rotateEncryptionKey:true
Save
Run registration command (worker/etcd/cp) on a fresh VM

Workaround
Is workararound available and implemented? yes
What is the workaround: edit the clusters.management.cattle.io object and set the rotateEncryptionKey to false.
Actual behavior:
rancher crashes, logs:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x2a5edfe]goroutine 627123 [running]:
github.com/rancher/rke/cluster.InitClusterObject(0x4cd9e60, 0xc013330c60, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc00d55eea0, 0x2e, ...)
	/go/pkg/mod/github.com/rancher/rke@v1.3.3/cluster/cluster.go:705 +0xde
github.com/rancher/rke/cmd.RotateEncryptionKey(0x4cd9e60, 0xc013330c60, 0x0, 0xc00c3953a0, 0xc00c3953b0, 0xc017dcc660, 0x0, 0x0, 0x0, 0x0, ...)
	/go/pkg/mod/github.com/rancher/rke@v1.3.3/cmd/encryption.go:85 +0x185
github.com/rancher/rke/cmd.ClusterUp(0x4cd9e60, 0xc013330c60, 0xc00c3953a0, 0xc00c3953b0, 0xc017dcc660, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/go/pkg/mod/github.com/rancher/rke@v1.3.3/cmd/up.go:107 +0x35b
github.com/rancher/rancher/pkg/kontainer-engine/drivers/rke.clusterUp(0x4cd9e60, 0xc013330c60, 0xc00bbf2578, 0xc00c3953a0, 0xc00c3953b0, 0xc017dcc660, 0x0, 0x0, 0x0, 0x0, ...)
	/go/src/github.com/rancher/rancher/pkg/kontainer-engine/drivers/rke/rke_driver.go:511 +0x154
github.com/rancher/rancher/pkg/kontainer-engine/drivers/rke.(*Driver).Create(0xc001460f60, 0x4cd9e60, 0xc013330c60, 0xc00ec30bc0, 0x0, 0x0, 0x0, 0x0)
	/go/src/github.com/rancher/rancher/pkg/kontainer-engine/drivers/rke/rke_driver.go:162 +0x37c
github.com/rancher/rancher/pkg/kontainer-engine/types.(*GrpcServer).Create(0xc012378a00, 0x4cd9e60, 0xc013330ba0, 0xc013330bd0, 0xc012378a00, 0xc013330ba0, 0xc018d95ba0)
	/go/src/github.com/rancher/rancher/pkg/kontainer-engine/types/rpc_server.go:42 +0x79
github.com/rancher/rancher/pkg/kontainer-engine/types._Driver_Create_Handler(0x436f440, 0xc012378a00, 0x4cd9e60, 0xc013330ba0, 0xc015014fc0, 0x0, 0x4cd9e60, 0xc013330ba0, 0xc008490000, 0x193e)
	/go/src/github.com/rancher/rancher/pkg/kontainer-engine/types/drivers.pb.go:1437 +0x214
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00dbeefc0, 0x4d0b8b8, 0xc00d3e3b00, 0xc00d969560, 0xc010a13d40, 0x6ef3b60, 0x0, 0x0, 0x0)
	/go/pkg/mod/google.golang.org/grpc@v1.40.0/server.go:1297 +0x52b
google.golang.org/grpc.(*Server).handleStream(0xc00dbeefc0, 0x4d0b8b8, 0xc00d3e3b00, 0xc00d969560, 0x0)
	/go/pkg/mod/google.golang.org/grpc@v1.40.0/server.go:1626 +0xd0c
google.golang.org/grpc.(*Server).serveStreams.func1.2(0xc00ce1a1a0, 0xc00dbeefc0, 0x4d0b8b8, 0xc00d3e3b00, 0xc00d969560)
	/go/pkg/mod/google.golang.org/grpc@v1.40.0/server.go:941 +0xab
created by google.golang.org/grpc.(*Server).serveStreams.func1
	/go/pkg/mod/google.golang.org/grpc@v1.40.0/server.go:939 +0x1fd

Expected behavior:
Rancher doesn't crash
Additional notes:
this might be relevant - https://github.com/rancher/rke/blob/release/v1.3/cmd/up.go#L107
SURE-3986

Root cause
It is a bug in rancher/rke that RKE will panic if we enable rotate_encryption_key but disable secrets_encryption_config when creating a cluster. The panic happens because RKE tries to use the rkeConfig, which does not exist. The rkeConfig will be made after the rke up command succeeds.
What was fixed, or what changes have occurred

the bug is fixed rancher/rke GH-2840
It is not a valid operation to enable the rotateEncryptionKey when the encryption configuration is disabled when creating or updating a cluster. When it happens, rke will either panic(will be fixed) or leave the cluster stuck in updating state and ask users to restore a backup.  That is not a good user experience, so on the Rancher's side, we prevent it from happening during the request validating stage.

Areas or cases that should be tested

create a new RKE cluster, set rotateEncryptionKey: true by editing as YAML
edit an existing RKE  cluster, set rotateEncryptionKey: true by editing as YAML

in both cases, the operation is rejected and Rancher UI shows the following message:

create a new RKE cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true by editing as YAML
edit an existing RKE  cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true  by editing as YAML

in both cases, the operation should pass
What areas could experience regressions?
generally the areas around the above 4 cases
Are the repro steps accurate/minimal?
yes

Test Environment:
Rancher version: v2.6-head e4f6f4e
Rancher cluster type: HA
Docker version: 20.10
Downstream cluster type: RKE Custom cluster

Testing:
Tested this issue with the following:

Create a new RKE cluster, set rotateEncryptionKey: true by editing as YAML
Edit an existing RKE cluster, set rotateEncryptionKey: true by editing as YAML
Create a new RKE cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true by editing as YAML
Edit an existing RKE cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true by editing as YAML

Result - Low Pass

Create a new RKE cluster, set rotateEncryptionKey: true by editing as YAML - Pass

Edit an existing RKE cluster, set rotateEncryptionKey: true by editing as YAML - Pass

Create a new RKE cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true by editing as YAML Pass
Edit an existing RKE cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true by editing as YAML - Fail

Tested this issue with both custom cluster provisioning and rke node driver provisioning
Cluster gets stuck in Updating state with the following error

Provisioning logs all show the following information. The cluster seems to be stuck at Rotating cluster secrets encryption key

the fix is available in the latest v2.6-head

Retesting fixed scenario on v2.6-head 8ece6ae:

Edit an existing RKE cluster, set rotateEncryptionKey: true and secretsEncryptionConfig.enable: true by editing as YAML

Result - Pass
Cluster goes into Updating status with the following message:

Cluster is successfully updated and returns to Active state

authors: jiaqiluo timhaneunsoo


text:
Commands run from dashboard-shell in the GUI are not being audit-logged, whereas commands run from kubectl binary are

Rancher Server Setup

Rancher version:  v2.6.3-patch1

Installation option: Helm chart in air-gapped v1.20.4-eks-6b7464

Proxy/Cert Details: PrivateCA: true + ingress.tls: secret

Information about the Cluster

Kubernetes version: EKS v1.20.4-eks-6b7464
Cluster Type: local (EKS) and imported downstream (EKS)
None of these clusters are being provisioned by Rancher, only imported

User Information

Admin

Describe the bug
After enabling audit-logging as a sidecar at any level (1, 2, 3), both GUI operations and kubectl operations using provided kubeconfig get logged, but this is not the case with operations made from the kubectl shell in the GUI (dashboard-shell)
To Reproduce
Check logs in audit-logging container in Rancher server pod at audit-level 2 when:
A) Scaling a deployment replicas to 2 (from the GUI)
B) kubectl scale deployment xxx --replicas=2 (from desktop kubectl binary using kubeconfig provided by Rancher with "Download kubeconfig")
C) kubectl scale deployment xxx --replicas=2 (from dashboard-shell run from the GUI)
Result
A and B get logged according to audit-log-level, while 3 does not, at all, whatsover
Expected Result
C should get logged, too, as it's the case in A and B. It would seem to me that not logging operations launched from kubectl is a big hole in audit-logging
Screenshots
Additional context
Is this a bug or just a missing feature? In any case, would it be possible to disable GUI access to the dashboard-shell altogether to avoid this problem in the meantime?

Assigning to Ron to validate.

I've also just come across this (Rancher 2.7.5) and agree that it sort of makes the audit logging not very useful, as it won't be trustworthy, meaning confidence is lost.
A number of our Rancher users will be utilising the kubectl shell in the UI and not having these commands audit-logged is a deal breaker unfortunately.
Can you let us know if this will be addressed at some point?
Thank you and thanks for the great product!

authors: MKlimuszka euven sergio-dpt


text:
[BUG]Cannot unassign (delete) a global role assignment to an Azure AD SSO group

SURE-3845
Rancher Server Setup
Rancher Cluster:
Rancher version: v2.6.2
Number of nodes: 2
Node OS version: Ubuntu 20.04
Other:
Underlying Infrastructure: AWS
Any 3rd party software installed on the nodes: no
Describe the bug
When customer attempt to unassign a global role assignment in the UI, the UI returns a message that the group assignment was deleted, but it still shows in the UI.
To Reproduce
I was able to reproduce this on rancher 2.6.2 using RKE2 deployed on digital ocean and the following steps:

Deploy Rancher.
Deploy an RKE2 cluster in digital ocean.
Integrate an auth provider (openldap).
Assign a group to restricted admin.
Wait for the RKE2 cluster to deploy.
Delete the RKE2 Node(s) manually in the digital ocean console.
Delete the global role binding. Observe the errors in the logs.

Result
Deletion of global role assignments not removing global role assignment.
Expected Result
A deletion in the UI should delete the global role assignment without having to manually remove the finalizer.

From a functionality perspective, this behavior is desired. For Global Roles that give permissions on downstream clusters (such as restricted admin), when default deletion is used the binding should not be removed until the permissions have been removed from the downstream cluster. In cases such as a disconnected cluster, this will mean that the overall binding is not removed until all clusters have "checked-in" so that the per-cluster permission can be removed.
However, we definitely want to give users more information on why the binding hasn't been removed yet (including which cluster(s) need permissions removed). This should be accomplished in the initial implementation of a status field for GRBs. We also need to reproduce/confirm this behavior for Global Roles which use the new inheritedClusterRoles field.

blocked by https://github.com/rancher/rancher/issues/44668

authors: MbolotSuse samjustus


text:
[flaky-test]  TestRancherManagedChartsSuite

Flaky Test
Release Branch
source branch of PR: release/v2.8
Drone Build (if applicable)
pipeline stage URL: https://drone-pr.rancher.io/rancher/rancher/32154/5/2
Notes: This test appears to be introduced by #42421, which appeared to copy/modify a separate flaky test (identified in #41853).

his also happen 2 days ago.  Sep 6, 2023, 6:16 PM.
https://drone-publish.rancher.io/rancher/rancher/10520/6/2 under default-linux-arm64

authors: MbolotSuse felipe-colussi


text:
rancher  start  stop  Loading config-defaults

06:29:00.460 [main] INFO  ConsoleStatus - [1/6] [0ms] [1ms] Loading config-bootstrap
06:29:00.745 [main] INFO  ConsoleStatus - [2/6] [288ms] [283ms] Loading base-config
06:29:01.023 [main] INFO  ConsoleStatus - [3/6] [566ms] [278ms] Loading config
06:29:01.030 [main] INFO  ConsoleStatus - [4/6] [573ms] [6ms] Starting config-bootstrap
06:29:01.342 [main] INFO  ConsoleStatus - [5/6] [885ms] [312ms] Starting base-config
06:29:01.342 [main] INFO  ConsoleStatus - [6/6] [885ms] [0ms] Starting config
2016-08-26 06:29:01,832 INFO    [main] [ConsoleStatus] [1/32] [0ms] [0ms] Loading bootstrap
2016-08-26 06:29:02,025 INFO    [main] [ConsoleStatus] [2/32] [193ms] [189ms] Loading config-defaults

docker :1.12.1
rancher: 1.1.12
os: ubuntu 14.04

is this a fresh install or upgraded setup?

yes，use an external database to run Rancher server, happened

I updated today my setup as well and I now have this issue as well :(

@SantoDE @Dreampie  can you give more details?
what is your setup? where is the DB?
what version are you upgrading from and to?
can you share your upgrade commands?

@deniseschannon I just pulled a new docker image. However, I fixed it. My LOCK table was blocked, so rancher could not accquire a lock. Releasing a previous lock solved my issue and rancher was able to boot up again :)

@Dreampie have you implemented the workaround @SantoDE mentions?

closing this out.

I have the same problem with externel DB. @SantoDE can you describe what do you do to solve this problem?

Have it resolved with https://github.com/rancher/rancher/issues/6334
docker exec -it rancher-server bin/bash

mysql

use cattle;

UPDATE DATABASECHANGELOGLOCK SET LOCKED=FALSE, LOCKGRANTED=null, LOCKEDBY=null where ID=1;

authors: DavidBadura Dreampie SantoDE aemneina deniseschannon


text:
Pods that use kubernetes service accounts hold onto old service account token and fail to function when k8s stack gets recreated using backed up etcd

Whenever kubernetes is torn down and started again, all the pods that use service accounts don't get their service account tokens updated, and they cannot communicate with the new apiserver anymore.
This needs to be fixed by deleting the pods when kubernetes is torn down, and then recreating it when kubernetes is brought back up

Happens in the use case when k8s cluster gets recreated, and new cluster uses the etcd volumes of the old cluster. Pods/Services are being preserved, but k8s recreates tokens for existing service accounts - because k8s api service pulls a new cert from Rancher. So all pods using old service accounts' token, can no longer connect to the API server.

This is fixed as of v1.5.7.
Note: If your hosts were not cleaned up properly in prior Rancher setups before upgrading, it will not fix those environments.


text:
[go-rancher] creation of hosts with custom docker machine drivers not supported

Rancher Versions:
Server: *
healthcheck: *
ipsec: *
network-services: *
scheduler: *
kubernetes (if applicable): *
Docker Version:
Any
OS and where are the hosts located? (cloud, bare metal, etc):
Any
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
Any
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Any
Steps to Reproduce:
Try to use the go-rancher bindings to create a custom docker-machine driver host
Results:
go-rancher does not support injecting custom json fields in order to support customer docker-machine driver.
e.x using the vultr docker-machine driver, the API supports and expects {"hostname": "bhal", "vultrConfig":{"etc": "abc"}}, however there is no way using the generate host struct in go-rancher to marshal into this json field. As a result it is impossible to support host creation with custom docker machine drivers, even though the API supports it.
Suggested fixes: (one of)

Update Create (https://github.com/rancher/go-rancher/blob/master/v2/generated_host.go#L145) to accept interface type, which would allow annonymous struct extension
Update the generic doCreate (https://github.com/rancher/go-rancher/blob/master/v2/common.go#L406) to inject extra args as need and update all Create calls for resources to allow passing those
Update doCreate/Create to pass an interface which would allow the extraction of extra args

Hi @bfosberry, I'm pretty sure what you're looking to do is possible with the generic Create API call. I create hosts from arbitrary drivers here. Let me know if that's what you're looking for!

That is exactly what I need to do, it feels kinda shitty to use the underlying client directly like this, but dynamic type handling isnt a strongpoint of Go and this unblocks me for now!

Please let us know in a comment if you can still reproduce the issue, and we'll reopen it

authors: bfosberry joshwget loganhz


text:
k8s 1.6 fresh install deletes the rancher-kubernetes-agent

Rancher versions:
rancher/server: v1.6.3-rc1
kubernetes (if applicable): rancher/k8s:v1.6.6-rancher1-4
The fix for the upgrade issue is causing the a problem with fresh installation, it deletes the rancher-kubernetes-agent, and the pods failed to start correctly.
6/21/2017 7:53:19 PM+ '[' kube-apiserver == kubelet ']'
6/21/2017 7:53:19 PM+ '[' kube-apiserver == kubelet ']'
6/21/2017 7:53:19 PM+ '[' kube-apiserver == kube-proxy ']'
6/21/2017 7:53:19 PM+ '[' kube-apiserver == kube-apiserver ']'
6/21/2017 7:53:19 PM+ export RANCHER_URL=http://104.197.68.101:8080/v1
6/21/2017 7:53:19 PM+ RANCHER_URL=http://104.197.68.101:8080/v1
6/21/2017 7:53:19 PM+ export RANCHER_ACCESS_KEY=2FE5DDDA8B2CB14D5F97
6/21/2017 7:53:19 PM+ RANCHER_ACCESS_KEY=2FE5DDDA8B2CB14D5F97
6/21/2017 7:53:19 PM+ export RANCHER_SECRET_KEY=BuF6H9uXBWuVpWw9ay7aeDdcu3WjSygcadddUPjN
6/21/2017 7:53:19 PM+ RANCHER_SECRET_KEY=BuF6H9uXBWuVpWw9ay7aeDdcu3WjSygcadddUPjN
6/21/2017 7:53:19 PM++ rancher inspect --type=service rancher-kubernetes-agent
6/21/2017 7:53:19 PM++ jq '.launchConfig.labels."io.rancher.k8s.agent"'
6/21/2017 7:53:21 PM+ LABEL=null
6/21/2017 7:53:21 PM+ '[' null = null ']'
6/21/2017 7:53:21 PM+ rancher rm --type=service rancher-kubernetes-agent
6/21/2017 7:53:23 PM1s19

Rancher server: v1.6.3-rc1
Kubernetes image: rancher/k8s:v1.6.6-rancher1-4
Tested the latest catalog for kubernetes 1.6.6 and the rancher kubernetes agent started correctly.


text:
Ability to disable access to infrastructure stacks for certain user roles

Use case is in a large corporate environment where some users of Rancher are not responsible for the infrastructure stacks and therefore should not see or have the ability to manipulate them

Close in favor of https://github.com/rancher/rancher/issues/8407


text:
[2.5] Add check and unit test for release semver

Add check and unit test for release semver. The check parses for a "head" substring.
The IsRelease function needs to be able to discern a v2.X-head branch from a release.
Add unit test for the IsRelease function.
Original PR: #29525

https://github.com/rancher/rancher/issues/29362

authors: mrajashree nickgerace


text:
[v2.9] Do not refresh EKS config when upstream cluster is updating

Issue: https://github.com/rancher/eks-operator/issues/752
Issue:

Problem

Solution

Testing

Engineering Testing
Manual Testing

Automated Testing

Test types added/modified:

Unit
Integration (Go Framework)
Integration (v2prov Framework)
Validation (Go Framework)
Other - Explain: EXPLAIN
None
REMOVE NOT APPLICABLE BULLET POINTS ABOVE

If "None" - Reason: EXPLAIN THE REASON

If "None" - GH Issue/PR: LINK TO GH ISSUE/PR TO ADD TESTS

Summary: TODO
QA Testing Considerations

Regressions Considerations

TODO
Existing / newly added automated tests that provide evidence there are no regressions:

TODO

It won't be needed because fix will be applied in eks-operator https://github.com/rancher/eks-operator/pull/846


text:
Configmap

Proposed changes

Fix the issue that download filename is always download.txt
Support upload key value pairs when create config map
Show import YAML button in config map list page as user can import it via YAML

Types of changes

Bugfix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)

Linked Issues
https://github.com/rancher/rancher/issues/16610

Further comments

This seems pretty confusing, providing yaml in all other contexts means you're giving a k8s manifest file.
File types the input allows aren't restricted.
The mixin looks like copy-posted subset of input-text-file

@vincent99

This seems pretty confusing, providing yaml in all other contexts means you're giving a k8s manifest file.

Yes. User will be able to upload any k8s manifest file via Import YAML in Config Maps list page.
But if we don't show the button here, users need to go to workloads list page and import config maps there. Does it make sense?

File types the input allows aren't restricted.

Changed it to text/*

The mixin looks like copy-posted subset of input-text-file

Yes. Do you mean I should do Component.extend(InputTextFile, {}) in form-key-value?
InputTextFile contains a lot of other attributes. Also it does something like set(this, 'value', value);
I guess it's better to have some mixin with simple logic for uploading ?

repo: rancher/ui


text:
Write a guide to demo Augury with Kitchen Sink app.

Need to write a guide showing usage of Augury with the Kitchen app.
Start with the basic of installing, opening and using devtools.
What to expect when using Augury to view ng2 app vs non-ng2 app.
Each Angular feature should has a how to.

This story has been broken down into smaller one to create ng2 sub apps + guide, closing this as it's a dup.

repo: rangle/augury

license: mit


text:
Refactor the object-recreation serializer to avoid deep recursion and stack overflows

This resolves stack overflows associated with the serializer. It is connected to https://github.com/rangle/augury/issues/578 but is not a complete solution for that issue. Stack overflows still occur for very deep component trees. But this fixes one source of them.

This looks good to me :- )

@clbond the code LGTM, however, when i run the build the highlighting is strange.

Conversation between @clbond, @igor-ka, and myself reveals that the highlighting bug/behaviour @igor-ka was seeing on this branch was present without this PR.

authors: clbond igor-ka xorgy


text:
userIdentityProperty

If I set user property in yaml like:
// config/packages/ranky_media.yaml
ranky_media:
user_identifier_property: email
It doesny make any changes, new records in database "ranky_media" table, 'created_by' are still with 'username'
v: 1.2

Yes, that's exactly how it works. user_indentifier_property

Ok great but its not working. After set email in yaml config i get username in database (table: ranky_media)

repo: ranky/media-bundle


text:
two espaltherma same homeassistant

Could you tell me how I can have two espaltherma in the same home assistant? I want to control two Daikin Althermas in the same HomeAssistant installation. Can I? What should I change in the code so that the mqtt messages are not confused?
Thanks

Hi @ralf2025, welcome and thanks for your support.
Have a look at this same question opened 2 weeks ago #140
You'll find the things you need to change.

Thanks for the speed and I apologize for not having found it earlier. :-)

repo: raomin/ESPAltherma


text:
(1.10.2) Unable to automate the upgrade of a Draconic Evolution tool

Issue description:
I am unable to automate the upgrade of a Draconic Evolution tool as it does not recognize the tool.
https://www.youtube.com/watch?v=uT707TO-qso
What happens:
See video
What you expected to happen:
See video
Steps to reproduce:
See video
...
Version (Make sure you are on the latest version before reporting):

Minecraft: 1.10.2
Forge: 12.19.3.2221
Refined Storage: 1.2.21

Does this issue occur on a server? [yes/no] yes as well
If a (crash)log is relevant for this issue, link it here:
[pastebin/gist/etc link here]

Err, why wasn't this closed automatically by that commit...

authors: itanshi raoulvdberge

repo: raoulvdberge/refinedstorage


text:
用在CNN上

你好，作者。我想问一下gnconv可以直接用在cnn的backbone中吗，例如resnet等。

感谢对我们工作的关注。为了和最新的工作比较，我们的实验都是在比ResNet更先进的模型架构上进行的。把整个resblock换成horblock应该是可行的，另外也可以尝试gnconv替代3x3卷积。

authors: LHCyGan raoyongming

repo: raoyongming/HorNet


text:
Container (Docker / Singularity) Availability

Hi,
do you have a container for CALDER?
Thanks,
Bruce

OK, I tried making one, there are serious dependency issues mostly because pyclone is python2.
Not your software I appreciate, but yours relies on pyclone and basically makes an install via conda impossible IMO.
A shame, was looking forward to trying CALDER.
Thanks for your reply,
Bruce

I understand your frustration -- between Pyclone requiring Python 2 and Absence-Aware Clustering requiring Python 3 (not to mention that AAC uses an option only available in Pyclone 13.1, which is only packaged for Linux on Anaconda), there are a lot of pipeline-breaking issues with the preprocessing. Hopefully we get a chance soon to rework the clustering scripts/procedure, perhaps using the recently released Pyclone-VI, and can then revisit creating a Docker image for CALDER.

repo: raphael-group/calder


text:
Atualização da imagem fundo

Deixar visível o as letras da imagem de fundo
Data de inicio 04/05
Data de termino 04/05

Validado por Arthur.

authors: ABergamaco raphaeldefquirino

repo: raphaeldefquirino/EcoCloset


text:
Is it possible to provide a custom escaped sequence?

Hello, I am using this crate to render my blog posts (for example, https://zhuyi.fan/post/optimization-learning-notes-4.html).
In my case, I would like to use it together with mathjax to render formulas, however, some symbols like \\, _ and \{ are mistranslated by cmark. Is it possible to let the parser escape the content quoted in math blocks (between $ and $$)?

It is not possible through pulldown itself. Your use case of inline math is a common request for markdown parsers (see https://github.com/raphlinus/pulldown-cmark/issues/6), but there is not a clear standard that we can implement.
I personally preprocess the markdown for my blog to render the math spans and blocks. It seems to be the only way to do math reliably with pulldown at this point.

As this is essentially #6, I'll close this as duplicate. If anyone can produce a spec we could implement, please share it there and we will take under serious consideration.

authors: SchrodingerZhu marcusklaas

repo: raphlinus/pulldown-cmark


text:
[HOW-TO]Is there a way to disable main?

Is there a way to disable main stream? I want to get only raw stream data.
Will disable main stream increase performance? That is will there be less processes running?

Hi, thanks for the question. I'm afraid it's not possible to disable the "main" stream. In fact, for our libcamera implementation we have to produce a non-raw output in order to drive the camera, so we'd be doing it internally even if Picamera2 let you disable it! You can reduce any performance effects by asking for a small output size, such as QVGA.

Hi again, I don't there's anything more to add to this one, so I'll close it shortly if there's nothing further. Thanks!

Closing, but please open another issue if anything else comes up. Thanks!


text:
Null preview improvements

This PR replaces https://github.com/raspberrypi/picamera2/pull/388
It should be identical but breaks the changes up into separate commits.

:heart_decoration: Thank you.

I'll merge this one shortly, I have some other stuff ahead of it in the queue!

I've merged this one directly now.

authors: davidplowman meawoppl


text:
Add support for SEGGER RTT STDIO

Fixes #774
This PR adds support for using SEGGER RTT as an STDIO driver.
The code for the stdio_rtt implementation is quite simple and copies the structure of the other STDIO drivers. RTT support can be enabled in the same way as the other STDIO drivers, simply add pico_enable_stdio_rtt(${TARGET_NAME} 1) to your CMakeLists.txt and call stdio_init_all() in your initialisation code.
The official SEGGER_RTT code is included in the lib directory (the latest version, V762c). I have copied all files exactly as-is, despite many of the files being unnecessary/code samples/etc. I did this to make updates to newer versions more simple (just overwrite the entire directory with the latest version). Unfortunately SEGGER does not distribute this code as a git repo which could have been included as a submodule.
Happy to make improvements/adjustments to this implementation based on feedback.

Why don't you re-package the Segger code as a git repository yourself (or clone (and update?) https://github.com/PromyLOPh/rtt)?
Did you ask them to please publish their code to github?

I find the problem with third parties hosting a clone of the official code is that they become out of date very quickly. To be fair, this problem would be the same by keeping the code copy in the pico-sdk, so I'm not sure what the best solution is...
The version you linked is 5 years old. I found another repo that seems to do a better job of keeping the code up to date: https://github.com/adfernandes/segger-rtt. I am happy to update my PR to use this third-party repo, but I would also like a maintainer of this project to chime in and advise what approach would most likely get merged.
I emailed SEGGER this morning to see if they would consider publicly hosting the code on a git repo.

I was just searching for something else, but i think they already have the RTT source code on GitHub. Didn't checked if the version is the newest one (they always change the header on a release, but code often doesn't have any changes)
https://github.com/SEGGERMicro/RTT
Hope i could help a little bit

FYSA I keep the unmodified RTT sources maintained and properly tagged here: https://github.com/adfernandes/segger-rtt (been doing it for a while)

This PR has been added to the 1.6.0 milestone.  Anything speaking against merging this into develop in the not too far future?

FWIW, I just pushed Version V7.86h (2023-04-12) to my unmodified, pristine mirror of Seggger's RTT distribution.
Segger's release notes are usually pretty complete, and there were some minor changes to to RTT backend in recent history.
I would ask that the most recent-possible RTT sources, like mine from above, be merged into the Pico SDK since this can make a difference as the debuggers and protocol (slowly) evolve!

This PR has been added to the 1.6.0 milestone. Anything speaking against merging this into develop in the not too far future?

I think we would want to avoid copying a bunch of Segger code into this repo... so would prefer to build with code from a submodule and have that submodule be optional

@kilograham, I agree with your "use a submodule" sentiment 100%
The issue is that there is no official source, as far as I know, RTT repository - that's why I maintain this, which is very carefully exactly what Segger distributes.
@anaoum, if you agree, I'd be happy to rework your PR to use a submodule...

@anaoum, if you agree, I'd be happy to rework your PR to use a submodule...

no objection from me. I would have done it myself but am quite time poor at the moment.

(ping @kilograham and @anaoum)
Superseded by #1411

@kilograham, I have vendored in RTT and removed the submodule.
However, no matter what I do, I cannot apply the compiler flags.
set_source_files_properties(SEGGER/RTT/SEGGER_RTT.c
    PROPERTIES COMPILE_OPTIONS "-Wno-cast-qual;-Wno-cast-align")

You'll see that I have
include(CMakePrintHelpers)

cmake_print_properties(
    SOURCES SEGGER/RTT/SEGGER_RTT.c
    PROPERTIES COMPILE_OPTIONS
)

and cmake does appear to apply those properties, but ... they're not in the actual compile commands, and the build fails.
Any idea what might be wrong?

You'll have to specify the full path to the source file for set_source_files_properties to take effect.

question: why don't you put the SysView files into the SEGGER subdirectory.  Those are part of the more or less generic RTT support and would allow a user to easyly integrate SysView support.

closed in favor of #1411

authors: PhilippHaefele adfernandes anaoum kilograham peterharperuk rgrr smurfix

repo: raspberrypi/pico-sdk


text:
🛑 USTC Mirror (mirrors.ustc.edu.cn) is down

In 94d290c, USTC Mirror (mirrors.ustc.edu.cn) (https://mirrors.ustc.edu.cn) was down:

HTTP code: 0
Response time: 0 ms

Resolved: USTC Mirror (mirrors.ustc.edu.cn) is back up in 387359a.

repo: raspbian-addons/status


text:
Fix missing import in multiple-functions.md

Hi!
Thank you for putting out those nice tutorials on ratatui.
I was trying to use the tutorial and faced an error with the full multiple-functions example.
There seems to be a missing import, so here is the fix.

Thanks for the PR :)

authors: joshka pyaillet

repo: ratatui-org/website


text:
Expose the WebSocket protocol on the connection

Fixed #843

This can be achieved within your code without modifying Ratchet:
public function onOpen(ConnectionInterface  $conn) {
    $protocol = $conn->httpRequest->getHeader("Sec-WebSocket-Protocol");
}

authors: Kingdutch cboden

repo: ratchetphp/Ratchet


text:
Missing directory?

Hello! I'm trying to follow your instructions in the readme. However, I can't find the directory "$SEQ_PLAN/tools" or the file "learn_bpe.py" in section 1 paragraph 3 in readme
cd $SEQ_PLAN/tools
python learn_bpe.py -s 6000 < $COMBINED > $CODE

Sorry Yuxuan for the late reply.
The learn_bpe.py is the file from https://github.com/rsennrich/subword-nmt/blob/master/subword_nmt/learn_bpe.py.

authors: ratishsp wwwwwyyyyyxxxxx


text:
[Bug] [Canary] Custom emojis doesn't load until hover

Describe the Bug
Custom emojis in emoji picker doesn't load until hover
To Reproduce

Install BD on Discord Canary
Open emoji selector
Only default (unicode) emojis loading properly

Expected Behavior
Emojis loading on emoji selector open
Screenshots

Discord Version
Canary 58861 (e350530)
BBD 0.3.4 (65bf2ab)
Host 0.0.264
Injector 0.4.1
Windows 10 64-Bit (10.0.18363)
Additional Context
Happens because of class normalization:
Uncaught DOMException: Failed to execute 'remove' on 'DOMTokenList': The token provided ('emojiItemImageLoading-1yEIxx da-emojiItemImageLoading') contains HTML space characters, which are not valid in tokens.

Thanks for reporting, I will patch that.

Just pushed out a fix!

repo: rauenzi/BetterDiscordApp


text:
Improper Electron Security Practices (CSP)

Upon reviewing this project's "injector" code, it appears it disables numerous security features implemented by Discord to ensure remote code is sufficiently sandboxed from the operating system. As it stands, this software is a walking remote code execution waiting to happen.

Node Integration Enabled

        options.webPreferences.nodeIntegration = true;

This software leaks node integration into the main window. This means the window has access to directly modify the file system and execute arbitrary commands.

Remote Module Enabled

        options.webPreferences.enableRemoteModule = true;

This software enables Electron's remote module in the main window. This means the window has access to send direct IPC commands which can be used to execute arbitrary code. The remote module is also being removed in the next version of Electron, so you will have to fix this anyways when that occurs.

Context Isolation Disabled

        options.webPreferences.contextIsolation = false;

This software disables Electron's context isolation, which forces browser code to run in a separate context from main window code. This prevents attackers from doing things like polluting prototypes which may expose access to restricted functions that escalate access to execute arbitrary commands.

Content Security Policy (CSP) Disabled

// Remove the CSP
const removeCSP = () => {
    electron.session.defaultSession.webRequest.onHeadersReceived(function(details, callback) {
        if (!details.responseHeaders["content-security-policy-report-only"] && !details.responseHeaders["content-security-policy"]) return callback({cancel: false});
        delete details.responseHeaders["content-security-policy-report-only"];
        delete details.responseHeaders["content-security-policy"];
        callback({cancel: false, responseHeaders: details.responseHeaders});
    });
};

// Remove CSP immediately on linux since they install to discord_desktop_core still
if (process.platform == "win32" || process.platform == "darwin") electron.app.once("ready", removeCSP);
else removeCSP();

CSP exists to mitigate and prevent attacks around most XSS and content injection. If someone finds XSS in Discord, the lack of 1, 2, and 3 listed above would directly result in remote code execution.
Security of Electron is not to be taken lightly as there are many foot-guns. By releasing software like this and encouraging people to install it, you are putting users at risk without taking proper steps to keep Electron secure. I would strongly encourage you to read up on the best security practices for Electron at https://www.electronjs.org/docs/tutorial/security and apply those to this project.

I wonder what's with the sudden reach out?

If someone finds XSS in Discord, that's Discord's fault.

what happening ?

night what are you doing in better discord lmao

Seriously... If Discord wanted to be at least somewhat secure, they'd install into %ProgramFiles% (like Skype does) instead of some random location where literally any application run with normal user privileges can mess with it. Note that Discord's forced auto-updates at application startup can also inject code at will. The machine is compromised long before any v8 context isolation would happen.

I think it's important to state that these security prefs are disabled on purpose to give freedom to plugins and themes.
Sure, we could enable them back on, but that would have to come with major trade-offs that doesn't seem to be worth doing to an existing client mod.

Discord back at it again fucking shit up. The bug label shouldn't apply here since this is exactly as intended. You've copy-pasted the same exact message across 5 repos: the one we're on now, here, there, this one, and that one. It's borderline spam in my opinion but I guess you could probably get away with it anyways since you're the creator of the most used Twitch extension ever and a developer for one of the most popular VoIP services out right now.
This is exactly how these modifications are intended to work, and if you're here saying this so later you can take legal action against these repos then you're going to make a really bad image for yourself as a company who "loves the open source community" yet wants to take all of these down.

The label is from the issue template.
I think playing the blame game is the worst thing you can do in this place, please calm down.

😂

@cookie1599 @Sagishii @SpicyTakis offtopic comments are unnecessary and clutter the issue. Please refrain from doing this.

Seriously... If Discord wanted to be at least somewhat secure, they'd install into %ProgramFiles%

Discord packages for Linux do install it system-wide (thanks to the package maintainers, not Discord's developers).

@night Are you writing on behalf of Discord or as a side project developer?
There's lots Discord can do to help client modifications and make these security problems a non issue. Instead you create GitHub issues across all the popular client mods as if they can work around these problems without major drawbacks.
Maybe if you worked more as a company with client modifications you wouldn't have to worry about these issues.

@night I find it hard to believe that you, an employee of Discord, are trying to "help" in fixing security issues in applications that break the TOS.

Seriously... If Discord wanted to be at least somewhat secure, they'd install into %ProgramFiles% (like Skype does) instead of some random location where literally any application run with normal user privileges can mess with it. Note that Discord's forced auto-updates at application startup can also inject code at will. The machine is compromised long before any v8 context isolation would happen.

Discord does have improvements planned for downloading and updating, but I just want to highlight that these are completely different attack vectors.
Discord's app displays a remote website which is being given direct access to remotely execute code by this software. In an example attack scenario, arbitrary user data which somehow gets access to run JavaScript would essentially be a 0-day. To exploit app updates, Discord's distribution channels would need to be forced to serve an exploit. Given the attack surfaces listed, the former is more likely to occur since user-generated content is accessible from clients and there is much more surface area for attack.
Arguing that all security should go out the window because of us installing to AppData is also a pretty irresponsible way of thinking as a developer. Security is built in layers, with the end goal being that the attack surface area is sufficiently reduced. It is everyone's job to think about security.

I think it's important to state that these security prefs are disabled on purpose to give freedom to plugins and themes.
Sure, we could enable them back on, but that would have to come with major trade-offs that doesn't seem to be worth doing to an existing client mod.

It's unfortunate that you believe security and client mods to be mutually exclusive. While making a client mod work properly in a sandboxed environment will require some amount of work, the end result here is for the benefit of users. If you have specific questions regarding Electron I can try to offer you direction/advice, but all of the listed security issues are usually solvable problems.

It's a public repo, feel free to contribute

I understand.
While I'm not sure some of these are possible for us to do at the moment, like:

Disabling Node integration, this is hard thanks to our code being ran from a

First, I want to apologize for some of the more.. antagonistic responses. Their feelings do not reflect my own.

It's unfortunate that you believe security and client mods to be mutually exclusive.

I agree that they should not be mutually exclusive.
The points you've brought up are things I've considering changing in the past, however this mod started out as a fork of the original BetterDiscord, it's only no longer marked as a fork by GitHub due to the limitations it was placing on the repo. Because of that, all of those were ingrained in the original design and removing those would cause backwards-incompatible changes for the mod itself as well as plugins and themes.
I feel similar to @Bowser65 that some of it could be changed.

For node integration, we could use our own API/IPC to get modules or equivalent functions to plugins.
The CSP could be modified to allow only certain whitelisted sites as Bowser also pointed out. (In our case we would only allow GitHub and Imgur as that's what we limit our plugins and themes to currently.)
And again as Bowser said, the most significant hurdle would be the context isolation. After bouncing some ideas off of Bowser I had a couple ideas on potential workarounds for the context isolation, however I haven't had a chance to test them out.

That said, as someone who not only maintains BetterDiscord, but also has contributed to (in some form or another) EnhancedDiscord as well as Powercord, I think it's a good idea to put some of the more detailed discussion in one spot for us all. I think the best spot (on GitHub) would be the issue you opened on the Powercord repository as you and Bowser have already had some dialogue there and it's also not as cluttered as this one seems to have become very quickly. Let me know if you can think of a better spot.
As a side note, I have been working on another (potential) mod separate from BD where security would be a bigger part of the mod and these holes would not exist. The injector I've been working on for that one complies with all of the above, save for the context isolation. Hopefully soon I'll be able to test out some of the ideas I mentioned above and provide an update.

You shouldn't limit img-src to Imgur. There are many (oftentimes better) image hosting services.

And you aren't allowed to hotlink imgur anyway outside of forums (according to their ToS anyway, or, what they claim is in it)

It seems the change night mentioned on the Powercord issue

It's also worth noting that these issues have prompted some internal discussion around Electron security. We are now considering force enabling BrowserWindow security options on the Electron level within the next couple months

has finally become reality. See this commit here. Discord is now shipping a modified version of Electron to ensure these features are on and cannot be disabled by BD. Currently, this only affects the Canary release channel, but it may come to others soon.
This requires a major re-architecture of BD (and potentially plugins as well) in order to comply and work with this. I can only say I will do what I can when I can. My free time, and frankly interest, to work on BD has been dwindling in recent days. Especially with work taking up more and more of my time.

It seems the change night mentioned on the Powercord issue

It's also worth noting that these issues have prompted some internal discussion around Electron security. We are now considering force enabling BrowserWindow security options on the Electron level within the next couple months

has finally become reality. See this commit here. Discord is now shipping a modified version of Electron to ensure these features are on and cannot be disabled by BD. Currently, this only affects the Canary release channel, but it may come to others soon.
This requires a major re-architecture of BD (and potentially plugins as well) in order to comply and work with this. I can only say I will do what I can when I can. My free time, and frankly interest, to work on BD has been dwindling in recent days. Especially with work taking up more and more of my time.

Time for BD to start installing its own version of Electron to replace Discord's. :thinking:
(discord_arch_electron already does that using a system-wide Electron installation.)

Time for BD to start installing its own version of Electron to replace Discord's. :thinking:
(discord_arch_electron already does that using a system-wide Electron installation.)

https://github.com/discord/electron/commit/c0575e6fb2702c5ceaf9be8a9250605cd5f92393

https://github.com/discord/electron/commit/c0575e6fb2702c5ceaf9be8a9250605cd5f92393

It's also worth noting that these issues have prompted some internal discussion around Electron security. We are now considering force enabling BrowserWindow security options on the Electron level within the next couple months

has finally become reality. See this commit here. Discord is now shipping a modified version of Electron to ensure these features are on and cannot be disabled by BD. Currently, this only affects the Canary release channel, but it may come to others soon.
This requires a major re-architecture of BD (and potentially plugins as well) in order to comply and work with this. I can only say I will do what I can when I can. My free time, and frankly interest, to work on BD has been dwindling in recent days. Especially with work taking up more and more of my time.

I'm assuming that's what just broke the latest discord update from the AUR for me (canary). Was about to open an issue, but I randomly decided to read this first.

It's also worth noting that these issues have prompted some internal discussion around Electron security. We are now considering force enabling BrowserWindow security options on the Electron level within the next couple months

has finally become reality. See this commit here. Discord is now shipping a modified version of Electron to ensure these features are on and cannot be disabled by BD. Currently, this only affects the Canary release channel, but it may come to others soon.
This requires a major re-architecture of BD (and potentially plugins as well) in order to comply and work with this. I can only say I will do what I can when I can. My free time, and frankly interest, to work on BD has been dwindling in recent days. Especially with work taking up more and more of my time.

I'm assuming that's what just broke the latest discord update from the AUR for me (canary). Was about to open an issue, but I randomly decided to read this first.

why not try using something like vm2 to isolate plugins?

stable seems to have implemented this change as well

stable seems to have implemented this change as well

It's being rolled out rather slowly. There is a fix that can be pushed if absolutely needed. You might also have luck with this quick patch if you're on stable.

Affects stable as well now, attempting to install through betterdiscordctl will cause discord to greet you with a message saying "your discord installation has continuously failed to update and is now very out of date".

thx seems to be for windows though unless I am mistaken so linux users are out of luck I'll try and see if I can apply the solution to the Linux version, I think the equivalent folder on Linux is ~.local/betterdiscord or something, but I'm assuming if they put a notice that says windows only it won't be so easy

it's the same for me. I guess I'll just have to wait until the next version of BD releases. Good luck guys

thx seems to be for windows though unless I am mistaken so linux users are out of luck I'll try and see if I can apply the solution to the Linux version, I think the equivalent folder on Linux is ~.local/betterdiscord or something, but I'm assuming if they put a notice that says windows only it won't be so easy
EDIT: NVM idk why I thought the patch had to be placed into the betterdiscord folder its the discord folder that it has to go into

yes here: /usr/share/discord/resources
chown -R yoruser: /usr/share/discord/resources/app
chmod -R 644 /usr/share/discord/resources/app
but I have try with no success... Let me know if its works for you

See https://github.com/rauenzi/BetterDiscordApp/issues/598#issuecomment-805827642

Update: A new cross-platform installer (in beta) is now available that runs safely inside of these new security measures.
https://github.com/BetterDiscord/Installer/releases/latest

After a long time, BetterDiscord now complies with almost all of the items listed, however a better solution for the CSP is in the works. So this issue will stay open to track that.

Not directly related to electron, but as an additional security measure all plugins from our new website are manually reviewed every update. This further decreases the likeliness of malicious code being distributed through official sources, however security still is an issue when it comes to running untrusted plugins.


text:
chore(deps): update dependency tailwindcss to v3

This PR contains the following updates:

Package
Type
Update
Change

tailwindcss (source)
dependencies
major
2.2.19 -> 3.0.8

Release Notes

tailwindlabs/tailwindcss
v3.0.8
Compare Source
Fixed

Reduce specificity of abbr rule in preflight (#6671)
Support HSL with hue units in arbitrary values (#6726)
Add node16-linux-arm64 target for standalone CLI (#6693)

v3.0.7
Compare Source
Fixed

Don't mutate custom color palette when overriding per-plugin colors (#6546)
Improve circular dependency detection when using @apply (#6588)
Only generate variants for non-user layers (#6589)
Properly extract classes with arbitrary values in arrays and classes followed by escaped quotes (#6590)
Improve jsx interpolation candidate matching (#6593)
Ensure @apply of a rule inside an AtRule works (#6594)

v3.0.6
Compare Source
Fixed

Support square bracket notation in paths (#6519)
Ensure all plugins are executed for a given candidate (#6540)

v3.0.5
Compare Source
Fixed

Revert: add li to list-style reset (9777562d)

v3.0.4
Compare Source
Fixed

Insert always-on defaults layer in correct spot (#6526)

v3.0.3
Compare Source
Added

Warn about invalid globs in content (#6449)
Add standalone tailwindcss CLI (#6506)
Add li to list-style reset (00f60e6)

Fixed

Don't output unparsable values (#6469)
Fix text decoration utilities from overriding the new text decoration color/style/thickness utilities when used with a modifier (#6378)
Move defaults to their own always-on layer (#6500)
Support negative values in safelist patterns (#6480)

v3.0.2
Compare Source
Fixed

Temporarily disable optimize universal defaults, fixes issue with transforms/filters/rings not being @apply-able in CSS modules/Svelte components/Vue components (#6461)

v3.0.1
Compare Source
Fixed

Ensure complex variants with multiple classes work (#6311)
Re-add default interop to public available functions (#6348)
Detect circular dependencies when using @apply (#6365)
Fix defaults optimization when vendor prefixes are involved (#6369)

v3.0.0
Compare Source
Fixed

Enforce the order of some variants (like before and after) (#6018)

Added

Add placeholder variant (#6106)
Add composable touch-action utilities (#6115)
Add support for "arbitrary properties" (#6161)
Add portrait and landscape variants (#6046)
Add text-decoration-style, text-decoration-thickness, and text-underline-offset utilities (#6004)
Add menu reset to preflight (#6213)
Allow 0 as a valid length value (#6233, #6259)
Add CSS functions to data types (#6258)
Support negative values for scale-* utilities (c48e629)
Improve length data type, by validating each value individually (#6283)

Changed

Deprecate decoration-slice and decoration-break in favor box-decoration-slice and box-decoration-break (non-breaking) (#6004)

Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

Still waiting this: https://github.com/ben-rogerson/twin.macro/issues/589

Code snippet font is smaller

outline style isn't applied

repo: raulfdm/raulmelo-studio


text:
🛑 Unanue is down

In d5a0b8c, Unanue (http://unanue.funsadu.ar:60080) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Unanue is back up in 311c9af after 2 hours, 12 minutes.

repo: raulredes/funsadu


text:
Update Details.txt

add a short intro about myself

thanks @muhammadzubairmoosani

authors: muhammadzubairmoosani samadpls

repo: rawheel/MyUnfollowers-App


text:
Fix history commands

History again :sweat_smile:
I removed the narrowing at some point because I though it's not necessary and did not remember why I added it. Just discovered it's needed because history saves the minibuffer contents when you start navigation history backwards and inserts it back when you navigate forward. So if you do M-p and then M-n your input is defined by the whole contents from before and when you afterwards type something nothing happens because this breaks everything.

As discussed in #72 I also change the binding so that the default history search binding of Emacs remaps to the improved selectrum version and removed the other non standard bindings.

Lastly I also added the remapping for general minibuffer commands with selectrum-mode.

Looks great. The only thing is we should probably condition removing the key remapping on (lookup-key minibuffer-local-map [remap previous-matching-history-element]) evaluating to selectrum-select-from-history. Just so we don't clobber any other package's binding that remaps the same command.

Done

Changelog should be updated to not claim that Isearch bindings are remapped to Selectrum. Also would you mind adding an entry for #57 to say that the command selectrum-previous-matching-history-element was added but it's not bound by default?

Done


text:
[Feature][kubectl-plugin] e2e test for 'kubectl ray log'

Why are these changes needed?
This adds e2e test for kubectl ray log.

Related issue number

Checks

[ ] I've made sure the tests are passing.
Testing Strategy

[ ] Unit tests
[ ] Manual tests
[ ] This PR is not tested :(

Could you resolve the conflict? Thanks.

oh sorry, I missed that he already reviewed

authors: MortalHappiness andrewsykim chiayi

repo: ray-project/kuberay


text:
docs: Add instructions for working with Argo CD

Why are these changes needed?

Related issue number
Ref: https://github.com/ray-project/kuberay/issues/271#issuecomment-1238287621
Checks
docs only

Thanks! Right now, there's an inconsistency in the CRDs stored in the Helm directory and in  ray-operator/config/crds.
That needs to be smoothed out before merging this -- will get back to you on this.

The inconsistency was resolved in https://github.com/ray-project/kuberay/pull/541. This is good to merge.

authors: DmitriGekhtman haoxins


text:
GoInstallBinaries and GoUpdateBinaries for go.nvim, similar to vim-go?

Do you think it would be useful to have GoInstallBinaries and GoUpdateBinaries, similar
to vim-go: https://github.com/fatih/vim-go/blob/master/doc/vim-go.txt#L496 ?
For example, I found that I did not have golines and gofumpt installed, so formatting with goimport did not work.
Once I installed those utilities, formatting worked.

nvim-go also has it: https://github.com/crispgm/nvim-go/blob/c9000d1f64cd17c9bb4eab5024bb63373f180530/doc/nvim-go.txt#L82

New command added

Thanks for implementing this.  I verified that it works.
However, I don't think GoInstallBinaries and GoUpdateBinaries takes an argument?

Also, in these docs: https://github.com/ray-x/go.nvim/commit/7d39be943149e43256dd5e79e342641d3e82111c#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R133
go re-install
go update
Are not actual go commands.  Might be good to put real go commands here, just to clarify.

Thanks for the suggestions.  The readme updated.

Thanks for incorporating my suggestions.
I have a few more small suggestions:
https://github.com/ray-x/go.nvim/pull/51

Do you know what file to edit so that
:help GoInstallBinaries
or
:help :GoInstallBinaries
will show help for the GoInstallBinaries?
I can help with this but do not know how to do this.

There should be a txt file in doc folder like this:
https://github.com/fatih/vim-go/blob/master/doc/vim-go.txt
However I did not even put a similar file in doc folder ATM :(

GoInstallBinaries and GoUpdateBinaries is now implemented and works great!
Thanks!!
I will try to help with docs in other PRs.

authors: ray-x rodrigc


text:
guihua/log.lua:124: module 'lfs' not found:

Hello Ray!
Thanks again for making these great libraries.
I'm running into a strange issue and I was hoping you could maybe help.
Roughly 75% of the time (not 100%), when I start neovim, I see the error below. This started today. I want to emphasize that I do not see this error every time, only 3 out of 4 times.
I've tried install lfs with sudo luarocks install luafilesystem but this did not resolve the issue.
Pleas let me know if there's any more information I can provide.
Thanks!
Error detected while processing /home/tom/.config/nvim/init.vim:
line    3:
E5108: Error executing lua ...vim/site/pack/packer/start/guihua.lua/lua/guihua/log.lua:124: module 'lfs' not found:
        no field package.preload['lfs']
        no file './lfs.lua'
        no file '/usr/share/luajit-2.1.0-beta3/lfs.lua'
        no file '/usr/local/share/lua/5.1/lfs.lua'
        no file '/usr/local/share/lua/5.1/lfs/init.lua'
        no file '/usr/share/lua/5.1/lfs.lua'
        no file '/usr/share/lua/5.1/lfs/init.lua'
        no file './lfs.so'
        no file '/usr/local/lib/lua/5.1/lfs.so'
        no file '/usr/lib/lua/5.1/lfs.so'
        no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
        [C]: in function 'require'
        ...vim/site/pack/packer/start/guihua.lua/lua/guihua/log.lua:124: in function 'log'
        .../start/navigator.lua/lua/navigator/lspclient/clients.lua:626: in function 'setup'
        ...m/site/pack/packer/start/navigator.lua/lua/navigator.lua:226: in function 'setup'
        /home/tom/.config/nvim/lua/init.lua:76: in main chunk
        [C]: in function 'require'
        [string ":lua"]:1: in main chunk
Error detected while processing BufEnter Autocommands for "*":
E5108: Error executing lua ...vim/site/pack/packer/start/guihua.lua/lua/guihua/log.lua:124: module 'lfs' not found:
        no field package.preload['lfs']
        no file './lfs.lua'
        no file '/usr/share/luajit-2.1.0-beta3/lfs.lua'
        no file '/usr/local/share/lua/5.1/lfs.lua'
        no file '/usr/local/share/lua/5.1/lfs/init.lua'
        no file '/usr/share/lua/5.1/lfs.lua'
        no file '/usr/share/lua/5.1/lfs/init.lua'
        no file '/home/tom/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/lfs.lua'
        no file '/home/tom/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/lfs/init.lua'
        no file '/home/tom/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/lfs.lua'
        no file '/home/tom/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/lfs/init.lua'
        no file './lfs.so'
        no file '/usr/local/lib/lua/5.1/lfs.so'
        no file '/usr/lib/lua/5.1/lfs.so'
        no file '/usr/local/lib/lua/5.1/loadall.so'
        no file '/home/tom/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/lfs.so'
stack traceback:
        [C]: in function 'require'
        ...vim/site/pack/packer/start/guihua.lua/lua/guihua/log.lua:124: in function 'log'
        .../start/navigator.lua/lua/navigator/lspclient/clients.lua:725: in function 'on_filetype'
        [string ":lua"]:1: in main chunk

What operation system you are using? I thought lfs is install by default in neovim

Should been fixed, I remove lfs depency. Thought it is available when nvim installed.

authors: ray-x thomas-humi


text:
There is an issue with new branch 2

Practicing with more issues.

This issue is good practice.

repo: rayamagana/github-slideshow


text:
[ChatGPT] Unexpected Toast Error Displayed: Failed to fetch latest data

Extension
https://raycast.com/abielzulio/chatgpt
Raycast Version
1.80.0
macOS Version
14.5
Description
When creating or editing Models, a Toast error appears, even though the functionality still operates correctly. I am still able to create and edit models.
Error:
Error: Invalid Closing Quote: got "T" at line 170 instead of delimiter, record delimiter, trimable character (if activated) or comment
    at Object.parse (/Users/husni/.config/raycast/extensions/35fa3856-f360-465f-885c-acf4ebcf19b1/model.js:108:2103)
    at US (/Users/husni/.config/raycast/extensions/35fa3856-f360-465f-885c-acf4ebcf19b1/model.js:110:1218)
    at Object.parseResponse [as current] (/Users/husni/.config/raycast/extensions/35fa3856-f360-465f-885c-acf4ebcf19b1/model.js:110:2678)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async /Users/husni/.config/raycast/extensions/35fa3856-f360-465f-885c-acf4ebcf19b1/model.js:63:7511

[](url)
Steps To Reproduce

Open Models
From the Action Panel, either select Create Model or Edit Model.
A new screen to create/edit model is displayed with Toast error.

Current Behaviour
It shows a Toast error:

Expected Behaviour
It should not display any errors.

I raised a PR https://github.com/raycast/extensions/pull/13951

@raycastbot assign me

repo: raycast/extensions


text:
[SSH Connection Manager] ...

Extension – SSH Connection Manager
Author: @scopsy

Description
Steps To Reproduce
1.Show Connections
2.Connect to the configuration file I just created

The current behavior

The expected behavior
a terminal
Raycast version
Version: 1.35.2

扩展 – SSH 连接管理器
作者：@scopsy
描述
重现步骤
1.Show Connections 2.连接 到我刚刚创建的配置文件
当前行为

预期的行为
一个终端
光线投射版本
版本：1.35.2


text:
[Timers] ...

Extension – Timers
Author:

Describe the feature and the current behavior/state.
Currently timer options increase in multiples of 5 mins.
Who will benefit with this feature?
Several other timers, e.g. Nag Timer, have a 2 minute timer as a default option, so I assume it's popular (though I don't have data for this)
Any Other info.
David Allen's GTD methodology suggests doing tasks if they take <2 mins.  I religiously set a 2 minute timer when I start doing a task immediately instead of adding it to my ask management system.  This makes sure I don't get lost in the task.
You could always add a 2 minute option, see how much use it gets, and drop it if no-one except me is using it!

Hi @niel-bowerman - thanks for using Timers, and thanks for the suggestion! I will consider adding a 2 minute default option - it seems useful, but I also don't want to clutter the defaults too much. I will note that, as far as I know, there's no way for me to determine which options get more use because we don't have any sort of Raycast-supported analytics.
In the meantime, have you tried creating a custom preset for 2 minutes? This would allow you to easily start the 2 minute timer as needed.

I've added the 2 minute preset in #3999.

Amazing, thank you!
Cheers,
Niel
--
Niel Bowerman | +44 7912 614 541 | nielbowerman.com
On Thu, 22 Dec 2022 at 02:49, ThatNerdSquared @.***>
wrote:

I've added the 2 minute preset in #3999
https://github.com/raycast/extensions/pull/3999.
—
Reply to this email directly, view it on GitHub
https://github.com/raycast/extensions/issues/3043#issuecomment-1362328710,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAZTYVQE2HWPM2XI2UKBT4TWOO6SLANCNFSM6AAAAAAQXIBSIY
.
You are receiving this because you were mentioned.Message ID:
@.***>

authors: ThatNerdSquared niel-bowerman


text:
[Google Drive] ...

Extension
https://www.raycast.com/vishaltelangre/google-drive
Description
Hey guys,
How can we add multiple volumes drives in Google Drive root path? I have one at the moment, but I would like to multliple account in order to index them.
Thank you

Steps To Reproduce
No response
Current Behaviour
No response
Expected Behaviour
No response

@idimitrijevic Unfortunately adding multiple drive paths is not supported at this moment. Feel free to send a PR to add support for it.

@vishaltelangre

In the meantime, there is now a Google Drive hotkey ⌥ Option + ⌘ Command + G that searches for files and might support multiple accounts.

In the meantime, there is now a Google Drive hotkey ⌥ Option + ⌘ Command + G that searches for files and might support multiple accounts.

Is this a Raycast command? I've tried it, but nothing appears.

In the meantime, there is now a Google Drive hotkey ⌥ Option + ⌘ Command + G that searches for files and might support multiple accounts.

Thank you🙏


text:
[Todoist] Search Tasks render tasks for a short amount of time

Extension
https://www.raycast.com/thomaslombart/todoist
Description
8 out of 9 times I try to search for tasks, they are rendered for a few milliseconds and then they disappear, showing the 'No results' screen. If I try enough times, they will stay. If I then search again, the same thing happens all over again.
Steps To Reproduce
No response
Current Behaviour
Search for tasks renders the tasks and then they quickly disappear.
Expected Behaviour
For the tasks to stay rendered.

That's weird, I can't reproduce. Could you link a recording of what you're getting?

@thomaslombart Absolutely: https://share.cleanshot.com/kvlj8YqR
Some more context: I'm on an M1 Pro MacBook pro, a Clean install of Raycast, and I have hotkeys to activate search (the result is the same whether or not I use hotkeys)

Thanks for this! Are you able to see tasks in other commands (today, upcoming, projects)?

Yes. This only seems to happen under 'search task'

I've also tried restarting the computer, reinstalling the extension, and even regenerating a new token - in case that might have been relevant somehow.

Update 2: I've added a console count under the search function. I have 5 tasks. There is some erratic behavior that seem to be related. Sometimes it calls the function 6 times, sometimes 7 and sometimes 5.
Generally, it's shows the tasks successfully when the function is called 5, or 7 times.
15:20:41.392 Searching for tasks: (failed) 15:20:41.402 Search function: 1 15:20:41.425 Search function: 2 15:20:41.425 Search function: 3 15:20:41.615 Search function: 4 15:20:41.619 Search function: 5 15:20:41.926 Search function: 6 15:20:43.442 Searching for tasks: (failed) 15:20:43.452 Search function: 1 15:20:43.473 Search function: 2 15:20:43.473 Search function: 3 15:20:43.672 Search function: 4 15:20:43.674 Search function: 5 15:20:43.731 Search function: 6 15:20:45.025 Searching for tasks: (failed) 15:20:45.035 Search function: 1 15:20:45.056 Search function: 2 15:20:45.056 Search function: 3 15:20:45.245 Search function: 4 15:20:45.250 Search function: 5 15:20:45.501 Search function: 6 15:20:46.974 Searching for tasks: (failed) 15:20:46.985 Search function: 1 15:20:47.008 Search function: 2 15:20:47.008 Search function: 3 15:20:47.158 Search function: 4 15:20:47.162 Search function: 5 15:20:47.228 Search function: 6 15:20:48.516 Searching for tasks: (success) 15:20:48.526 Search function: 1 15:20:48.547 Search function: 2 15:20:48.547 Search function: 3 15:20:48.995 Search function: 4 15:20:49.001 Search function: 5

Thanks for debugging it. I'll take a look at that.

Since you have the fork locally, what happens if you replace filteredTasks in the List component by tasks? (like below):
  return (
    <List
      searchBarPlaceholder={placeholder}
      {...(projects ? { searchBarAccessory } : {})}
      isLoading={isLoadingTasks || isLoadingProjects}
    >
      {tasks?.map((task) => (
        <TaskListItem
          key={task.id}
          task={task}
          mode={projectId ? ViewMode.project : ViewMode.search}
          mutateTasks={mutateTasks}
          {...(projects ? { projects } : {})}
        />
      ))}
    </List>
  );

I'm wondering if something's happening with the filtering.

Same behaviour

Update: After completing a task in Raycast I no longer experience this behavior. I cannot replicate the behavior by completing the task. But it still flickers before stopping, which still indicates something is not quite right. See video: https://share.cleanshot.com/c3BJqKN8

Hey, I'm working on the overhaul of the extension that I should ship in the next few days or weeks. This will probably fix your issue. Stay tuned! 📻

Fixed: #6498


text:
[Hypersonic] Can't retrieve tasks

Extension
https://raycast.com/reboot/hypersonic
Description
First let me say, this is stunningly cool, I really want to get this working nice job.
Error:
TypeError: Cannot read properties of undefined (reading '0')
    at D2 (/Users/jrochelle/.config/raycast/extensions/baa4a90b-4452-4213-b1c0-315edd746652/index.js:62:89956)
    at /Users/jrochelle/.config/raycast/extensions/baa4a90b-4452-4213-b1c0-315edd746652/index.js:62:90671
    at Array.map (<anonymous>)
    at KC (/Users/jrochelle/.config/raycast/extensions/baa4a90b-4452-4213-b1c0-315edd746652/index.js:62:90664)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async ZC.initialData (/Users/jrochelle/.config/raycast/extensions/baa4a90b-4452-4213-b1c0-315edd746652/index.js:62:90770)

Steps To Reproduce

Authenticated with Notion
Allowed access to 2 databases named Tasks and Projects
PROBLEM: When trying to retrieve tasks in raycast, I get the attached error.
Notably, I can insert new tasks, but can't retrieve any to view or manage in raycast.

Current Behaviour
When executing My Tasks in raycast, I get an error is displayed: Cannot read properties of undefined (reading '0') and no tasks are retrieved.
Expected Behaviour
When executing My Tasks in raycast, I would get a list of tasks returned and displayed in the raycast UI.

This is still an issue. I may have to learn python and fix this one myself...really want this extension to work!


text:
[Browser Bookmarks] ...

Extension
https://www.raycast.com/raycast/browser-bookmarks
Description
Not sure when it started, but fairly recently.
I use Arc browser as my default browser (if I click on a webloc file, the link opens in Arc, also I've set the preference in System Settings > Desktop & Dock > Default web browser = Arc.) but since Arc doesn't do bookmarks, and I have years of bookmarks saved in Safari, I have enabled both Safari and Arc in the Browser Bookmarks extension.
Now when I use Browser Bookmarks to select a bookmark from my Safari bookmarks, the link opens in Safari.  Until recently the link would open in Arc.
Steps To Reproduce
Running Raycast v1.6.0.1, on macOS Sonoma 14.0.  When I click the (i) on the Browser Bookmark extension it takes me to a Github page for "Browser Bookmarks: Add support for Arc (#8497)".  I have run the Raycast extension "Check For Extension Updates" to make sure I am running the current version.
Steps:
Invoke Raycast.
Type "bm" which is the alias I have given Browser Bookmarks, then tab.
Select any link.
Link opens in Safari instead of my default browser, Arc.
Current Behaviour
Links open in Safari.
Expected Behaviour
Links should open in Arc.

We've added a preference that is enabled by default so that bookmarks are opened on the browser they're associated with, to disable that, go to the command preferences and uncheck Open Bookmark's Browser.

That fixed it, thanks!

authors: jdenormandie thomaslombart


text:
Update menubar-weather extension

Description

Update icons of Raycast icon style
Improve the implementation of SF Symbols icon style

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

@xilopaint Thank you for your contribution! 🎉
@pernielsentikaer LGTM

authors: koinzhang xilopaint


text:
Add whois-tool extension

Description

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Whois already available in the store

Did you see the one @koinzhang mentioned before creating this? If anything is missing in that one, feel free to add a feature request or open a pull request with changes 🙂
I'm closing this for now, feel free to message me in the thread

authors: koinzhang onorridg pernielsentikaer


text:
Add connect-to-servers extension

Description

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi 👋
Thanks for your contribution 🔥
We already an extension dealing with smb in the store, could you check that one out?

Hey!
That's a cool one. I think I'll add auth for mine too. Maybe the one that I
created is too specific for my work case or my colleagues.
It allows me to connect to the servers I need straightaway. I can also do
multiple servers (in this case I'm just doing 2).
Because it disconnects so often, I need to reconnect every time. Having the
extension saves me so much time. And with the hotkey is even better.
We will keep using locally if you guys think it doesn't have a big audience
that could benefit from it like we do here.
Thanks for reaching out.
Em sex., 15 de nov. de 2024 às 00:42, Per Nielsen Tikær <
@.***> escreveu:

Hi 👋
Thanks for your contribution 🔥
We already an extension dealing with smb
https://www.raycast.com/SuoweiHu/network-drive in the store, could you
check that one out?
—
Reply to this email directly, view it on GitHub
https://github.com/raycast/extensions/pull/15269#issuecomment-2478149237,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANHHWQVUNVDL5E34WX6BQ532AWQXTAVCNFSM6AAAAABRL2AKWCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZYGE2DSMRTG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Closing for now 😊

authors: guibyui pernielsentikaer


text:
Add additional contributors to Trello extension

Description
I didn't actually know this was possible, but #7132 showed me it was, so adding other contributors so far.
Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

All good with me